Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-06-20 18:02:05 +00:00 committed by GitHub
commit b0caf9d53c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
92 changed files with 962 additions and 708 deletions

14
.github/CODEOWNERS vendored
View File

@ -152,6 +152,7 @@ nixos/modules/installer/tools/nix-fallback-paths.nix @raitobezarius
# C compilers
/pkgs/development/compilers/gcc
/pkgs/development/compilers/llvm @RossComputerGuy
/pkgs/development/compilers/emscripten @raitobezarius
/doc/languages-frameworks/emscripten.section.md @raitobezarius
@ -363,3 +364,16 @@ pkgs/by-name/lx/lxc* @adamcstephens
pkgs/by-name/lx/lxd* @adamcstephens
pkgs/os-specific/linux/lxc/ @adamcstephens
# ExpidusOS, Flutter
/pkgs/development/compilers/flutter @RossComputerGuy
/pkgs/desktops/expidus @RossComputerGuy
# GNU Tar & Zip
/pkgs/tools/archivers/gnutar @RossComputerGuy
/pkgs/tools/archivers/zip @RossComputerGuy
# SELinux
/pkgs/os-specific/linux/checkpolicy @RossComputerGuy
/pkgs/os-specific/linux/libselinux @RossComputerGuy
/pkgs/os-specific/linux/libsepol @RossComputerGuy

View File

@ -11,7 +11,7 @@ let
in
rec {
inherit (builtins) attrNames listToAttrs hasAttr isAttrs getAttr removeAttrs;
inherit (builtins) attrNames listToAttrs hasAttr isAttrs getAttr removeAttrs intersectAttrs;
/**

View File

@ -87,8 +87,8 @@ let
recursiveUpdate matchAttrs mergeAttrsList overrideExisting showAttrPath getOutput
getBin getLib getDev getMan chooseDevOutputs zipWithNames zip
recurseIntoAttrs dontRecurseIntoAttrs cartesianProduct cartesianProductOfSets
mapCartesianProduct updateManyAttrsByPath;
inherit (self.lists) singleton forEach foldr fold foldl foldl' imap0 imap1
mapCartesianProduct updateManyAttrsByPath intersectAttrs removeAttrs;
inherit (self.lists) singleton forEach map foldr fold foldl foldl' imap0 imap1
ifilter0 concatMap flatten remove findSingle findFirst any all count
optional optionals toList range replicate partition zipListsWith zipLists
reverseList listDfs toposort sort sortOn naturalSort compareLists take
@ -105,7 +105,7 @@ let
escapeRegex escapeURL escapeXML replaceChars lowerChars
upperChars toLower toUpper addContextFrom splitString
removePrefix removeSuffix versionOlder versionAtLeast
getName getVersion
getName getVersion match split
cmakeOptionType cmakeBool cmakeFeature
mesonOption mesonBool mesonEnable
nameFromURL enableFeature enableFeatureAs withFeature

View File

@ -1278,11 +1278,21 @@ in mkLicense lset) ({
fullName = "xinetd License";
};
xskat = {
spdxId = "XSkat";
fullName = "XSkat License";
};
zlib = {
spdxId = "Zlib";
fullName = "zlib License";
};
zsh = {
url = "https://github.com/zsh-users/zsh/blob/master/LICENCE";
fulllName = "Zsh License";
};
zpl20 = {
spdxId = "ZPL-2.0";
fullName = "Zope Public License 2.0";
@ -1293,10 +1303,6 @@ in mkLicense lset) ({
fullName = "Zope Public License 2.1";
};
xskat = {
spdxId = "XSkat";
fullName = "XSkat License";
};
} // {
# TODO: remove legacy aliases
apsl10 = {

View File

@ -6812,6 +6812,14 @@
matrix = "@frogamic:beeper.com";
keys = [ { fingerprint = "779A 7CA8 D51C C53A 9C51 43F7 AAE0 70F0 67EC 00A5"; } ];
};
frontear = {
name = "Ali Rizvi";
email = "perm-iterate-0b@icloud.com";
matrix = "@frontear:matrix.org";
github = "Frontear";
githubId = 31909298;
keys = [ { fingerprint = "C170 11B7 C0AA BB3F 7415 022C BCB5 CEFD E222 82F5"; } ];
};
frontsideair = {
email = "photonia@gmail.com";
github = "frontsideair";

View File

@ -1121,7 +1121,7 @@ in {
The client listener on matrix-synapse is configured to use UNIX domain sockets.
This configuration is incompatible with the `register_new_matrix_user` script.
Disable `services.mastrix-synapse.enableRegistrationScript` to continue.
Disable `services.matrix-synapse.enableRegistrationScript` to continue.
'';
}
]

View File

@ -59,7 +59,7 @@ in
PRODUCTION = "true";
ALEMBIC_CONFIG_FILE="${pkg}/config/alembic.ini";
API_PORT = toString cfg.port;
BASE_URL = "http://localhost:${cfg.port}";
BASE_URL = "http://localhost:${toString cfg.port}";
DATA_DIR = "/var/lib/mealie";
CRF_MODEL_PATH = "/var/lib/mealie/model.crfmodel";
} // (builtins.mapAttrs (_: val: toString val) cfg.settings);

View File

@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
gst-plugins-ugly
gst-libav
]) ++ (with python3.pkgs; [
bsddb3
berkeleydb
dbus-python
mutagen
pygobject3

View File

@ -21,15 +21,15 @@
, nlohmann_json
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "giada";
version = "1.0.0";
src = fetchFromGitHub {
owner = "monocasual";
repo = pname;
rev = version;
sha256 = "sha256-vTOUS9mI4B3yRNnM2dNCH7jgMuD3ztdhe1FMgXUIt58=";
repo = "giada";
rev = finalAttrs.version;
hash = "sha256-vTOUS9mI4B3yRNnM2dNCH7jgMuD3ztdhe1FMgXUIt58=";
fetchSubmodules = true;
};
@ -66,12 +66,12 @@ stdenv.mkDerivation rec {
libXrandr
];
meta = with lib; {
meta = {
description = "Free, minimal, hardcore audio tool for DJs, live performers and electronic musicians";
mainProgram = "giada";
homepage = "https://giadamusic.com/";
license = licenses.gpl3;
maintainers = with maintainers; [ kashw2 ];
platforms = platforms.all;
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ kashw2 ];
platforms = lib.platforms.all;
};
}
})

View File

@ -69,7 +69,7 @@ buildPythonApplication rec {
;
propagatedBuildInputs = with pythonPackages; [
bsddb3
berkeleydb
pyicu
pygobject3
pycairo

View File

@ -41,13 +41,13 @@
stdenv.mkDerivation rec {
pname = "keepassxc";
version = "2.7.8";
version = "2.7.9";
src = fetchFromGitHub {
owner = "keepassxreboot";
repo = "keepassxc";
rev = version;
hash = "sha256-Gb5/CPhn/phVVvz9BFv7rb12n/P3rPNl5r2gA+E5b0o=";
hash = "sha256-rnietdc8eDNTag0GaZ8VJb28JsKKD/qrQ0Gg6FMWpr0=";
};
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (toString [

View File

@ -6,17 +6,17 @@ callPackage ./make-brave.nix (removeAttrs args [ "callPackage" ])
if stdenv.isAarch64 then
{
pname = "brave";
version = "1.66.118";
url = "https://github.com/brave/brave-browser/releases/download/v1.66.118/brave-browser_1.66.118_arm64.deb";
hash = "sha256-H2f6i86lDToHEkJ9JZCBp3tlpnI+zoFHY3YzLdp5lE4=";
version = "1.67.116";
url = "https://github.com/brave/brave-browser/releases/download/v1.67.116/brave-browser_1.67.116_arm64.deb";
hash = "sha256-YOvfXI+bSX3WZRBYXxGYhNme9NZl3ob/JYw6KshXn54=";
platform = "aarch64-linux";
}
else if stdenv.isx86_64 then
{
pname = "brave";
version = "1.66.118";
url = "https://github.com/brave/brave-browser/releases/download/v1.66.118/brave-browser_1.66.118_amd64.deb";
hash = "sha256-r7lpEOxECOqJ23XxTHqSy6KhyNPRwOkuJvnZUuuBN4k=";
version = "1.67.116";
url = "https://github.com/brave/brave-browser/releases/download/v1.67.116/brave-browser_1.67.116_amd64.deb";
hash = "sha256-J4ap0bEAg5Q40U155AdAyzereBAo8Q/YDedDVqYvaT4=";
platform = "x86_64-linux";
}
else

View File

@ -27,11 +27,11 @@
version = "2024-05-13";
};
ungoogled-patches = {
hash = "sha256-vQrUQMmNSw+b9nPzP1RmkncQHasmZvnxNHjfiPoMUXo=";
rev = "126.0.6478.61-1";
hash = "sha256-lj/XYWkEo7M1i3D5e1MVXTXh02U55lNoo+sxKpu8FNc=";
rev = "126.0.6478.114-1";
};
};
hash = "sha256-cB2jrasrtaFWM8tpG9leuC+jUAvoU8g5977cn4r7rbw=";
version = "126.0.6478.61";
hash = "sha256-sXP+/KXDoy3QnRoa9acGbsXKVCPspyNGtZTLMHBqxvw=";
version = "126.0.6478.114";
};
}

View File

@ -1,15 +1,15 @@
{
"packageVersion": "126.0.1-1",
"packageVersion": "127.0-1",
"source": {
"rev": "126.0.1-1",
"sha256": "0cac80073vkzd85ai9rbnwixs1h9bpy4dj2ri6jxdlqsy5d663km"
"rev": "127.0-1",
"sha256": "0zif9b7ky423bg3cf3njyxl465hrbsha1f1hxpdgccql0id5qr7r"
},
"settings": {
"rev": "1debc2d30949baff2d1e7df23e87900f1987a8ae",
"sha256": "12xgjv40mihbyfsah26vvdyb4yirydc1a884v2chnca4f5q00lc2"
},
"firefox": {
"version": "126.0.1",
"sha512": "249605c4891ee9271def187d161369bd3ccbd347f5f0e175d0239aced3cb9ae9655d3c134b7705bda80ea1e63c0a2ee8eb4e76db0840019683376c00f20fc7ac"
"version": "127.0",
"sha512": "5a17bce357e7f445c37540115f2c131ad5a055c0cf04f20bc2eaca18f8d241a99ac76739d172b38f2ad2681633f901a0a15893801082ac5db9e20e31fc8b8291"
}
}

View File

@ -2,14 +2,24 @@
, stdenv
, fetchFromGitHub
, cmake
, cairo
, expat
, file
, fribidi
, hyprlang
, libdatrie
, libGL
, libjpeg
, libselinux
, libsepol
, libthai
, libwebp
, mesa
, libXdmcp
, pango
, pcre
, pcre2
, pkg-config
, util-linux
, wayland
, wayland-protocols
, wayland-scanner
@ -33,13 +43,23 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
cairo
expat
file
fribidi
hyprlang
libdatrie
libGL
libjpeg
libselinux
libsepol
libthai
libwebp
mesa
libXdmcp
pango
pcre
pcre2
util-linux
wayland
wayland-protocols
];
@ -49,18 +69,6 @@ stdenv.mkDerivation (finalAttrs: {
--replace GIT_COMMIT_HASH '"${finalAttrs.src.rev}"'
'';
preConfigure = ''
make protocols
'';
installPhase = ''
runHook preInstall
install -Dm755 ./hyprpaper -t $out/bin
runHook postInstall
'';
meta = with lib; {
inherit (finalAttrs.src.meta) homepage;
description = "Blazing fast wayland wallpaper utility";

View File

@ -10,15 +10,15 @@
, stdenvNoCC
, runtimeShell
, bintools ? null, libc ? null, coreutils ? null, gnugrep ? null
, netbsd ? null, netbsdCross ? null
, netbsd ? null
, sharedLibraryLoader ?
if libc == null then
null
else if stdenvNoCC.targetPlatform.isNetBSD then
if !(targetPackages ? netbsdCross) then
if !(targetPackages ? netbsd) then
netbsd.ld_elf_so
else if libc != targetPackages.netbsdCross.headers then
targetPackages.netbsdCross.ld_elf_so
else if libc != targetPackages.netbsd.headers then
targetPackages.netbsd.ld_elf_so
else
null
else

View File

@ -49,6 +49,8 @@ let
filename =
if lib.any (x: x == "lib" || x == "rlib") dep.crateType
then "${dep.metadata}.rlib"
# Adjust lib filename for crates of type proc-macro. Proc macros are compiled/run on the build platform architecture.
else if (lib.attrByPath [ "procMacro" ] false dep) then "${dep.metadata}${stdenv.buildPlatform.extensions.library}"
else "${dep.metadata}${stdenv.hostPlatform.extensions.library}";
in
" --extern ${opts}${name}=${dep.lib}/lib/lib${extern}-${filename}"

View File

@ -93,21 +93,27 @@ let
};
});
in
testers.nixosTest {
name = "nixpkgs-trivial-builders";
nodes.machine = { ... }: {
testers.runNixOSTest ({ config, lib, ... }:
let
# Use the testScriptBin from guest pkgs.
# The attribute path to access the guest version of testScriptBin is
# tests.trivial-builders.references.config.node.pkgs.tests.trivial-builders.references.testScriptBin
# which is why passthru.guestTestScriptBin is provided.
guestTestScriptBin = config.node.pkgs.tests.trivial-builders.references.testScriptBin;
in
{
name = "nixpkgs-trivial-builders-references";
nodes.machine = { config, lib, pkgs, ... }: {
virtualisation.writableStore = true;
# Test runs without network, so we don't substitute and prepare our deps
nix.settings.substituters = lib.mkForce [ ];
environment.etc."pre-built-paths".source = writeText "pre-built-paths" (
builtins.toJSON [ testScriptBin ]
);
system.extraDependencies = [ guestTestScriptBin ];
};
testScript =
''
machine.succeed("""
${lib.getExe testScriptBin} 2>/dev/console
${lib.getExe guestTestScriptBin} 2>/dev/console
""")
'';
passthru = {
@ -118,6 +124,7 @@ testers.nixosTest {
samples
testScriptBin
;
inherit guestTestScriptBin;
};
meta = {
maintainers = with lib.maintainers; [
@ -125,4 +132,4 @@ testers.nixosTest {
ShamrockLee
];
};
}
})

View File

@ -0,0 +1,41 @@
{
lib,
fetchurl,
stdenvNoCC,
nix-update-script,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "arkenfox-userjs";
version = "126.1";
src = fetchurl {
url = "https://raw.githubusercontent.com/arkenfox/user.js/${finalAttrs.version}/user.js";
hash = "sha256-XRtG0iLKh8uqbeX7Rc2H6VJwZYJoNZPBlAfZEfrSCP4=";
};
dontUnpack = true;
installPhase = ''
runHook preInstall
install -Dm644 $src $out/user.js
install -Dm644 $src $out/user.cfg
substituteInPlace $out/user.cfg \
--replace-fail "user_pref" "defaultPref"
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "A comprehensive user.js template for configuration and hardening";
homepage = "https://github.com/arkenfox/user.js";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
linsui
Guanran928
];
platforms = lib.platforms.all;
};
})

View File

@ -5,11 +5,11 @@
let
pname = "codux";
version = "15.28.0";
version = "15.29.0";
src = fetchurl {
url = "https://github.com/wixplosives/codux-versions/releases/download/${version}/Codux-${version}.x86_64.AppImage";
sha256 = "sha256-U4uOP2M/369bFOfkCncXzKCdYz9TwtzpUFNg63Oz978=";
sha256 = "sha256-BvDrhs37XGCQdQV2yQJZXlnNWVArFCMLfFlXuXz9ea0=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };

View File

@ -14,18 +14,19 @@
, json-glib
, qrencode
, curl
, libadwaita
, aria2
}:
stdenv.mkDerivation rec {
pname = "gabutdm";
version = "2.1.6";
version = "2.2.8";
src = fetchFromGitHub {
owner = "gabutakut";
repo = pname;
repo = "gabutdm";
rev = version;
hash = "sha256-ai5LsoK21XwXqL4LRuKsOR1/JV6LnP+1ZJ9fMHpj178=";
hash = "sha256-HF+zBDkA9fYauLUYsvJJxcRggHu+5qH4rm0IM/tL9Hc=";
};
nativeBuildInputs = [
@ -45,11 +46,12 @@ stdenv.mkDerivation rec {
json-glib
qrencode
curl
libadwaita
];
postPatch = ''
substituteInPlace meson/post_install.py \
--replace gtk-update-icon-cache gtk4-update-icon-cache
--replace-fail gtk-update-icon-cache gtk4-update-icon-cache
'';
preFixup = ''

View File

@ -0,0 +1,71 @@
{
cmake,
fetchFromGitHub,
fftw,
gettext,
lib,
libintl,
ncurses,
nix-update-script,
openssl,
stdenv,
testers,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "httping";
version = "3.6";
src = fetchFromGitHub {
owner = "folkertvanheusden";
repo = "HTTPing";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-lDgQC3VzfcLqMOQSaRZ/znMamAAGYq/9C9bHgI4G7B8=";
};
nativeBuildInputs = [
cmake
gettext
];
buildInputs = [
fftw
libintl
ncurses
openssl
];
cmakeFlags = [
(lib.cmakeFeature "CMAKE_BUILD_TYPE" "Release")
];
installPhase = ''
runHook preInstall
install -D httping $out/bin/httping
runHook postInstall
'';
passthru = {
tests.version = testers.testVersion {
command = "${lib.getExe finalAttrs.finalPackage} --version";
package = finalAttrs.finalPackage;
};
updateScript = nix-update-script { };
};
meta = {
changelog = "https://github.com/folkertvanheusden/HTTPing/releases/tag/v${finalAttrs.version}";
description = "Ping with HTTP requests";
homepage = "https://vanheusden.com/httping";
license = lib.licenses.agpl3Only;
longDescription = ''
Give httping an url, and it'll show you how long it takes to connect,
send a request and retrieve the reply (only the headers). Be aware that
the transmission across the network also takes time! So it measures the
latency of the webserver + network. It supports IPv6.
'';
mainProgram = "httping";
maintainers = [ lib.maintainers.anthonyroussel ];
platforms = lib.platforms.linux;
};
})

View File

@ -2,16 +2,16 @@
buildNpmPackage rec {
pname = "lint-staged";
version = "15.2.6";
version = "15.2.7";
src = fetchFromGitHub {
owner = "okonet";
repo = "lint-staged";
rev = "v${version}";
hash = "sha256-Jn6KGfgL4Si48hdg4glACe6AO5QzPgnasYhHMivzMGk=";
hash = "sha256-V7NJ8UWORo+APCVJmC6l6uQUazLrG94O9V4yC3McBp4=";
};
npmDepsHash = "sha256-6BKx06h+laYSMNm36R992oXYwCDS90F+nh21MnHA998=";
npmDepsHash = "sha256-9Twg9jppFkp0cpxJfBVmWRMwKsXnJ+tUBH8qMYAm1cY=";
dontNpmBuild = true;

View File

@ -3,8 +3,10 @@
, fetchurl
, appimageTools
, makeWrapper
# graphs will not sync without matching upstream's major electron version
, electron_27
# Notice: graphs will not sync without matching upstream's major electron version
# the specific electron version is set at top-level file to preserve override interface.
# whenever updating this package also sync electron version at top-level file.
, electron
, autoPatchelfHook
, git
, nix-update-script
@ -59,7 +61,7 @@ in {
postFixup = ''
# set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs
makeWrapper ${electron_27}/bin/electron $out/bin/${pname} \
makeWrapper ${electron}/bin/electron $out/bin/${pname} \
--set "LOCAL_GIT_DIRECTORY" ${git} \
--add-flags $out/share/${pname}/resources/app \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"

View File

@ -9,12 +9,12 @@
}:
let
version = "1.7.0";
version = "1.9.0";
src = fetchFromGitHub {
owner = "mealie-recipes";
repo = "mealie";
rev = "v${version}";
hash = "sha256-z7kLBDzvzPWY7XmpROMpw3LcDpsl+hA+w1SdhrD/yNU=";
hash = "sha256-gg7ClclBS9j9n4/3HLxbX8HXTz9Zw5+BYG2MEYRsRBU=";
};
frontend = callPackage (import ./mealie-frontend.nix src version) { };

View File

@ -0,0 +1,48 @@
{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, openssl
, stdenv
, darwin
}:
rustPlatform.buildRustPackage rec {
pname = "ord";
version = "0.18.5";
src = fetchFromGitHub {
owner = "ordinals";
repo = "ord";
rev = version;
hash = "sha256-rqyf2GZ3lhYSSr14S+JXJYCYZC+7BbFzxLOourykMas=";
};
cargoHash = "sha256-SjD5S8GVjfpIvA++eiNebn9M33aRvrXL+MyqZTK2e4U=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
darwin.apple_sdk.frameworks.SystemConfiguration
];
dontUseCargoParallelTests = true;
checkFlags = [
"--skip=subcommand::server::tests::status" # test fails if it built from source tarball
];
meta = with lib; {
description = "Index, block explorer, and command-line wallet for Ordinals";
homepage = "https://github.com/ordinals/ord";
changelog = "https://github.com/ordinals/ord/blob/${src.rev}/CHANGELOG.md";
license = licenses.cc0;
maintainers = with maintainers; [ xrelkd ];
mainProgram = "ord";
};
}

View File

@ -1,18 +1,20 @@
{
picom,
lib,
writeShellScript,
fetchFromGitHub,
pcre
pcre,
unstableGitUpdater
}:
picom.overrideAttrs (previousAttrs: {
pname = "picom-pijulius";
version = "8.2-unstable-2024-04-30";
version = "8.2-unstable-2024-06-13";
src = fetchFromGitHub {
owner = "pijulius";
repo = "picom";
rev = "e7b14886ae644aaa657383f7c4f44be7797fd5f6";
hash = "sha256-YQVp5HicO+jbvCYSY+hjDTnXCU6aS3aCvbux6NFcJ/Y=";
rev = "a0e818855daba0d2f11a298f7fd238f8a6049167";
hash = "sha256-w1SWYhPfFGX2EumEe8UBZA3atW4jvW54GsMYLGg59Ys=";
};
buildInputs = (previousAttrs.buildInputs or [ ]) ++ [ pcre ];
@ -29,4 +31,11 @@ picom.overrideAttrs (previousAttrs: {
homepage = "https://github.com/pijulius/picom";
maintainers = with lib.maintainers; [ YvesStraten ];
};
passthru.updateScript = unstableGitUpdater {
tagFormat = "v([A-Z]+)([a-z]+)|v([1-9]).([1-9])|v([1-9])-rc([1-9])";
tagConverter = writeShellScript "picom-pijulius-tag-converter.sh" ''
sed -e 's/v//g' -e 's/([A-Z])([a-z])+/8.2/g' -e 's/-rc([1-9])|-rc//g' -e 's/0/8.2/g'
'';
};
})

View File

@ -6,25 +6,25 @@
python3.pkgs.buildPythonApplication rec {
pname = "radicale";
version = "3.2.1";
version = "3.2.2";
pyproject = true;
src = fetchFromGitHub {
owner = "Kozea";
repo = "Radicale";
rev = "v${version}";
hash = "sha256-OUwznn71xl8oWkw90fT1NYYZOuD83k+B5zLhygp1VQQ=";
rev = "v${version}-version";
hash = "sha256-ZdcV2t2F2UgjGC+aTfynP2DbPRgzOIADDebY64nj3NA=";
};
postPatch = ''
sed -i '/addopts/d' setup.cfg
'';
nativeBuildInputs = with python3.pkgs; [
build-system = with python3.pkgs; [
setuptools
];
propagatedBuildInputs = with python3.pkgs; [
dependencies = with python3.pkgs; [
defusedxml
passlib
vobject

View File

@ -1,5 +1,5 @@
{ lib
, stdenv
, stdenvNoLibc
, buildPackages
, fetchurl
, gitUpdater
@ -9,6 +9,7 @@
}:
let
stdenv = stdenvNoLibc;
isCross = (stdenv.buildPlatform != stdenv.hostPlatform);
configParser = ''
function parseconfig {

View File

@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "violet";
version = "0.4.6";
version = "0.5.0";
src = fetchFromGitHub {
owner = "paullouisageneau";
repo = "violet";
rev = "v${finalAttrs.version}";
hash = "sha256-a/WRFr6C6MWQBAG0PIDdSRVd4wnQgchPeTMoxUa2Qus=";
hash = "sha256-+cAgcGOMlhDdep8VuqP8DeELbMRXydRsD0xTyHqOuYM=";
fetchSubmodules = true;
};

View File

@ -22,7 +22,7 @@
stdenv.mkDerivation rec {
pname = "xapp";
version = "2.8.3";
version = "2.8.4";
outputs = [ "out" "dev" ];
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-uWBHCsKcW0vP2HYHQWXPrCSr5NsN2nYWAzBByxJBVrY=";
hash = "sha256-Q82UI2GEv2g01pcrvn8JBOf9FgjbG0c1qfSINx0CouQ=";
};
# Recommended by upstream, which enables the build of xapp-debug.

View File

@ -25,11 +25,11 @@
stdenv.mkDerivation rec {
pname = "mate-panel";
version = "1.28.1";
version = "1.28.2";
src = fetchurl {
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "UTPGT1lpro7uvm6LukUN6nkssL4G2a4cNuhWnS+FJLo=";
sha256 = "Z4pD6DeqJxhJQgT93xm7kGzwfl2A/S4d3nRfJtKtujM=";
};
nativeBuildInputs = [

View File

@ -131,23 +131,44 @@ let
targetCC = builtins.head toolsForTarget;
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
# derivation for certain tools depending on the platform.
bintoolsFor = {
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then targetCC.bintools
else targetCC.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then targetCC.bintools
else targetCC.bintools.bintools;
};
# toolPath calculates the absolute path to the name tool associated with a
# given `stdenv.cc` derivation, i.e. it picks the correct derivation to take
# the tool from (cc, cc.bintools, cc.bintools.bintools) and adds the correct
# subpath of the tool.
toolPath = name: cc:
let
tools = {
"cc" = cc;
"c++" = cc;
as = cc.bintools.bintools;
ar = cc.bintools.bintools;
ranlib = cc.bintools.bintools;
nm = cc.bintools.bintools;
readelf = cc.bintools.bintools;
ld = cc.bintools;
"ld.gold" = cc.bintools;
otool = cc.bintools.bintools;
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin. We decide based on target platform to have consistent tools
# across all GHC stages.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then cc.bintools
else cc.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then cc.bintools
else cc.bintools.bintools;
}.${name};
in
"${tools}/bin/${tools.targetPrefix}${name}";
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
@ -255,19 +276,19 @@ stdenv.mkDerivation (rec {
done
# GHC is a bit confused on its cross terminology, as these would normally be
# the *host* tools.
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
export CC="${toolPath "cc" targetCC}"
export CXX="${toolPath "c++" targetCC}"
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
export LD="${toolPath "ld${lib.optionalString useLdGold ".gold"}" targetCC}"
export AS="${toolPath "as" targetCC}"
export AR="${toolPath "ar" targetCC}"
export NM="${toolPath "nm" targetCC}"
export RANLIB="${toolPath "ranlib" targetCC}"
export READELF="${toolPath "readelf" targetCC}"
export STRIP="${toolPath "strip" targetCC}"
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
export OTOOL="${toolPath "otool" targetCC}"
export INSTALL_NAME_TOOL="${toolPath "install_name_tool" targetCC}"
'' + lib.optionalString useLLVM ''
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"

View File

@ -13,6 +13,7 @@
, pkgsBuildTarget
, pkgsHostTarget
, targetPackages
, fetchpatch
# build-tools
, bootPkgs
@ -170,6 +171,13 @@
then ./docs-sphinx-7-ghc98.patch
else ./docs-sphinx-7.patch )
]
++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.8") [
(fetchpatch {
name = "fix-fully_static.patch";
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/1bb24432ff77e11a0340a7d8586e151e15bba2a1.diff";
hash = "sha256-MpvTmFFsNiPDoOp9BhZyWeapeibQ77zgEV+xzZ1UAXs=";
})
]
++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use
# when building with separate outputs.
@ -259,23 +267,44 @@ let
targetCC = builtins.head toolsForTarget;
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
# derivation for certain tools depending on the platform.
bintoolsFor = {
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then targetCC.bintools
else targetCC.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then targetCC.bintools
else targetCC.bintools.bintools;
};
# toolPath calculates the absolute path to the name tool associated with a
# given `stdenv.cc` derivation, i.e. it picks the correct derivation to take
# the tool from (cc, cc.bintools, cc.bintools.bintools) and adds the correct
# subpath of the tool.
toolPath = name: cc:
let
tools = {
"cc" = cc;
"c++" = cc;
as = cc.bintools.bintools;
ar = cc.bintools.bintools;
ranlib = cc.bintools.bintools;
nm = cc.bintools.bintools;
readelf = cc.bintools.bintools;
ld = cc.bintools;
"ld.gold" = cc.bintools;
otool = cc.bintools.bintools;
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin. We decide based on target platform to have consistent tools
# across all GHC stages.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then cc.bintools
else cc.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then cc.bintools
else cc.bintools.bintools;
}.${name};
in
"${tools}/bin/${tools.targetPrefix}${name}";
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
@ -321,19 +350,19 @@ stdenv.mkDerivation ({
done
# GHC is a bit confused on its cross terminology, as these would normally be
# the *host* tools.
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
export CC="${toolPath "cc" targetCC}"
export CXX="${toolPath "c++" targetCC}"
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
export LD="${toolPath "ld${lib.optionalString useLdGold ".gold"}" targetCC}"
export AS="${toolPath "as" targetCC}"
export AR="${toolPath "ar" targetCC}"
export NM="${toolPath "nm" targetCC}"
export RANLIB="${toolPath "ranlib" targetCC}"
export READELF="${toolPath "readelf" targetCC}"
export STRIP="${toolPath "strip" targetCC}"
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
export OTOOL="${toolPath "otool" targetCC}"
export INSTALL_NAME_TOOL="${toolPath "install_name_tool" targetCC}"
'' + lib.optionalString useLLVM ''
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
@ -555,10 +584,6 @@ stdenv.mkDerivation ({
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
# https://github.com/NixOS/nixpkgs/issues/208959
broken =
(lib.versionAtLeast version "9.6" && lib.versionOlder version "9.8")
&& stdenv.targetPlatform.isStatic;
};
dontStrip = targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm;

View File

@ -136,23 +136,44 @@ let
targetCC = builtins.head toolsForTarget;
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
# derivation for certain tools depending on the platform.
bintoolsFor = {
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then targetCC.bintools
else targetCC.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then targetCC.bintools
else targetCC.bintools.bintools;
};
# toolPath calculates the absolute path to the name tool associated with a
# given `stdenv.cc` derivation, i.e. it picks the correct derivation to take
# the tool from (cc, cc.bintools, cc.bintools.bintools) and adds the correct
# subpath of the tool.
toolPath = name: cc:
let
tools = {
"cc" = cc;
"c++" = cc;
as = cc.bintools.bintools;
ar = cc.bintools.bintools;
ranlib = cc.bintools.bintools;
nm = cc.bintools.bintools;
readelf = cc.bintools.bintools;
ld = cc.bintools;
"ld.gold" = cc.bintools;
otool = cc.bintools.bintools;
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin. We decide based on target platform to have consistent tools
# across all GHC stages.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then cc.bintools
else cc.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then cc.bintools
else cc.bintools.bintools;
}.${name};
in
"${tools}/bin/${tools.targetPrefix}${name}";
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
@ -265,19 +286,19 @@ stdenv.mkDerivation (rec {
done
# GHC is a bit confused on its cross terminology, as these would normally be
# the *host* tools.
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
export CC="${toolPath "cc" targetCC}"
export CXX="${toolPath "c++" targetCC}"
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
export LD="${toolPath "ld${lib.optionalString useLdGold ".gold"}" targetCC}"
export AS="${toolPath "as" targetCC}"
export AR="${toolPath "ar" targetCC}"
export NM="${toolPath "nm" targetCC}"
export RANLIB="${toolPath "ranlib" targetCC}"
export READELF="${toolPath "readelf" targetCC}"
export STRIP="${toolPath "strip" targetCC}"
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
export OTOOL="${toolPath "otool" targetCC}"
export INSTALL_NAME_TOOL="${toolPath "install_name_tool" targetCC}"
'' + lib.optionalString useLLVM ''
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"

View File

@ -234,10 +234,16 @@ self: super: {
fused-effects-random = doJailbreak super.fused-effects-random;
fused-effects-readline = doJailbreak super.fused-effects-readline;
# fix tests failure for base≥4.15 (https://github.com/kim/leveldb-haskell/pull/41)
leveldb-haskell = appendPatch (fetchpatch {
url = "https://github.com/kim/leveldb-haskell/commit/f5249081f589233890ddb1945ec548ca9fb717cf.patch";
sha256 = "14gllipl28lqry73c5dnclsskzk1bsrrgazibl4lkl8z98j2csjb";
leveldb-haskell = overrideCabal (drv: {
version = "2024-05-05-unstable";
# Fix tests on mtl ≥ 2.3
# https://github.com/kim/leveldb-haskell/pull/42
src = pkgs.fetchFromGitHub {
owner = "kim";
repo = "leveldb-haskell";
rev = "3a505f3a7de0f5d14463538d7c2c9a9881a60eb9";
sha256 = "sha256-okUn5ZuWcj8vPr0GWXvO1LygNCrDfttkDaUoOt+FLA0=";
};
}) super.leveldb-haskell;
# Arion's test suite needs a Nixpkgs, which is cumbersome to do from Nixpkgs
@ -268,12 +274,6 @@ self: super: {
sha256 = "1c7knpvxr7p8c159jkyk6w29653z5yzgjjqj11130bbb8mk9qhq7";
}) super.c2hsc;
# Some Hackage packages reference this attribute, which exists only in the
# GHCJS package set. We provide a dummy version here to fix potential
# evaluation errors.
ghcjs-base = null;
ghcjs-prim = null;
ghc-debug-client = doJailbreak super.ghc-debug-client;
# Test failure. Tests also disabled in Stackage:
@ -971,12 +971,12 @@ self: super: {
# See https://github.com/valderman/selda/issues/187
inherit (let
mkSeldaPackage = name: overrideCabal (drv: {
version = "2023-02-05-unstable";
version = "2024-05-05-unstable";
src = pkgs.fetchFromGitHub {
owner = "valderman";
repo = "selda";
rev = "ab9619db13b93867d1a244441bb4de03d3e1dadb";
hash = "sha256-P0nqAYzbeTyEEgzMij/3mKcs++/p/Wgc7Y6bDudXt2U=";
rev = "50c3ba5c5da72bb758a4112363ba2fe1c0e968ea";
hash = "sha256-LEAJsSsDL0mmVHntnI16fH8m5DmePfcU0hFw9ErqTgQ=";
} + "/${name}";
}) super.${name};
in
@ -1367,18 +1367,17 @@ self: super: {
'';
}) super.PortMidi;
# Fix for base >= 4.11
scat = overrideCabal (drv: {
patches = [
# Fix build with base >= 4.11
# Fix build with base >= 4.11 (https://github.com/redelmann/scat/pull/6)
(fetchpatch {
url = "https://github.com/redelmann/scat/commit/429f22944b7634b8789cb3805292bcc2b23e3e9f.diff";
hash = "sha256-FLr1KfBaSYzI6MiZIBY1CkgAb5sThvvgjrSAN8EV0h4=";
})
# Fix build with vector >= 0.13
# Fix build with vector >= 0.13, mtl >= 2.3 (https://github.com/redelmann/scat/pull/8)
(fetchpatch {
url = "https://github.com/redelmann/scat/commit/e21cc9c17b5b605b5bc0aacad66d44bbe0beb8c4.diff";
hash = "sha256-MifHb2EKZx8skOcs+2t54CzxAS4PaEC0OTEfq4yVXzk=";
url = "https://github.com/redelmann/scat/compare/e8e064f7e6a152fe25a6ccd743573a16974239d0..c6a3636548d628f32d8edc73a333188ce24141a7.patch";
hash = "sha256-BU4MUn/TnZHpZBlX1vDHE7QZva5yhlLTb8zwpx7UScI";
})
];
}) super.scat;
@ -1561,13 +1560,36 @@ self: super: {
doJailbreak
];
jsaddle-dom = overrideCabal (old: {
postPatch = old.postPatch or "" + ''
rm Setup.hs
'';
}) super.jsaddle-dom;
jsaddle-hello = doJailbreak super.jsaddle-hello;
ghcjs-dom-hello = doJailbreak super.ghcjs-dom-hello;
ghcjs-dom-hello = appendPatches [
(fetchpatch {
url = "https://github.com/ghcjs/ghcjs-dom-hello/commit/53991df6a4eba9f1e9633eb22f6a0486a79491c3.patch";
sha256 = "sha256-HQeUgjvzYyY14+CDYiMahAMn7fBcy2d7p8/kqGq+rnI=";
})
(fetchpatch {
url = "https://github.com/ghcjs/ghcjs-dom-hello/commit/d766d937121f7ea5c4c154bd533a1eae47f531c9.patch";
sha256 = "sha256-QTkH+L+JMwGyuoqzHBnrokT7KzpHC4YiAWoeiaFBLUw=";
})
(fetchpatch {
url = "https://github.com/ghcjs/ghcjs-dom-hello/commit/831464d995f4033c9aa84f9ed9fb37a268f34d4e.patch";
sha256 = "sha256-hQMy+78geTuxd3kbdiyYqoAFrauu90HbpPi0EEKjMzM=";
})
] super.ghcjs-dom-hello;
# Needs https://github.com/ghcjs/jsaddle-hello/pull/5 and hackage release
jsaddle-hello = appendPatches [
(fetchpatch {
url = "https://github.com/ghcjs/jsaddle-hello/commit/c4de837675117b821c50a5079d20d84ec16ff26a.patch";
sha256 = "sha256-NsM7QqNLt5V8i5bveYgMrawGnZVsIuAoJfBF75jBwV0=";
})
(fetchpatch {
url = "https://github.com/ghcjs/jsaddle-hello/commit/5c437363833684ea951ec74a0d0fdf5b6fbaca85.patch";
sha256 = "sha256-CUyZsts0FAQ3c8Z+zfvwbmlAJCMcidV80n8dA/SoRls=";
})
(fetchpatch {
url = "https://github.com/ghcjs/jsaddle-hello/commit/e2da9e266fbfa8f7fcf3009ab6cfbf825a8bcf7a.patch";
sha256 = "sha256-WL0CcnlMt6KI7MOZMg74fNN/I4gYSO3n+GiaXB2BOP0=";
})
] super.jsaddle-hello;
# Too strict upper bounds on text
lsql-csv = doJailbreak super.lsql-csv;
@ -1691,6 +1713,14 @@ self: super: {
# Test suite fails to compile https://github.com/agrafix/Spock/issues/177
Spock = dontCheck super.Spock;
Spock-core = appendPatches [
(fetchpatch {
url = "https://github.com/agrafix/Spock/commit/d0b51fa60a83bfa5c1b5fc8fced18001e7321701.patch";
sha256 = "sha256-l9voiczOOdYVBP/BNEUvqARb21t0Rp2kpsNbRFUWSLg=";
stripLen = 1;
})
] (doJailbreak super.Spock-core);
# https://github.com/strake/filtrable.hs/issues/6
filtrable = doJailbreak super.filtrable;
@ -2647,18 +2677,6 @@ self: super: {
# https://github.com/ngless-toolkit/ngless/issues/152
NGLess = dontCheck super.NGLess;
# Raise version bounds: https://github.com/well-typed/lens-sop/pull/4
lens-sop = appendPatches [
(fetchpatch {
url = "https://github.com/well-typed/lens-sop/commit/d8657f27c12191a7c0a91701c0fcd9a590e0090e.patch";
sha256 = "sha256-9ODfbOb6Bs3EVTY9b7cUvkNmqzzZPWUmgmlAneaN3Tw=";
})
(fetchpatch {
url = "https://github.com/well-typed/lens-sop/commit/b7ecffdeb836d19373871659e2f8cd24da6f7312.patch";
sha256 = "sha256-hDUQ2fW9Qyom65YvtW9bsbz7XtueRmdsAbAB42D+gu4=";
})
] super.lens-sop;
# Raise version bounds: https://github.com/kosmikus/records-sop/pull/15
records-sop = appendPatch (fetchpatch {
url = "https://github.com/kosmikus/records-sop/commit/fb149f453a816ff14d0cb20b3ea56b80ff49d9f1.patch";

View File

@ -323,6 +323,20 @@ self: super: ({
# Tests fail on macOS https://github.com/mrkkrp/zip/issues/112
zip = dontCheck super.zip;
warp = super.warp.overrideAttrs (drv: {
__darwinAllowLocalNetworking = true;
});
ghcjs-dom-hello = overrideCabal (drv: {
libraryHaskellDepends = with self; [ jsaddle jsaddle-warp ];
executableHaskellDepends = with self; [ ghcjs-dom jsaddle-wkwebview ];
}) super.ghcjs-dom-hello;
jsaddle-hello = overrideCabal (drv: {
libraryHaskellDepends = with self; [ jsaddle lens ];
executableHaskellDepends = with self; [ jsaddle-warp jsaddle-wkwebview ];
}) super.jsaddle-hello;
jsaddle-wkwebview = overrideCabal (drv: {
libraryFrameworkDepends = with pkgs.buildPackages.darwin.apple_sdk.frameworks; [ Cocoa WebKit ];
libraryHaskellDepends = with self; [ aeson data-default jsaddle ]; # cabal2nix doesn't add darwin-only deps

View File

@ -68,6 +68,7 @@ self: super: {
stylish-haskell = self.stylish-haskell_0_14_6_0;
hlint = self.hlint_3_8;
ghc-syntax-highlighter = self.ghc-syntax-highlighter_0_0_11_0;
websockets = self.websockets_0_13_0_0;
# A given major version of ghc-exactprint only supports one version of GHC.
ghc-exactprint = self.ghc-exactprint_1_8_0_0;

View File

@ -24,6 +24,11 @@ self: super:
aeson = self.aeson_1_5_6_0;
});
# Included in ghcjs itself
ghcjs-prim = null;
ghcjs-websockets = markUnbroken super.ghcjs-websockets;
# GHCJS does not ship with the same core packages as GHC.
# https://github.com/ghcjs/ghcjs/issues/676
stm = doJailbreak self.stm_2_5_3_1;

View File

@ -0,0 +1,22 @@
{ pkgs, haskellLib }:
with haskellLib;
# cabal2nix doesn't properly add dependencies conditional on arch(javascript)
(self: super: {
ghcjs-base = addBuildDepends (with self; [
aeson
attoparsec
dlist
hashable
primitive
scientific
unordered-containers
vector
]) super.ghcjs-base;
ghcjs-dom = addBuildDepend self.ghcjs-dom-javascript super.ghcjs-dom;
ghcjs-dom-javascript = addBuildDepend self.ghcjs-base super.ghcjs-dom-javascript;
jsaddle = addBuildDepend self.ghcjs-base super.jsaddle;
jsaddle-dom = addBuildDepend self.ghcjs-base super.jsaddle-dom;
})

View File

@ -1995,11 +1995,11 @@ broken-packages:
- ghc-internal # failure in job https://hydra.nixos.org/build/260723678 at 2024-05-25
- ghcitui # failure in job https://hydra.nixos.org/build/252737339 at 2024-03-16
- ghcjs-base-stub # timeout
- ghcjs-dom-javascript # failure in job https://hydra.nixos.org/build/255688382 at 2024-04-16
- ghcjs-dom-jsffi # failure in job https://hydra.nixos.org/build/233215225 at 2023-09-02
- ghcjs-fetch # timeout
- ghcjs-promise # failure in job https://hydra.nixos.org/build/233243985 at 2023-09-02
- ghcjs-xhr # failure in job https://hydra.nixos.org/build/233235693 at 2023-09-02
- ghcjs-websockets # Does not work on the js backend added in 9.6+, only on ghcjs, where we markUnbroken
- ghc-justdoit # failure in job https://hydra.nixos.org/build/233221884 at 2023-09-02
- ghclive # failure in job https://hydra.nixos.org/build/233231592 at 2023-09-02
- ghc-man-completion # failure in job https://hydra.nixos.org/build/233245740 at 2023-09-02
@ -2609,7 +2609,6 @@ broken-packages:
- hledger-chart # failure in job https://hydra.nixos.org/build/233205387 at 2023-09-02
- hledger-diff # failure in job https://hydra.nixos.org/build/233199639 at 2023-09-02
- hledger-flow # failure in job https://hydra.nixos.org/build/233252169 at 2023-09-02
- hledger-iadd # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/238288021 at 2023-10-21
- hledger-irr # failure in job https://hydra.nixos.org/build/233230276 at 2023-09-02
- hledger-makeitso # failure in job https://hydra.nixos.org/build/233213046 at 2023-09-02
- hledger-vty # failure in job https://hydra.nixos.org/build/233191782 at 2023-09-02
@ -2897,7 +2896,6 @@ broken-packages:
- HTicTacToe # failure in job https://hydra.nixos.org/build/233235397 at 2023-09-02
- htiled # failure in job https://hydra.nixos.org/build/233219305 at 2023-09-02
- htlset # failure in job https://hydra.nixos.org/build/233203886 at 2023-09-02
- html-parse # failure in job https://hydra.nixos.org/build/233241759 at 2023-09-02
- html-rules # failure in job https://hydra.nixos.org/build/233200615 at 2023-09-02
- html-tokenizer # failure in job https://hydra.nixos.org/build/233243581 at 2023-09-02
- htoml # failure in job https://hydra.nixos.org/build/233246670 at 2023-09-02
@ -3436,7 +3434,6 @@ broken-packages:
- lens-process # failure in job https://hydra.nixos.org/build/233242948 at 2023-09-02
- lensref # failure in job https://hydra.nixos.org/build/233205479 at 2023-09-02
- lens-simple # failure in job https://hydra.nixos.org/build/233245452 at 2023-09-02
- lens-sop # failure in job https://hydra.nixos.org/build/259961739 at 2024-05-19
- lens-tell # failure in job https://hydra.nixos.org/build/233234619 at 2023-09-02
- lens-text-encoding # failure in job https://hydra.nixos.org/build/233222713 at 2023-09-02
- lens-th-rewrite # failure in job https://hydra.nixos.org/build/233201025 at 2023-09-02
@ -3448,7 +3445,6 @@ broken-packages:
- lenz-template # failure in job https://hydra.nixos.org/build/233206822 at 2023-09-02
- less-arbitrary # failure in job https://hydra.nixos.org/build/233231412 at 2023-09-02
- Level0 # failure in job https://hydra.nixos.org/build/233220758 at 2023-09-02
- leveldb-haskell # failure in job https://hydra.nixos.org/build/252739424 at 2024-03-16
- level-monad # failure in job https://hydra.nixos.org/build/233257036 at 2023-09-02
- levmar # failure in job https://hydra.nixos.org/build/233254731 at 2023-09-02
- lfst # failure in job https://hydra.nixos.org/build/233240622 at 2023-09-02
@ -4813,7 +4809,6 @@ broken-packages:
- pusher-ws # failure in job https://hydra.nixos.org/build/233204133 at 2023-09-02
- pushme # failure in job https://hydra.nixos.org/build/233212481 at 2023-09-02
- push-notifications # failure in job https://hydra.nixos.org/build/233199364 at 2023-09-02
- push-notify-apn # failure in job https://hydra.nixos.org/build/260189652 at 2024-05-19
- pushover # failure in job https://hydra.nixos.org/build/252739908 at 2024-03-16
- putlenses # failure in job https://hydra.nixos.org/build/233197372 at 2023-09-02
- puzzle-draw # failure in job https://hydra.nixos.org/build/233204953 at 2023-09-02
@ -5188,7 +5183,6 @@ broken-packages:
- scale # failure in job https://hydra.nixos.org/build/233222189 at 2023-09-02
- scaleimage # failure in job https://hydra.nixos.org/build/233240688 at 2023-09-02
- scalendar # failure in job https://hydra.nixos.org/build/233206581 at 2023-09-02
- scat # failure in job https://hydra.nixos.org/build/252730427 at 2024-03-16
- scc # failure in job https://hydra.nixos.org/build/233247446 at 2023-09-02
- scgi # failure in job https://hydra.nixos.org/build/233247314 at 2023-09-02
- schedevr # failure in job https://hydra.nixos.org/build/233240124 at 2023-09-02
@ -5244,7 +5238,6 @@ broken-packages:
- secure-sockets # failure in job https://hydra.nixos.org/build/233254170 at 2023-09-02
- secureUDP # failure in job https://hydra.nixos.org/build/233215410 at 2023-09-02
- SegmentTree # failure in job https://hydra.nixos.org/build/233216161 at 2023-09-02
- selda # failure in job https://hydra.nixos.org/build/252735635 at 2024-03-16
- selda-postgresql # failure in job https://hydra.nixos.org/build/245539286 at 2024-01-02
- selectors # failure in job https://hydra.nixos.org/build/233227433 at 2023-09-02
- selenium # failure in job https://hydra.nixos.org/build/233214276 at 2023-09-02
@ -5344,7 +5337,6 @@ broken-packages:
- sessions # failure in job https://hydra.nixos.org/build/233214614 at 2023-09-02
- sessiontypes # failure in job https://hydra.nixos.org/build/233224975 at 2023-09-02
- setdown # failure in job https://hydra.nixos.org/build/241521053 at 2023-12-03
- set-extra # failure in job https://hydra.nixos.org/build/252738545 at 2024-03-16
- setgame # failure in job https://hydra.nixos.org/build/233218664 at 2023-09-02
- set-of # failure in job https://hydra.nixos.org/build/233202960 at 2023-09-02
- setoid # failure in job https://hydra.nixos.org/build/233213744 at 2023-09-02
@ -5607,7 +5599,6 @@ broken-packages:
- splot # failure in job https://hydra.nixos.org/build/252715661 at 2024-03-16
- Spock-api-ghcjs # failure in job https://hydra.nixos.org/build/233246163 at 2023-09-02
- Spock-auth # failure in job https://hydra.nixos.org/build/233212125 at 2023-09-02
- Spock-core # failure in job https://hydra.nixos.org/build/252720122 at 2024-03-16
- spoonutil # failure in job https://hydra.nixos.org/build/233257645 at 2023-09-02
- spotify # failure in job https://hydra.nixos.org/build/233254990 at 2023-09-02
- spoty # failure in job https://hydra.nixos.org/build/233233863 at 2023-09-02

View File

@ -152,6 +152,7 @@ package-maintainers:
- ghcjs-dom
- ghcjs-dom-hello
- ghcjs-dom-javascript
- ghcjs-dom-jsaddle
- haveibeenpwned
- jsaddle
- jsaddle-clib
@ -649,6 +650,24 @@ package-maintainers:
- nix-tree
zowoq:
- ShellCheck
mpscholten:
- ihp-hsx
- push-notify-apn
- hs-pkpass
- raven-haskell
- stripe-concepts
- stripe-signature
- http2-client
- zip
- currencies
- string-random
- inflections
- pcre-heavy
- mmark
- mmark-ext
- typerep-map
- minio-hs
- smtp-mail
unsupported-platforms:
Allure: [ platforms.darwin ]
@ -670,7 +689,6 @@ unsupported-platforms:
freenect: [ platforms.darwin ]
FTGL: [ platforms.darwin ]
fuzzytime: [ platforms.darwin ] # https://github.com/kamwitsta/fuzzytime/issues/2
ghcjs-dom-hello: [ platforms.darwin ]
ghc-gc-hook: [ platforms.darwin ] # requires C11 threads which Apple doesn't support
gi-adwaita: [ platforms.darwin ]
gi-dbusmenugtk3: [ platforms.darwin ]
@ -699,7 +717,6 @@ unsupported-platforms:
intricacy: [ platforms.darwin ] # depends on mesa
iwlib: [ platforms.darwin ]
Jazzkell: [ platforms.darwin ] # depends on Euterpea
jsaddle-hello: [ platforms.darwin ] # depends on jsaddle-webkit2gtk
jsaddle-webkit2gtk: [ platforms.darwin ]
Kulitta: [ platforms.darwin ] # depends on Euterpea
LambdaHack: [ platforms.darwin ]
@ -792,6 +809,8 @@ supported-platforms:
geomancy: [ platforms.x86 ] # x86 intrinsics
geomancy-layout: [ platforms.x86 ] # x86 intrinsics
gi-gtkosxapplication: [ platforms.darwin ]
ghcjs-base: [ javascript-ghcjs ]
ghcjs-dom-javascript: [ javascript-ghcjs ]
gtk-mac-integration: [ platforms.darwin ]
gtk3-mac-integration: [ platforms.darwin ]
halide-haskell: [ platforms.linux ]

View File

@ -378,11 +378,6 @@ dont-distribute-packages:
- SourceGraph
- SpacePrivateers
- SpinCounter
- Spock
- Spock-api-server
- Spock-digestive
- Spock-lucid
- Spock-worker
- StockholmAlignment
- Strafunski-Sdf2Haskell
- SybWidget
@ -670,7 +665,6 @@ dont-distribute-packages:
- bip32
- birch-beer
- bird
- bisc
- biscuit-servant
- bishbosh
- bit-array
@ -2424,7 +2418,6 @@ dont-distribute-packages:
- json-query
- json-rpc-client
- json-schema
- json-sop
- json-spec-elm
- json-spec-elm-servant
- json-spec-openapi
@ -3575,8 +3568,6 @@ dont-distribute-packages:
- secrm
- sednaDBXML
- seitz-symbol
- selda-json
- selda-sqlite
- selenium-server
- semantic-source
- semantic-version

View File

@ -9,6 +9,7 @@
, configurationNix ? import ./configuration-nix.nix
, configurationArm ? import ./configuration-arm.nix
, configurationDarwin ? import ./configuration-darwin.nix
, configurationJS ? import ./configuration-ghcjs-9.x.nix
}:
let
@ -26,7 +27,10 @@ let
(configurationArm { inherit pkgs haskellLib; })
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
(configurationDarwin { inherit pkgs haskellLib; })
];
] ++ lib.optionals stdenv.hostPlatform.isGhcjs [
(configurationJS { inherit pkgs haskellLib; })
]
;
extensions = lib.composeManyExtensions ([
(nonHackagePackages { inherit pkgs haskellLib; })

View File

@ -7,6 +7,13 @@
let
isCross = stdenv.buildPlatform != stdenv.hostPlatform;
# Note that ghc.isGhcjs != stdenv.hostPlatform.isGhcjs.
# ghc.isGhcjs implies that we are using ghcjs, a project separate from GHC.
# (mere) stdenv.hostPlatform.isGhcjs means that we are using GHC's JavaScript
# backend. The latter is a normal cross compilation backend and needs little
# special accommodation.
outputsJS = ghc.isGhcjs or false || stdenv.hostPlatform.isGhcjs;
# Pass the "wrong" C compiler rather than none at all so packages that just
# use the C preproccessor still work, see
# https://github.com/haskell/cabal/issues/6466 for details.
@ -19,15 +26,11 @@ let
fetchurl removeReferencesTo
pkg-config coreutils gnugrep glibcLocales
emscripten;
in
{ pname
# Note that ghc.isGhcjs != stdenv.hostPlatform.isGhcjs.
# ghc.isGhcjs implies that we are using ghcjs, a project separate from GHC.
# (mere) stdenv.hostPlatform.isGhcjs means that we are using GHC's JavaScript
# backend. The latter is a normal cross compilation backend and needs little
# special accommodation.
, dontStrip ? (ghc.isGhcjs or false || stdenv.hostPlatform.isGhcjs)
, dontStrip ? outputsJS
, version, revision ? null
, sha256 ? null
, src ? fetchurl { url = "mirror://hackage/${pname}-${version}.tar.gz"; inherit sha256; }
@ -44,7 +47,7 @@ in
, doHaddockQuickjump ? doHoogle
, doInstallIntermediates ? false
, editedCabalFile ? null
, enableLibraryProfiling ? !(ghc.isGhcjs or false)
, enableLibraryProfiling ? !outputsJS
, enableExecutableProfiling ? false
, profilingDetail ? "exported-functions"
# TODO enable shared libs for cross-compiling
@ -223,7 +226,7 @@ let
] ++ optional (allPkgconfigDepends != [])
"--with-pkg-config=${pkg-config.targetPrefix}pkg-config";
parallelBuildingFlags = "-j$NIX_BUILD_CORES" + optionalString stdenv.isLinux " +RTS -A64M -RTS";
makeGhcOptions = opts: lib.concatStringsSep " " (map (opt: "--ghc-option=${opt}") opts);
buildFlagsString = optionalString (buildFlags != []) (" " + concatStringsSep " " buildFlags);
@ -241,8 +244,8 @@ let
"--package-db=$packageConfDir"
(optionalString (enableSharedExecutables && stdenv.isLinux) "--ghc-option=-optl=-Wl,-rpath=$out/${ghcLibdir}/${pname}-${version}")
(optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
(optionalString enableParallelBuilding "--ghc-options=${parallelBuildingFlags}")
(optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp")
(optionalString enableParallelBuilding (makeGhcOptions [ "-j$NIX_BUILD_CORES" "+RTS" "-A64M" "-RTS" ]))
(optionalString useCpphs ("--with-cpphs=${cpphs}/bin/cpphs " + (makeGhcOptions [ "-cpp" "-pgmP${cpphs}/bin/cpphs" "-optP--cpp" ])))
(enableFeature enableLibraryProfiling "library-profiling")
(optionalString (enableExecutableProfiling || enableLibraryProfiling) "--profiling-detail=${profilingDetail}")
(enableFeature enableExecutableProfiling "profiling")
@ -265,16 +268,14 @@ let
) ++ optionals enableSeparateBinOutput [
"--bindir=${binDir}"
] ++ optionals (doHaddockInterfaces && isLibrary) [
"--ghc-options=-haddock"
"--ghc-option=-haddock"
];
postPhases = optional doInstallIntermediates "installIntermediatesPhase";
setupCompileFlags = [
(optionalString (!coreSetup) "-package-db=$setupPackageConfDir")
(optionalString enableParallelBuilding parallelBuildingFlags)
"-threaded" # https://github.com/haskell/cabal/issues/2398
"-rtsopts" # allow us to pass RTS flags to the generated Setup executable
];
isHaskellPkg = x: x ? isHaskellLibrary;

View File

@ -20331,7 +20331,6 @@ self: {
];
description = "Another Haskell web framework for rapid development";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
}) {};
"Spock-api" = callPackage
@ -20371,7 +20370,6 @@ self: {
libraryHaskellDepends = [ base hvect mtl Spock-api Spock-core ];
description = "Another Haskell web framework for rapid development";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
}) {};
"Spock-auth" = callPackage
@ -20415,8 +20413,6 @@ self: {
];
description = "Another Haskell web framework for rapid development";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
broken = true;
}) {};
"Spock-digestive" = callPackage
@ -20433,7 +20429,6 @@ self: {
];
description = "Digestive functors support for Spock";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
}) {};
"Spock-lucid" = callPackage
@ -20445,7 +20440,6 @@ self: {
libraryHaskellDepends = [ base lucid Spock transformers ];
description = "Lucid support for Spock";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
}) {};
"Spock-worker" = callPackage
@ -20463,7 +20457,6 @@ self: {
testHaskellDepends = [ base containers HTF stm vector ];
description = "Background workers for Spock";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
}) {};
"SpreadsheetML" = callPackage
@ -50668,7 +50661,6 @@ self: {
];
description = "A small tool that clears cookies (and more)";
license = lib.licenses.gpl3Only;
hydraPlatforms = lib.platforms.none;
mainProgram = "bisc";
}) {};
@ -121353,6 +121345,7 @@ self: {
sha256 = "1cx9jqpbr6b30qckp2zpsfk3swa58snjb79pq0l6485nvrxa9mls";
description = "base library for GHCJS";
license = lib.licenses.mit;
platforms = [ "javascript-ghcjs" ];
maintainers = [ lib.maintainers.alexfmpe ];
}) {};
@ -121422,7 +121415,6 @@ self: {
];
description = "GHCJS DOM Hello World, an example package";
license = lib.licenses.mit;
badPlatforms = lib.platforms.darwin;
maintainers = [ lib.maintainers.alexfmpe ];
}) {};
@ -121434,9 +121426,8 @@ self: {
sha256 = "0im7wn7bn43rhkblh0wn9angadbdvywsalfz0adr9pkwv6hvc8qs";
description = "DOM library using JSFFI and GHCJS";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
platforms = [ "javascript-ghcjs" ];
maintainers = [ lib.maintainers.alexfmpe ];
broken = true;
}) {};
"ghcjs-dom-jsaddle" = callPackage
@ -121449,6 +121440,7 @@ self: {
doHaddock = false;
description = "DOM library that supports both GHCJS and GHC using jsaddle";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.alexfmpe ];
}) {};
"ghcjs-dom-jsffi" = callPackage
@ -121573,6 +121565,8 @@ self: {
];
description = "Deprecated: use ghcjs-base's native websockets";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
broken = true;
}) {};
"ghcjs-xhr" = callPackage
@ -151711,9 +151705,7 @@ self: {
testToolDepends = [ hspec-discover ];
description = "A terminal UI as drop-in replacement for hledger add";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
mainProgram = "hledger-iadd";
broken = true;
}) {};
"hledger-iadd_1_3_21" = callPackage
@ -151749,7 +151741,6 @@ self: {
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
mainProgram = "hledger-iadd";
broken = true;
}) {};
"hledger-interest" = callPackage
@ -163899,8 +163890,6 @@ self: {
];
description = "A high-performance HTML tokenizer";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
broken = true;
}) {};
"html-parse-util" = callPackage
@ -178690,7 +178679,6 @@ self: {
];
description = "JSaddle Hello World, an example package";
license = lib.licenses.mit;
badPlatforms = lib.platforms.darwin;
maintainers = [ lib.maintainers.alexfmpe ];
}) {};
@ -179537,7 +179525,6 @@ self: {
];
description = "Generics JSON (de)serialization using generics-sop";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
maintainers = [ lib.maintainers.alexfmpe ];
}) {};
@ -189161,9 +189148,7 @@ self: {
];
description = "Computing lenses generically using generics-sop";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
maintainers = [ lib.maintainers.alexfmpe ];
broken = true;
}) {};
"lens-tell" = callPackage
@ -189498,8 +189483,6 @@ self: {
];
description = "Haskell bindings to LevelDB";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
broken = true;
}) {inherit (pkgs) leveldb;};
"leveldb-haskell-fork" = callPackage
@ -249277,9 +249260,7 @@ self: {
testHaskellDepends = [ aeson base hspec ];
description = "Send push notifications to mobile iOS devices";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
mainProgram = "sendapn";
broken = true;
}) {};
"push-notify-ccs" = callPackage
@ -267562,9 +267543,7 @@ self: {
description = "Generates unique passwords for various websites from a single password";
license = lib.licenses.bsd3;
platforms = lib.platforms.x86;
hydraPlatforms = lib.platforms.none;
mainProgram = "scat";
broken = true;
}) {};
"scc" = callPackage
@ -269939,8 +269918,6 @@ self: {
];
description = "Multi-backend, high-level EDSL for interacting with SQL databases";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
broken = true;
}) {};
"selda-json" = callPackage
@ -269952,7 +269929,6 @@ self: {
libraryHaskellDepends = [ aeson base bytestring selda text ];
description = "JSON support for the Selda database library";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
}) {};
"selda-postgresql" = callPackage
@ -269987,7 +269963,6 @@ self: {
];
description = "SQLite backend for the Selda database EDSL";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
}) {};
"select" = callPackage
@ -274945,8 +274920,6 @@ self: {
libraryHaskellDepends = [ base containers mtl syb ];
description = "Functions that could be added to Data.Set.";
license = lib.licenses.bsd3;
hydraPlatforms = lib.platforms.none;
broken = true;
}) {};
"set-monad" = callPackage
@ -336488,7 +336461,6 @@ self: {
];
description = "Add CSP headers to Yesod apps";
license = lib.licenses.mit;
hydraPlatforms = lib.platforms.none;
}) {};
"yesod-datatables" = callPackage

View File

@ -1,6 +1,6 @@
{ stdenv, texinfo, flex, bison, fetchFromGitHub, crossLibcStdenv, buildPackages }:
{ stdenv, texinfo, flex, bison, fetchFromGitHub, stdenvNoLibc, buildPackages }:
crossLibcStdenv.mkDerivation {
stdenvNoLibc.mkDerivation {
name = "newlib";
src = fetchFromGitHub {
owner = "openrisc";

View File

@ -1,6 +1,6 @@
{ stdenv, texinfo, flex, bison, fetchFromGitHub, crossLibcStdenv, buildPackages }:
{ stdenv, texinfo, flex, bison, fetchFromGitHub, stdenvNoLibc, buildPackages }:
crossLibcStdenv.mkDerivation {
stdenvNoLibc.mkDerivation {
name = "newlib";
src = fetchFromGitHub {
owner = "itszor";

View File

@ -0,0 +1,38 @@
{
lib,
buildPythonPackage,
fetchPypi,
setuptools,
pkgs,
python,
}:
buildPythonPackage rec {
pname = "berkeleydb";
version = "18.1.8";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-4YMaeQv9hVdA5cEvlS8Z9kbCaYBs/DYnda/Zh4zzJVc=";
};
build-system = [ setuptools ];
checkPhase = ''
${python.interpreter} test.py
'';
# See: https://github.com/NixOS/nixpkgs/pull/311198/files#r1597746759
env = {
BERKELEYDB_INCDIR = "${lib.getDev pkgs.db}/include";
BERKELEYDB_LIBDIR = "${lib.getLib pkgs.db}/lib";
};
meta = with lib; {
description = "Python bindings for Oracle Berkeley DB";
homepage = "https://www.jcea.es/programacion/pybsddb.htm";
license = with licenses; [ bsd3 ];
maintainers = [ ];
};
}

View File

@ -1,11 +1,11 @@
{
lib,
buildPythonPackage,
pythonAtLeast,
python,
fetchPypi,
setuptools,
pkgs,
python,
pythonOlder,
}:
buildPythonPackage rec {
@ -22,11 +22,9 @@ buildPythonPackage rec {
buildInputs = [ pkgs.db ];
doCheck = pythonOlder "3.12"; # distutils usage
checkPhase = ''
${python.interpreter} test.py
'';
# See : https://github.com/NixOS/nixpkgs/pull/311198#discussion_r1599257522
# More details here : https://www.jcea.es/programacion/pybsddb.htm
disabled = pythonAtLeast "3.10";
# Path to database need to be set.
# Somehow the setup.py flag is not propagated.
@ -36,6 +34,16 @@ buildPythonPackage rec {
export BERKELEYDB_DIR=${pkgs.db.dev};
'';
postPatch = ''
substituteInPlace test3.py \
--replace-fail "from distutils.util import get_platform" "from sysconfig import get_platform" \
--replace-fail "sys.config[0:3]" "sys.implementation.cache_tag"
'';
checkPhase = ''
${python.interpreter} test.py
'';
meta = with lib; {
description = "Python bindings for Oracle Berkeley DB";
homepage = "https://www.jcea.es/programacion/pybsddb.htm";

View File

@ -0,0 +1,40 @@
{
buildPythonPackage,
fetchFromGitHub,
hatch-vcs,
hatchling,
lib,
manifestoo-core,
pythonOlder,
tomli,
}:
buildPythonPackage rec {
pname = "hatch-odoo";
version = "0.1";
format = "pyproject";
src = fetchFromGitHub {
owner = "acsone";
repo = pname;
rev = version;
sha256 = "sha256-+KM3tpeQ4e53bVhUeWUSfyuIzPRvWkjZi4S/gH4UHVY=";
};
buildInputs = [hatch-vcs];
propagatedBuildInputs =
[
hatchling
manifestoo-core
]
++ lib.optionals (pythonOlder "3.11") [
tomli
];
meta = with lib; {
description = "A hatch plugin to develop and package Odoo projects";
homepage = "https://github.com/acsone/hatch-odoo";
license = licenses.mit;
maintainers = with maintainers; [yajo];
};
}

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "buildkit";
version = "0.14.0";
version = "0.14.1";
src = fetchFromGitHub {
owner = "moby";
repo = "buildkit";
rev = "v${version}";
hash = "sha256-41e/S3TzDAJuvopd5JFMKvdDOmHwnwF+4wrdOvifyoU=";
hash = "sha256-I0r9ovydRmGdg5EB+b69Iv2BuvVy82Ydz40UWmStumc=";
};
vendorHash = null;

View File

@ -1,88 +0,0 @@
{ bison
, cacert
, fetchFromGitHub
, flex
, php
, lib, stdenv
, installShellFiles
, which
, python3
}:
# Make a custom wrapper. If `wrapProgram` is used, arcanist thinks .arc-wrapped is being
# invoked and complains about it being an unknown toolset. We could use `makeWrapper`, but
# then wed need to still craft a script that does the `php libexec/arcanist/bin/...` dance
# anyway... So just do everything at once.
let makeArcWrapper = toolset: ''
cat << WRAPPER > $out/bin/${toolset}
#!$shell -e
export PATH='${php}/bin:${which}/bin'\''${PATH:+':'}\$PATH
exec ${php}/bin/php $out/libexec/arcanist/bin/${toolset} "\$@"
WRAPPER
chmod +x $out/bin/${toolset}
'';
in
stdenv.mkDerivation {
pname = "arcanist";
version = "20230530";
src = fetchFromGitHub {
owner = "phacility";
repo = "arcanist";
rev = "e50d1bc4eabac9c37e3220e9f3fb8e37ae20b957";
hash = "sha256-u+HRsaCuAAyLrEihrZtLrdZ6NTVjPshieJATK3t5Fo4=";
};
patches = [
./dont-require-python3-in-path.patch
./shellcomplete-strlen-null.patch
];
buildInputs = [ php python3 ];
nativeBuildInputs = [ bison flex installShellFiles ];
postPatch = lib.optionalString stdenv.isAarch64 ''
substituteInPlace support/xhpast/Makefile \
--replace "-minline-all-stringops" ""
'';
buildPhase = ''
runHook preBuild
make cleanall -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES
make xhpast -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/libexec
make install -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES
make cleanall -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES
cp -R . $out/libexec/arcanist
ln -sf ${cacert}/etc/ssl/certs/ca-bundle.crt $out/libexec/arcanist/resources/ssl/default.pem
${makeArcWrapper "arc"}
${makeArcWrapper "phage"}
$out/bin/arc shell-complete --generate --
installShellCompletion --cmd arc --bash $out/libexec/arcanist/support/shell/rules/bash-rules.sh
installShellCompletion --cmd phage --bash $out/libexec/arcanist/support/shell/rules/bash-rules.sh
runHook postInstall
'';
doInstallCheck = true;
installCheckPhase = ''
$out/bin/arc help diff -- > /dev/null
$out/bin/phage help alias -- > /dev/null
'';
meta = {
description = "Command line interface to Phabricator";
homepage = "https://www.phacility.com/";
license = lib.licenses.asl20;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.thoughtpolice ];
};
}

View File

@ -1,26 +0,0 @@
Don't require python3 in PATH
Once packaged, the arcanoid.py script has an absolute path shebang to
python3, so there is no need to also require python3 in PATH.
This prevents leaking in a python3 in PATH in the environment which arc
runs linters etc.
Author: bjorn.forsman@gmail.com
diff -uNr arcanist.orig/src/workflow/ArcanistAnoidWorkflow.php arcanist.new/src/workflow/ArcanistAnoidWorkflow.php
--- arcanist.orig/src/workflow/ArcanistAnoidWorkflow.php 2022-03-31 13:23:30.865095192 +0200
+++ arcanist.new/src/workflow/ArcanistAnoidWorkflow.php 2022-04-01 12:19:15.644159639 +0200
@@ -24,13 +24,6 @@
}
public function runWorkflow() {
- if (!Filesystem::binaryExists('python3')) {
- throw new PhutilArgumentUsageException(
- pht(
- 'The "arc anoid" workflow requires "python3" to be available '.
- 'in your $PATH.'));
- }
-
$support_dir = phutil_get_library_root('arcanist');
$support_dir = dirname($support_dir);
$support_dir = $support_dir.'/support/';

View File

@ -1,13 +0,0 @@
diff --git a/src/toolset/workflow/ArcanistShellCompleteWorkflow.php b/src/toolset/workflow/ArcanistShellCompleteWorkflow.php
index 9c2fcf9a..307231c8 100644
--- a/src/toolset/workflow/ArcanistShellCompleteWorkflow.php
+++ b/src/toolset/workflow/ArcanistShellCompleteWorkflow.php
@@ -92,7 +92,7 @@ EOTEXT
$argv = $this->getArgument('argv');
$is_generate = $this->getArgument('generate');
- $is_shell = (bool)strlen($this->getArgument('shell'));
+ $is_shell = phutil_nonempty_string($this->getArgument('shell'));
$is_current = $this->getArgument('current');
if ($argv) {

View File

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "rain";
version = "1.10.0";
version = "1.11.0";
src = fetchFromGitHub {
owner = "aws-cloudformation";
repo = pname;
rev = "v${version}";
sha256 = "sha256-2+bbTHblACG9yLBgdQ4P6PHXF06tLeVpsnuKCju8fV0=";
sha256 = "sha256-2W/Ytdnzb0+EAPsuN6LXX0eLQMOu3qetJKYvKzgB0jM=";
};
vendorHash = "sha256-YDY9Acp8bi0Pvjdjn1hTzChCVs5E1yximIrgyd7J/7w=";
vendorHash = "sha256-Hpggkx707IX5ZUBuynQukCShk0pp12YEJYOF3eEN+5I=";
subPackages = [ "cmd/rain" ];

View File

@ -12,7 +12,7 @@
}:
stdenvNoCC.mkDerivation rec {
version = "1.1.14";
version = "1.1.15";
pname = "bun";
src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
@ -51,19 +51,19 @@ stdenvNoCC.mkDerivation rec {
sources = {
"aarch64-darwin" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip";
hash = "sha256-JKUAmUW/Lh78RUZBOk1cXLpMrhxskXW6BO+WcYanWFs=";
hash = "sha256-T6V3B54rpdNmF60lX137Pau80+E/21aSl6LCa+6GHq4=";
};
"aarch64-linux" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip";
hash = "sha256-kBkzOLG8O4OvjwKHiDiYFEvAe3QtDJDdoGKvMzSY5wA=";
hash = "sha256-ekWcoZxGsq1AtBLflzzhVQ2lVPwQt61Y86MVHtFJsUQ=";
};
"x86_64-darwin" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64.zip";
hash = "sha256-zDngJ0zTRCQqufNmGRjwzi+77K4TpP6C/2lVqA4yEI0=";
hash = "sha256-o1NWjuWTwIQamLG10UU7LawZ9jB8RDuLWJKbCCEIdeU=";
};
"x86_64-linux" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip";
hash = "sha256-LCfBxZMR+DI9HDvk3ZCJGFPtev+4U9AcxY/qDYbpOuA=";
hash = "sha256-PLGR7TEdy3sQ3S9rKWe8z8gjrmb8STyYPzbRPaJYSPI=";
};
};
updateScript = writeShellScript "update-bun" ''

View File

@ -52,7 +52,11 @@
"version": "1.20.5-22"
},
"1.20.6": {
"hash": "sha256-r9CmEycnEE4PpBHbzhaLamt3PykQSO0J+uXt6fIqV1k=",
"version": "1.20.6-137"
"hash": "sha256-JMWN40FTFg87RmxwyUr87Js9KyCmaBhj6Dnfe3vblZQ=",
"version": "1.20.6-147"
},
"1.21": {
"hash": "sha256-LaQyYAlZ2GQKzT3GlOKr1RUhu0XQpILuqPcDHdczqcU=",
"version": "1.21-15"
}
}

View File

@ -2,9 +2,19 @@
mkKdeDerivation,
qtdeclarative,
qtsvg,
fetchpatch,
}:
mkKdeDerivation {
pname = "ksvg";
patches = [
# Backport patch for SVG rendering glitches with fractional scale
# FIXME: remove in 6.4
(fetchpatch {
url = "https://invent.kde.org/frameworks/ksvg/-/commit/74f9f9cbd226407f8cde08c5cd5a711444e2775d.patch";
hash = "sha256-i4Wcvo0CkpN2qdlTesnzUyd0mzG1VKbycP5Pd1rHPVg=";
})
];
extraBuildInputs = [qtdeclarative qtsvg];
}

View File

@ -11,6 +11,7 @@
shared-mime-info,
libv4l,
frei0r,
fetchpatch,
}:
mkKdeDerivation {
pname = "kdenlive";
@ -23,6 +24,13 @@ mkKdeDerivation {
ffmpeg = ffmpeg-full;
}
)
# Backport fix for crash after 5 minutes
# FIXME: remove in next release
(fetchpatch {
url = "https://invent.kde.org/multimedia/kdenlive/-/commit/8be0e826471332bb739344ebe1859298c46e9e0f.patch";
hash = "sha256-5hLePH5NlO4Lx8lg9kjBPI4jTmP666RGplaVCmS/9TA=";
})
];
extraBuildInputs = [

View File

@ -3,7 +3,6 @@
makeScopeWithSplicing',
generateSplicesForMkScope,
callPackage,
crossLibcStdenv,
attributePathToSplice ? [ "freebsd" ],
branch ? "release/14.0.0",
}:
@ -24,41 +23,30 @@ let
Branches can be selected by overriding the `branch` attribute on the freebsd package set.
'';
# `./package-set.nix` should never know the name of the package set we
# are constructing; just this function is allowed to know that. This
# is why we:
#
# - do the splicing for cross compilation here
#
# - construct the *anonymized* `buildFreebsd` attribute to be passed
# to `./package-set.nix`.
callFreeBSDWithAttrs =
extraArgs:
let
# we do not include the branch in the splice here because the branch
# parameter to this file will only ever take on one value - more values
# are provided through overrides.
otherSplices = generateSplicesForMkScope attributePathToSplice;
in
makeScopeWithSplicing' {
inherit otherSplices;
f =
self:
{
inherit branch;
}
// callPackage ./package-set.nix (
{
sourceData = versions.${self.branch} or (throw (badBranchError self.branch));
versionData = self.sourceData.version;
buildFreebsd = otherSplices.selfBuildHost;
patchesRoot = ./patches + "/${self.versionData.revision}";
}
// extraArgs
) self;
};
# we do not include the branch in the splice here because the branch
# parameter to this file will only ever take on one value - more values
# are provided through overrides.
otherSplices = generateSplicesForMkScope attributePathToSplice;
in
{
freebsd = callFreeBSDWithAttrs { };
freebsdCross = callFreeBSDWithAttrs { stdenv = crossLibcStdenv; };
# `./package-set.nix` should never know the name of the package set we
# are constructing; just this function is allowed to know that. This
# is why we:
#
# - do the splicing for cross compilation here
#
# - construct the *anonymized* `buildFreebsd` attribute to be passed
# to `./package-set.nix`.
makeScopeWithSplicing' {
inherit otherSplices;
f =
self:
{
inherit branch;
}
// callPackage ./package-set.nix ({
sourceData = versions.${self.branch} or (throw (badBranchError self.branch));
versionData = self.sourceData.version;
buildFreebsd = otherSplices.selfBuildHost;
patchesRoot = ./patches + "/${self.versionData.revision}";
}) self;
}

View File

@ -2,7 +2,7 @@
lib,
stdenv,
stdenvNoCC,
stdenvNoLibs,
stdenvNoLibc,
overrideCC,
buildPackages,
versionData,
@ -28,7 +28,7 @@ lib.makeOverridable (
if attrs.noCC or false then
stdenvNoCC
else if attrs.noLibc or false then
stdenvNoLibs
stdenvNoLibc
else if attrs.noLibcxx or false then
overrideCC stdenv buildPackages.llvmPackages.clangNoLibcxx
else
@ -58,12 +58,9 @@ lib.makeOverridable (
HOST_SH = stdenv'.shell;
# Since STRIP below is the flag
STRIPBIN = "${stdenv.cc.bintools.targetPrefix}strip";
makeFlags = [
"STRIP=-s" # flag to install, not command
] ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "MK_WERROR=no";
] ++ lib.optional (!stdenv'.hostPlatform.isFreeBSD) "MK_WERROR=no";
# amd64 not x86_64 for this on unlike NetBSD
MACHINE_ARCH = freebsd-lib.mkBsdArch stdenv';
@ -91,6 +88,9 @@ lib.makeOverridable (
// lib.optionalAttrs stdenv'.hasCC {
# TODO should CC wrapper set this?
CPP = "${stdenv'.cc.targetPrefix}cpp";
# Since STRIP in `makeFlags` has to be a flag, not the binary itself
STRIPBIN = "${stdenv'.cc.bintools.targetPrefix}strip";
}
// lib.optionalAttrs stdenv'.isDarwin { MKRELRO = "no"; }
// lib.optionalAttrs (stdenv'.cc.isClang or false) {

View File

@ -1,5 +1,4 @@
{
stdenv,
lib,
stdenvNoCC,
makeScopeWithSplicing',
@ -21,7 +20,9 @@ makeScopeWithSplicing' {
defaultMakeFlags = [
"MKSOFTFLOAT=${
if stdenv.hostPlatform.gcc.float or (stdenv.hostPlatform.parsed.abi.float or "hard") == "soft" then
if
stdenvNoCC.hostPlatform.gcc.float or (stdenvNoCC.hostPlatform.parsed.abi.float or "hard") == "soft"
then
"yes"
else
"no"
@ -36,7 +37,6 @@ makeScopeWithSplicing' {
# because of the splices.
mkDerivation = self.callPackage ./pkgs/mkDerivation.nix {
inherit stdenv stdenvNoCC;
inherit (buildPackages.netbsd)
netbsdSetupHook
makeMinimal
@ -129,7 +129,7 @@ makeScopeWithSplicing' {
libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { };
csu = self.callPackage ./pkgs/csu.nix {
inherit (self) headers sys ld_elf_so;
inherit (self) headers sys-headers ld_elf_so;
inherit (buildPackages.netbsd)
netbsdSetupHook
makeMinimal

View File

@ -16,11 +16,12 @@
statHook,
rsync,
headers,
sys,
sys-headers,
ld_elf_so,
}:
mkDerivation {
noLibc = true;
path = "lib/csu";
meta.platforms = lib.platforms.netbsd;
nativeBuildInputs = [
@ -41,7 +42,7 @@ mkDerivation {
];
buildInputs = [ headers ];
extraPaths = [
sys.path
sys-headers.path
ld_elf_so.path
];
}

View File

@ -15,6 +15,7 @@
}:
mkDerivation {
noLibc = true;
path = "include";
nativeBuildInputs = [
bsdSetupHook

View File

@ -6,6 +6,7 @@
}:
mkDerivation {
noLibc = true;
path = "libexec/ld.elf_so";
meta.platforms = lib.platforms.netbsd;
LIBC_PIC = "${libc}/lib/libc_pic.a";

View File

@ -24,6 +24,7 @@
}:
mkDerivation {
noLibc = true;
path = "lib/libc";
USE_FORT = "yes";
MKPROFILE = "no";
@ -94,5 +95,8 @@ mkDerivation {
make -C $BSDSRCDIR/lib/libcrypt $makeFlags
make -C $BSDSRCDIR/lib/libcrypt $makeFlags install
'';
inherit (librt) postPatch;
postPatch = ''
sed -i 's,/usr\(/include/sys/syscall.h\),${headers}\1,g' \
$BSDSRCDIR/lib/{libc,librt}/sys/Makefile.inc
'';
}

View File

@ -9,8 +9,5 @@ mkDerivation {
path = "lib/librt";
meta.platforms = lib.platforms.netbsd;
extraPaths = [ libc.path ] ++ libc.extraPaths;
postPatch = ''
sed -i 's,/usr\(/include/sys/syscall.h\),${headers}\1,g' \
$BSDSRCDIR/lib/{libc,librt}/sys/Makefile.inc
'';
inherit (libc) postPatch;
}

View File

@ -2,7 +2,7 @@
lib,
stdenv,
stdenvNoCC,
crossLibcStdenv,
stdenvNoLibc,
runCommand,
rsync,
source,
@ -23,7 +23,13 @@
lib.makeOverridable (
attrs:
let
stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv;
stdenv' =
if attrs.noCC or false then
stdenvNoCC
else if attrs.noLibc or false then
stdenvNoLibc
else
stdenv;
in
stdenv'.mkDerivation (
rec {

View File

@ -1,16 +1,17 @@
{
stdenv,
lib,
stdenvNoCC,
makeScopeWithSplicing',
generateSplicesForMkScope,
pkgs,
buildPackages,
netbsd,
}:
makeScopeWithSplicing' {
let
otherSplices = generateSplicesForMkScope "openbsd";
buildOpenbsd = otherSplices.selfBuildHost;
in
makeScopeWithSplicing' {
inherit otherSplices;
f = (
self:
lib.packagesFromDirectoryRecursive {
@ -19,8 +20,8 @@ makeScopeWithSplicing' {
}
// {
libc = self.callPackage ./pkgs/libc/package.nix {
inherit (self) csu include lorder;
inherit (buildPackages.openbsd) makeMinimal;
inherit (self) csu include;
inherit (buildOpenbsd) makeMinimal;
inherit (buildPackages.netbsd)
install
gencat
@ -30,16 +31,16 @@ makeScopeWithSplicing' {
};
makeMinimal = buildPackages.netbsd.makeMinimal.override { inherit (self) make-rules; };
mkDerivation = self.callPackage ./pkgs/mkDerivation.nix {
inherit stdenv;
inherit (buildPackages.netbsd) install;
inherit (buildPackages.buildPackages) rsync;
};
include = self.callPackage ./pkgs/include/package.nix {
inherit (buildPackages.openbsd) makeMinimal;
inherit (buildOpenbsd) makeMinimal;
inherit (buildPackages.netbsd) install rpcgen mtree;
};
csu = self.callPackage ./pkgs/csu.nix {
inherit (self) include;
inherit (buildPackages.openbsd) makeMinimal;
inherit (buildOpenbsd) makeMinimal;
inherit (buildPackages.netbsd) install;
};
make-rules = self.callPackage ./pkgs/make-rules/package.nix { };

View File

@ -9,6 +9,7 @@
}:
mkDerivation {
noLibc = true;
path = "lib/csu";
nativeBuildInputs = [
bsdSetupHook

View File

@ -1,6 +1,6 @@
{
lib,
stdenv,
stdenvNoLibc,
mkDerivation,
bsdSetupHook,
openbsdSetupHook,
@ -10,7 +10,6 @@
byacc,
gencat,
rpcgen,
lorder,
csu,
include,
ctags,
@ -19,7 +18,8 @@
fetchpatch,
}:
mkDerivation rec {
mkDerivation {
noLibc = true;
pname = "libc";
path = "lib/libc";
extraPaths = [
@ -53,7 +53,6 @@ mkDerivation rec {
gencat
rpcgen
ctags
lorder
tsort
];
@ -69,7 +68,9 @@ mkDerivation rec {
# Suppress lld >= 16 undefined version errors
# https://github.com/freebsd/freebsd-src/commit/2ba84b4bcdd6012e8cfbf8a0d060a4438623a638
env.NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.linker == "lld") "--undefined-version";
env.NIX_LDFLAGS = lib.optionalString (
stdenvNoLibc.hostPlatform.linker == "lld"
) "--undefined-version";
makeFlags = [
"STRIP=-s" # flag to install, not command

View File

@ -8,6 +8,7 @@
}:
mkDerivation {
noCC = true;
path = "usr.bin/lorder";
nativeBuildInputs = [
bsdSetupHook

View File

@ -2,7 +2,6 @@
fetchpatch,
lib,
mkDerivation,
stdenv,
}:
mkDerivation {

View File

@ -2,6 +2,7 @@
lib,
stdenv,
stdenvNoCC,
stdenvNoLibc,
runCommand,
rsync,
source,
@ -14,7 +15,13 @@
lib.makeOverridable (
attrs:
let
stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv;
stdenv' =
if attrs.noCC or false then
stdenvNoCC
else if attrs.noLibc or false then
stdenvNoLibc
else
stdenv;
in
stdenv'.mkDerivation (
rec {
@ -43,9 +50,6 @@ lib.makeOverridable (
HOST_SH = stdenv'.shell;
# Since STRIP below is the flag
STRIPBIN = "${stdenv.cc.bintools.targetPrefix}strip";
makeFlags = [
"STRIP=-s" # flag to install, not command
"-B"
@ -81,6 +85,9 @@ lib.makeOverridable (
// lib.optionalAttrs stdenv'.hasCC {
# TODO should CC wrapper set this?
CPP = "${stdenv'.cc.targetPrefix}cpp";
# Since STRIP in `makeFlags` has to be a flag, not the binary itself
STRIPBIN = "${stdenv'.cc.bintools.targetPrefix}strip";
}
// lib.optionalAttrs (attrs.headersOnly or false) {
installPhase = "includesPhase";

View File

@ -1,5 +1,5 @@
{ lib, stdenv, buildPackages
, newScope, overrideCC, crossLibcStdenv, libcCross
, newScope, overrideCC, stdenvNoLibc, libcCross
}:
lib.makeScope newScope (self: with self; {
@ -14,11 +14,11 @@ lib.makeScope newScope (self: with self; {
mingw_runtime = mingwrt;
mingw_w64 = callPackage ./mingw-w64 {
stdenv = crossLibcStdenv;
stdenv = stdenvNoLibc;
};
# FIXME untested with llvmPackages_16 was using llvmPackages_8
crossThreadsStdenv = overrideCC crossLibcStdenv
crossThreadsStdenv = overrideCC stdenvNoLibc
(if stdenv.hostPlatform.useLLVM or false
then buildPackages.llvmPackages.clangNoLibcxx
else buildPackages.gccWithoutTargetLibc.override (old: {

View File

@ -3,18 +3,12 @@
, windows
, fetchurl
, autoreconfHook
, mingw_w64_headers
}:
let
version = "11.0.1";
in stdenv.mkDerivation {
stdenv.mkDerivation {
pname = "mingw-w64";
inherit version;
src = fetchurl {
url = "mirror://sourceforge/mingw-w64/mingw-w64-v${version}.tar.bz2";
hash = "sha256-P2a84Gnui+10OaGhPafLkaXmfqYXDyExesf1eUYl7hA=";
};
inherit (mingw_w64_headers) version src meta;
outputs = [ "out" "dev" ];
@ -30,8 +24,4 @@ in stdenv.mkDerivation {
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ windows.mingw_w64_headers ];
hardeningDisable = [ "stackprotector" "fortify" ];
meta = {
platforms = lib.platforms.windows;
};
}

View File

@ -1,11 +1,19 @@
{ stdenvNoCC, mingw_w64 }:
{ lib, stdenvNoCC, fetchurl }:
stdenvNoCC.mkDerivation {
name = "${mingw_w64.name}-headers";
inherit (mingw_w64) src meta;
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "mingw_w64-headers";
version = "11.0.1";
src = fetchurl {
url = "mirror://sourceforge/mingw-w64/mingw-w64-v${finalAttrs.version}.tar.bz2";
hash = "sha256-P2a84Gnui+10OaGhPafLkaXmfqYXDyExesf1eUYl7hA=";
};
preConfigure = ''
cd mingw-w64-headers
'';
}
meta = {
platforms = lib.platforms.windows;
};
})

View File

@ -1,8 +1,8 @@
{ stdenv, mingw_w64 }:
{ stdenv, mingw_w64_headers }:
stdenv.mkDerivation {
name = "${mingw_w64.name}-pthreads";
inherit (mingw_w64) src meta;
pname = "mingw_w64-pthreads";
inherit (mingw_w64_headers) version src meta;
configureFlags = [
# Rustc require 'libpthread.a' when targeting 'x86_64-pc-windows-gnu'.

View File

@ -29,7 +29,7 @@ let
in
stdenv.mkDerivation rec {
pname = "powershell";
version = "7.4.2";
version = "7.4.3";
src = passthru.sources.${stdenv.hostPlatform.system}
or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
@ -84,19 +84,19 @@ stdenv.mkDerivation rec {
sources = {
aarch64-darwin = fetchurl {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-arm64.tar.gz";
hash = "sha256-Gg1wXIw/x/s0dgCkycZ4fC4eK+zIoduHr8nHvBOPFm4=";
hash = "sha256-n1A17psyDWY/BtwvmQn3SjYqhX/C5xZJnq83aA3mUJk=";
};
aarch64-linux = fetchurl {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-arm64.tar.gz";
hash = "sha256-AGAhaUqeDOliRX0jGJ48uIrgMIY7IhkH+PuJHflJeus=";
hash = "sha256-TuSjvi2aJz2jtwm4CRP99M4dhxzerTCdyOOI6FC8CN0=";
};
x86_64-darwin = fetchurl {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-x64.tar.gz";
hash = "sha256-jH4XY/XjYljkVV4DlOq+f8lwWDcFGA7yaVFKgGUVz+I=";
hash = "sha256-bMOVJ8TT8Rh79rD+vSJP/gxjNHXQE39qASvLAc9P4D8=";
};
x86_64-linux = fetchurl {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-x64.tar.gz";
hash = "sha256-NmBdw3l53lry4QeDv3DArYFQUh6B5tfJMiA267iX5/4=";
hash = "sha256-XPzCKK/T/85TbsRUGrr+l8Ypr81tyFyaIHEolLv2Wts=";
};
};
tests.version = testers.testVersion {

View File

@ -22,8 +22,13 @@ stdenv.mkDerivation rec {
meta = {
description = "Additional completion definitions for zsh";
homepage = "https://github.com/zsh-users/zsh-completions";
license = lib.licenses.free;
license = with lib.licenses; [
asl20
bsd3
isc
mit
zsh
];
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.olejorgenb ];
};

View File

@ -32,7 +32,11 @@ rec {
# Override the compiler in stdenv for specific packages.
overrideCC = stdenv: cc: stdenv.override { allowedRequisites = null; cc = cc; };
overrideCC = stdenv: cc: stdenv.override {
allowedRequisites = null;
cc = cc;
hasCC = cc != null;
};
# Add some arbitrary packages to buildInputs for specific packages.

View File

@ -41,25 +41,43 @@ in lib.init bootStages ++ [
if crossSystem.isStatic
then buildPackages.stdenvAdapters.makeStatic
else lib.id;
stdenvNoCC = adaptStdenv (buildPackages.stdenv.override (old: rec {
buildPlatform = localSystem;
hostPlatform = crossSystem;
targetPlatform = crossSystem;
# Prior overrides are surely not valid as packages built with this run on
# a different platform, and so are disabled.
overrides = _: _: {};
extraBuildInputs = [ ]; # Old ones run on wrong platform
allowedRequisites = null;
cc = null;
hasCC = false;
extraNativeBuildInputs = old.extraNativeBuildInputs
++ lib.optionals
(hostPlatform.isLinux && !buildPlatform.isLinux)
[ buildPackages.patchelf ]
++ lib.optional
(let f = p: !p.isx86 || builtins.elem p.libc [ "musl" "wasilibc" "relibc" ] || p.isiOS || p.isGenode;
in f hostPlatform && !(f buildPlatform) )
buildPackages.updateAutotoolsGnuConfigScriptsHook
;
}));
in {
inherit config;
overlays = overlays ++ crossOverlays;
selfBuild = false;
inherit stdenvNoCC;
stdenv = let
baseStdenv = adaptStdenv (buildPackages.stdenv.override (old: rec {
buildPlatform = localSystem;
hostPlatform = crossSystem;
targetPlatform = crossSystem;
# Prior overrides are surely not valid as packages built with this run on
# a different platform, and so are disabled.
overrides = _: _: {};
inherit (stdenvNoCC) hostPlatform targetPlatform;
baseStdenv = stdenvNoCC.override {
extraBuildInputs = [ ] # Old ones run on wrong platform
++ lib.optionals hostPlatform.isDarwin [ buildPackages.targetPackages.darwin.apple_sdk.frameworks.CoreFoundation ]
;
allowedRequisites = null;
hasCC = !targetPlatform.isGhcjs;
hasCC = !stdenvNoCC.targetPlatform.isGhcjs;
cc = if crossSystem.useiOSPrebuilt or false
then buildPackages.darwin.iosSdkPkgs.clang
@ -77,16 +95,7 @@ in lib.init bootStages ++ [
then buildPackages.llvmPackages.clang
else buildPackages.gcc;
extraNativeBuildInputs = old.extraNativeBuildInputs
++ lib.optionals
(hostPlatform.isLinux && !buildPlatform.isLinux)
[ buildPackages.patchelf ]
++ lib.optional
(let f = p: !p.isx86 || builtins.elem p.libc [ "musl" "wasilibc" "relibc" ] || p.isiOS || p.isGenode;
in f hostPlatform && !(f buildPlatform) )
buildPackages.updateAutotoolsGnuConfigScriptsHook
;
}));
};
in if config ? replaceCrossStdenv then config.replaceCrossStdenv { inherit buildPackages baseStdenv; } else baseStdenv;
})

View File

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "ghostunnel";
version = "1.7.3";
version = "1.8.0";
src = fetchFromGitHub {
owner = "ghostunnel";
repo = "ghostunnel";
rev = "v${version}";
hash = "sha256-6yGAXJOyXNj0xf+1vKxVcU6w3VMpSLh+6PC+yKzFbrs=";
hash = "sha256-TYicljKrKBWRKThJlMpMgmMBwesuGw4mC59Dm62PpKI=";
};
vendorHash = null;

View File

@ -1,63 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, fftw ? null
, gettext
, libintl
, ncurses
, openssl
}:
stdenv.mkDerivation rec {
pname = "httping";
version = "2.9";
src = fetchFromGitHub {
owner = "folkertvanheusden";
repo = "HTTPing";
rev = "v${version}";
hash = "sha256-aExTXXtW03UKMuMjTMx1k/MUpcRMh1PdSPkDGH+Od70=";
};
patches = [
# Pull upstream fix for missing <unistd.h>
# https://github.com/folkertvanheusden/HTTPing/pull/8
(fetchpatch {
name = "add-unistd.patch";
url = "https://github.com/folkertvanheusden/HTTPing/commit/aad3c275686344fe9a235faeac4ee3832f3aa8d5.patch";
hash = "sha256-bz3AMQTSfSTwUyf9WbkAFWVmFo06ei+Qd55x+RRDREY=";
})
];
nativeBuildInputs = [
gettext
];
buildInputs = [
fftw
libintl
ncurses
openssl
];
makeFlags = [
"DESTDIR=$(out)"
"PREFIX="
];
meta = with lib; {
homepage = "https://vanheusden.com/httping";
description = "ping with HTTP requests";
longDescription = ''
Give httping an url, and it'll show you how long it takes to connect,
send a request and retrieve the reply (only the headers). Be aware that
the transmission across the network also takes time! So it measures the
latency of the webserver + network. It supports IPv6.
'';
license = licenses.agpl3Only;
maintainers = [];
platforms = platforms.linux ++ platforms.darwin;
mainProgram = "httping";
};
}

View File

@ -1,7 +1,7 @@
{ lib, fetchFromGitHub }:
let
version = "3.14.71";
version = "3.14.79";
in
fetchFromGitHub {
name = "stevenblack-blocklist-${version}";
@ -9,7 +9,7 @@ fetchFromGitHub {
owner = "StevenBlack";
repo = "hosts";
rev = version;
hash = "sha256-33aDL+nJ+BOwOOSfiaAX3r8BdDM2rWCaeiz55nUXrd8=";
hash = "sha256-MfQGu+Y4/A0GKIu9d//U+yiP0fN/7cWhEo2dut4UvcE=";
meta = with lib; {
description = "Unified hosts file with base extensions";
@ -18,6 +18,7 @@ fetchFromGitHub {
maintainers = with maintainers; [
moni
Guanran928
frontear
];
};
}

View File

@ -82,6 +82,7 @@ mapAliases ({
apacheAnt_1_9 = throw "Ant 1.9 has been removed since it's not used in nixpkgs anymore"; # Added 2023-11-12
antimicroX = antimicrox; # Added 2021-10-31
appthreat-depscan = dep-scan; # Added 2024-04-10
arcanist = throw "arcanist was removed as phabricator is not supported and does not accept fixes"; # Added 2024-06-07
arcanPackages = throw "arcanPackages was removed and its sub-attributes were promoted to top-level"; # Added 2023-11-26
archiveopteryx = throw "archiveopteryx depended on an unsupported version of OpenSSL and was unmaintained"; # Added 2024-01-03
ardour_6 = throw "ardour_6 has been removed in favor of newer versions"; # Added 2023-10-13
@ -97,6 +98,7 @@ mapAliases ({
auditBlasHook = throw "'auditBlasHook' has been removed since it never worked"; # Added 2024-04-02
authy = throw "'authy' has been removed since it reached end of life"; # Added 2024-04-19
avldrums-lv2 = x42-avldrums; # Added 2020-03-29
avrlibcCross = avrlibc; # Added 2024-06-18
awesome-4-0 = awesome; # Added 2022-05-05
aws-env = throw "aws-env has been removed as the upstream project was unmaintained"; # Added 2024-06-11
@ -197,6 +199,7 @@ mapAliases ({
cope = throw "'cope' has been removed, as it is broken in nixpkgs since it was added, and fixing it is not trivial"; # Added 2024-04-12
cpp-ipfs-api = cpp-ipfs-http-client; # Project has been renamed. Added 2022-05-15
crispyDoom = crispy-doom; # Added 2023-05-01
crossLibcStdenv = stdenvNoLibc; # Added 2024-06-18
cryptowatch-desktop = throw "Cryptowatch Desktop was sunset on September 30th 2023 and has been removed from nixpkgs"; # Added 2023-12-22
clash = throw "'clash' has been removed, upstream gone. Consider using 'mihomo' instead."; # added 2023-11-10
clasp = clingo; # added 2022-12-22
@ -875,6 +878,7 @@ mapAliases ({
mpd_clientlib = libmpdclient; # Added 2021-02-11
mpdevil = plattenalbum; # Added 2024-05-22
mpg321 = throw "'mpg321' has been removed due to it being unmaintained by upstream. Consider using mpg123 instead."; # Added 2024-05-10
msp430NewlibCross = msp430Newlib; # Added 2024-06-18
mumble_git = throw "'mumble_git' has been renamed to/replaced by 'pkgs.mumble'"; # Converted to throw 2023-09-10
murmur_git = throw "'murmur_git' has been renamed to/replaced by 'pkgs.murmur'"; # Converted to throw 2023-09-10
mutt-with-sidebar = mutt; # Added 2022-09-17
@ -908,6 +912,8 @@ mapAliases ({
nagiosPluginsOfficial = monitoring-plugins;
neochat = libsForQt5.kdeGear.neochat; # added 2022-05-10
neoload = throw "'neoload' has been removed as it is broken and unmaintained"; # Added 2024-03-02
newlibCross = newlib; # Added 2024-06-18
newlib-nanoCross = newlib-nano; # Added 2024-06-18
nitrokey-udev-rules = libnitrokey; # Added 2023-03-25
nix-direnv-flakes = nix-direnv;
nix-repl = throw (
@ -1331,6 +1337,8 @@ mapAliases ({
uade123 = uade; # Added 2022-07-30
uberwriter = apostrophe; # Added 2020-04-23
ubootBeagleboneBlack = ubootAmx335xEVM; # Added 2020-01-21
uclibc = uclibc-ng; # Added 2022-06-16
uclibcCross = uclibc-ng; # Added 2022-06-16
ue4 = throw "ue4 has been removed, because the package was broken for years"; # Added 2023-11-22
uhd3_5 = throw "uhd3_5 has been removed, because it was no longer needed"; # Added 2023-10-07
uhhyou.lv2 = throw "'uhhyou.lv2' has been removed, upstream gone"; # Added 2023-06-21
@ -1468,6 +1476,10 @@ mapAliases ({
inherit (stdenv.hostPlatform) system; # Added 2021-10-22
inherit (stdenv) buildPlatform hostPlatform targetPlatform; # Added 2023-01-09
freebsdCross = freebsd; # Added 2024-06-18
netbsdCross = netbsd; # Added 2024-06-18
openbsdCross = openbsd; # Added 2024-06-18
# LLVM packages for (integration) testing that should not be used inside Nixpkgs:
llvmPackages_latest = llvmPackages_18;
llvmPackages_git = recurseIntoAttrs (callPackage ../development/compilers/llvm/git {

View File

@ -31,19 +31,6 @@ with pkgs;
# it's just the plain stdenv.
stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv);
stdenvNoCC = stdenv.override (
{ cc = null; hasCC = false; }
// lib.optionalAttrs (stdenv.hostPlatform.isDarwin && (stdenv.hostPlatform != stdenv.buildPlatform)) {
# TODO: This is a hack to use stdenvNoCC to produce a CF when cross
# compiling. It's not very sound. The cross stdenv has:
# extraBuildInputs = [ targetPackages.darwin.apple_sdks.frameworks.CoreFoundation ]
# and uses stdenvNoCC. In order to make this not infinitely recursive, we
# need to exclude this extraBuildInput.
extraBuildInputs = [];
}
);
mkStdenvNoLibs = stdenv: let
bintools = stdenv.cc.bintools.override {
libc = null;
@ -61,7 +48,7 @@ with pkgs;
};
stdenvNoLibs =
if stdenv.hostPlatform != stdenv.buildPlatform && (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.useLLVM or false)
if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform
then
# We cannot touch binutils or cc themselves, because that will cause
# infinite recursion. So instead, we just choose a libc based on the
@ -74,7 +61,17 @@ with pkgs;
# thing to to create an earlier thing (leading to infinite recursion) and
# we also would still respect the stage arguments choices for these
# things.
overrideCC stdenv buildPackages.llvmPackages.clangNoCompilerRt
(if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false
then overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoCompilerRt
else gccCrossLibcStdenv)
else mkStdenvNoLibs stdenv;
stdenvNoLibc =
if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform
then
(if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false
then overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoLibc
else gccCrossLibcStdenv)
else mkStdenvNoLibs stdenv;
gccStdenvNoLibs = mkStdenvNoLibs gccStdenv;
@ -1751,8 +1748,6 @@ with pkgs;
copier = callPackage ../tools/misc/copier { };
gabutdm = callPackage ../applications/networking/gabutdm { };
gamemode = callPackage ../tools/games/gamemode {
libgamemode32 = pkgsi686Linux.gamemode.lib;
};
@ -3060,8 +3055,6 @@ with pkgs;
lilo = callPackage ../tools/misc/lilo { };
logseq = callPackage ../applications/misc/logseq { };
natls = callPackage ../tools/misc/natls { };
notion-app-enhanced = callPackage ../applications/office/notion-app-enhanced { };
@ -3201,8 +3194,6 @@ with pkgs;
arangodb = callPackage ../servers/nosql/arangodb { };
arcanist = callPackage ../development/tools/misc/arcanist { php = php81; };
arduino = arduino-core.override { withGui = true; };
arduino-ci = callPackage ../development/embedded/arduino/arduino-ci { };
@ -5696,6 +5687,11 @@ with pkgs;
loccount = callPackage ../development/tools/misc/loccount { };
logseq = callPackage ../by-name/lo/logseq/package.nix {
# electron version from: https://github.com/logseq/logseq/blob/d8c6ca264bdf9a6a0f03c46dbf3509210367624a/package.json#L116
electron = electron_28;
};
long-shebang = callPackage ../misc/long-shebang { };
lssecret = callPackage ../misc/lssecret {};
@ -8961,8 +8957,6 @@ with pkgs;
httpie = with python3Packages; toPythonApplication httpie;
httping = callPackage ../tools/networking/httping { };
httplz = callPackage ../tools/networking/httplz { };
httpfs2 = callPackage ../tools/filesystems/httpfs { };
@ -15462,12 +15456,7 @@ with pkgs;
dontStrip = true;
}));
gccCrossLibcStdenv = overrideCC stdenv buildPackages.gccWithoutTargetLibc;
crossLibcStdenv =
if stdenv.hostPlatform.useLLVM or false || stdenv.hostPlatform.isDarwin
then overrideCC stdenv buildPackages.llvmPackages.clangNoLibc
else gccCrossLibcStdenv;
gccCrossLibcStdenv = overrideCC stdenvNoCC buildPackages.gccWithoutTargetLibc;
# The GCC used to build libc for the target platform. Normal gccs will be
# built with, and use, that cross-compiled libc.
@ -17635,9 +17624,8 @@ with pkgs;
h3 = h3_3;
avrlibc = callPackage ../development/misc/avr/libc { };
avrlibcCross = callPackage ../development/misc/avr/libc {
stdenv = crossLibcStdenv;
avrlibc = callPackage ../development/misc/avr/libc {
stdenv = stdenvNoLibc;
};
avr8burnomat = callPackage ../development/misc/avr8-burn-omat { };
@ -17711,10 +17699,7 @@ with pkgs;
msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { };
msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { };
msp430NewlibCross = callPackage ../development/misc/msp430/newlib.nix {
newlib = newlibCross;
};
msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { };
mspds = callPackage ../development/misc/msp430/mspds { };
mspds-bin = callPackage ../development/misc/msp430/mspds/binary.nix { };
@ -20929,14 +20914,14 @@ with pkgs;
};
muslCross = musl.override {
stdenv = crossLibcStdenv;
stdenv = stdenvNoLibc;
};
# These are used when buiding compiler-rt / libgcc, prior to building libc.
preLibcCrossHeaders = let
inherit (stdenv.targetPlatform) libc;
in if stdenv.targetPlatform.isMinGW then targetPackages.windows.mingw_w64_headers or windows.mingw_w64_headers
else if libc == "nblibc" then targetPackages.netbsdCross.headers or netbsdCross.headers
else if libc == "nblibc" then targetPackages.netbsd.headers or netbsd.headers
else if libc == "libSystem" && stdenv.targetPlatform.isAarch64 then targetPackages.darwin.LibsystemCross or darwin.LibsystemCross
else null;
@ -20947,13 +20932,13 @@ with pkgs;
/**/ if name == null then null
else if name == "glibc" then targetPackages.glibcCross or glibcCross
else if name == "bionic" then targetPackages.bionic or bionic
else if name == "uclibc" then targetPackages.uclibcCross or uclibcCross
else if name == "avrlibc" then targetPackages.avrlibcCross or avrlibcCross
else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430NewlibCross or msp430NewlibCross
else if name == "uclibc" then targetPackages.uclibc or uclibc
else if name == "avrlibc" then targetPackages.avrlibc or avrlibc
else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430Newlib or msp430Newlib
else if name == "newlib" && stdenv.targetPlatform.isVc4 then targetPackages.vc4-newlib or vc4-newlib
else if name == "newlib" && stdenv.targetPlatform.isOr1k then targetPackages.or1k-newlib or or1k-newlib
else if name == "newlib" then targetPackages.newlibCross or newlibCross
else if name == "newlib-nano" then targetPackages.newlib-nanoCross or newlib-nanoCross
else if name == "newlib" then targetPackages.newlib or newlib
else if name == "newlib-nano" then targetPackages.newlib-nano or newlib-nano
else if name == "musl" then targetPackages.muslCross or muslCross
else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
else if name == "ucrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
@ -20961,9 +20946,9 @@ with pkgs;
if stdenv.targetPlatform.useiOSPrebuilt
then targetPackages.darwin.iosSdkPkgs.libraries or darwin.iosSdkPkgs.libraries
else targetPackages.darwin.LibsystemCross or (throw "don't yet have a `targetPackages.darwin.LibsystemCross for ${stdenv.targetPlatform.config}`")
else if name == "fblibc" then targetPackages.freebsdCross.libc or freebsdCross.libc
else if name == "oblibc" then targetPackages.openbsdCross.libc or openbsdCross.libc
else if name == "nblibc" then targetPackages.netbsdCross.libc or netbsdCross.libc
else if name == "fblibc" then targetPackages.freebsd.libc or freebsd.libc
else if name == "oblibc" then targetPackages.openbsd.libc or openbsd.libc
else if name == "nblibc" then targetPackages.netbsd.libc or netbsd.libc
else if name == "wasilibc" then targetPackages.wasilibc or wasilibc
else if name == "relibc" then targetPackages.relibc or relibc
else throw "Unknown libc ${name}";
@ -20979,7 +20964,7 @@ with pkgs;
};
wasilibc = callPackage ../development/libraries/wasilibc {
stdenv = crossLibcStdenv;
stdenv = stdenvNoLibc;
};
relibc = callPackage ../development/libraries/relibc { };
@ -27968,14 +27953,6 @@ with pkgs;
buildBarebox
bareboxTools;
uclibc-ng-cross = uclibc-ng.override {
stdenv = crossLibcStdenv;
};
# Aliases
uclibc = uclibc-ng;
uclibcCross = uclibc-ng-cross;
eudev = callPackage ../by-name/eu/eudev/package.nix {
util-linux = util-linuxMinimal;
};
@ -32297,13 +32274,11 @@ with pkgs;
libreoffice-bin = callPackage ../applications/office/libreoffice/darwin { };
libreoffice = hiPrio libreoffice-still;
libreoffice-unwrapped = libreoffice.unwrapped;
libreoffice-qt = hiPrio libreoffice-qt-still;
libreoffice-qt-unwrapped = libreoffice-qt.unwrapped;
libreoffice-unwrapped = libreoffice.unwrapped;
libreoffice-qt-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
unwrapped = libsForQt5.callPackage ../applications/office/libreoffice {
kdeIntegration = true;
@ -32320,6 +32295,9 @@ with pkgs;
});
libreoffice-qt-still-unwrapped = libreoffice-qt-still.unwrapped;
libreoffice-qt6 = hiPrio libreoffice-qt6-still;
libreoffice-qt6-unwrapped = libreoffice-qt6.unwrapped;
libreoffice-qt6-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
kdeIntegration = true;
@ -40601,18 +40579,11 @@ with pkgs;
name = "bsd-setup-hook";
} ../os-specific/bsd/setup-hook.sh;
inherit (callPackage ../os-specific/bsd/freebsd { })
freebsd freebsdCross;
freebsd = callPackage ../os-specific/bsd/freebsd { };
netbsd = callPackage ../os-specific/bsd/netbsd { };
netbsdCross = callPackage ../os-specific/bsd/netbsd {
stdenv = crossLibcStdenv;
};
openbsd = callPackage ../os-specific/bsd/openbsd { };
openbsdCross = callPackage ../os-specific/bsd/openbsd {
stdenv = crossLibcStdenv;
};
powershell = callPackage ../shells/powershell { };
@ -40636,18 +40607,14 @@ with pkgs;
new-session-manager = callPackage ../applications/audio/new-session-manager { };
newlib = callPackage ../development/misc/newlib { };
newlibCross = callPackage ../development/misc/newlib {
stdenv = crossLibcStdenv;
newlib = callPackage ../development/misc/newlib {
stdenv = stdenvNoLibc;
};
newlib-nano = callPackage ../development/misc/newlib {
stdenv = stdenvNoLibc;
nanoizeNewlib = true;
};
newlib-nanoCross = callPackage ../development/misc/newlib {
nanoizeNewlib = true;
stdenv = crossLibcStdenv;
};
omnisharp-roslyn = callPackage ../development/tools/omnisharp-roslyn { };

View File

@ -229,7 +229,7 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghc948 = callPackage ../development/compilers/ghc/9.4.8.fixme.nix {
ghc948 = callPackage ../development/compilers/ghc/9.4.8.nix {
bootPkgs =
# Building with 9.2 is broken due to
# https://gitlab.haskell.org/ghc/ghc/-/issues/21914
@ -568,7 +568,7 @@ in {
buildHaskellPackages = ghc.bootPkgs;
ghc = bh.compiler.ghcjs810;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs-8.x.nix { };
};
# The integer-simple attribute set contains package sets for all the GHC compilers

View File

@ -1514,6 +1514,8 @@ self: super: with self; {
bentoml = callPackage ../development/python-modules/bentoml { };
berkeleydb = callPackage ../development/python-modules/berkeleydb { };
bespon = callPackage ../development/python-modules/bespon { };
betacode = callPackage ../development/python-modules/betacode { };
@ -5343,6 +5345,8 @@ self: super: with self; {
hatch-jupyter-builder = callPackage ../development/python-modules/hatch-jupyter-builder { };
hatch-odoo = callPackage ../development/python-modules/hatch-odoo { };
hatch-vcs = callPackage ../development/python-modules/hatch-vcs { };
hatch-nodejs-version = callPackage ../development/python-modules/hatch-nodejs-version { };

View File

@ -49,6 +49,10 @@ in
, # The standard environment to use for building packages.
stdenv
, # `stdenv` without a C compiler. Passing in this helps avoid infinite
# recursions, and may eventually replace passing in the full stdenv.
stdenvNoCC ? stdenv.override { cc = null; hasCC = false; }
, # This is used because stdenv replacement and the stdenvCross do benefit from
# the overridden configuration provided by the user, as opposed to the normal
# bootstrapping stdenvs.
@ -141,7 +145,7 @@ let
pkgs = self.pkgsHostTarget;
targetPackages = self.pkgsTargetTarget;
inherit stdenv;
inherit stdenv stdenvNoCC;
};
splice = self: super: import ./splice.nix lib self (adjacentPackages != null);