Merge #237233: staging-next 2023-06-11

This commit is contained in:
Vladimír Čunát 2023-06-17 18:53:26 +02:00
commit 6d80b598ef
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
112 changed files with 882 additions and 565 deletions

View file

@ -36,6 +36,8 @@
- `util-linux` is now supported on Darwin and is no longer an alias to `unixtools`. Use the `unixtools.util-linux` package for access to the Apple variants of the utilities.
- The `vlock` program from the `kbd` package has been moved into its own package output and should now be referenced explicitly as `kbd.vlock` or replaced with an alternative such as the standalone `vlock` package or `physlock`.
- `fileSystems.<name>.autoFormat` now uses `systemd-makefs`, which does not accept formatting options. Therefore, `fileSystems.<name>.formatOptions` has been removed.
- `fileSystems.<name>.autoResize` now uses `systemd-growfs` to resize the file system online in stage 2. This means that `f2fs` and `ext2` can no longer be auto resized, while `xfs` and `btrfs` now can be.
@ -46,6 +48,8 @@
- The Cinnamon module now enables XDG desktop integration by default. If you are experiencing collisions related to xdg-desktop-portal-gtk you can safely remove `xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];` from your NixOS configuration.
- `fontconfig` now defaults to using greyscale antialiasing instead of subpixel antialiasing because of a [recommendation from one of the downstreams](https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/337). You can change this value by configuring [](#opt-fonts.fontconfig.subpixel.rgba) accordingly.
- The latest available version of Nextcloud is v27 (available as `pkgs.nextcloud27`). The installation logic is as follows:
- If [`services.nextcloud.package`](#opt-services.nextcloud.package) is specified explicitly, this package will be installed (**recommended**)
- If [`system.stateVersion`](#opt-system.stateVersion) is >=23.11, `pkgs.nextcloud27` will be installed by default.

View file

@ -77,18 +77,6 @@ let
<edit mode="append" name="autohint">
${fcBool cfg.hinting.autohint}
</edit>
<edit mode="append" name="hintstyle">
<const>${cfg.hinting.style}</const>
</edit>
<edit mode="append" name="antialias">
${fcBool cfg.antialias}
</edit>
<edit mode="append" name="rgba">
<const>${cfg.subpixel.rgba}</const>
</edit>
<edit mode="append" name="lcdfilter">
<const>lcd${cfg.subpixel.lcdfilter}</const>
</edit>
</match>
</fontconfig>
@ -177,6 +165,13 @@ let
</fontconfig>
'';
# Replace default linked config with a different variant
replaceDefaultConfig = defaultConfig: newConfig: ''
rm $dst/${defaultConfig}
ln -s ${pkg.out}/share/fontconfig/conf.avail/${newConfig} \
$dst/
'';
# fontconfig configuration package
confPkg = pkgs.runCommand "fontconfig-conf" {
preferLocalBuild = true;
@ -196,6 +191,26 @@ let
ln -s ${pkg.out}/etc/fonts/conf.d/*.conf \
$dst/
${optionalString (!cfg.antialias)
(replaceDefaultConfig "10-yes-antialias.conf"
"10-no-antialias.conf")
}
${optionalString (cfg.hinting.style != "slight")
(replaceDefaultConfig "10-hinting-slight.conf"
"10-hinting-${cfg.hinting.style}.conf")
}
${optionalString (cfg.subpixel.rgba != "none")
(replaceDefaultConfig "10-sub-pixel-none.conf"
"10-sub-pixel-${cfg.subpixel.rgba}.conf")
}
${optionalString (cfg.subpixel.lcdfilter != "default")
(replaceDefaultConfig "11-lcdfilter-default.conf"
"11-lcdfilter-${cfg.subpixel.lcdfilter}.conf")
}
# 00-nixos-cache.conf
ln -s ${cacheConf} $dst/00-nixos-cache.conf
@ -367,17 +382,25 @@ in
};
style = mkOption {
type = types.enum [ "hintnone" "hintslight" "hintmedium" "hintfull" ];
default = "hintslight";
type = types.enum ["none" "slight" "medium" "full"];
default = "slight";
description = lib.mdDoc ''
Hintstyle is the amount of font reshaping done to line up
to the grid.
hintslight will make the font more fuzzy to line up to the grid
but will be better in retaining font shape, while hintfull will
be a crisp font that aligns well to the pixel grid but will lose
a greater amount of font shape.
slight will make the font more fuzzy to line up to the grid but
will be better in retaining font shape, while full will be a
crisp font that aligns well to the pixel grid but will lose a
greater amount of font shape.
'';
apply =
val:
let
from = "fonts.fontconfig.hinting.style";
val' = lib.removePrefix "hint" val;
warning = "The option `${from}` contains a deprecated value `${val}`. Use `${val'}` instead.";
in
lib.warnIf (lib.hasPrefix "hint" val) warning val';
};
};
@ -394,7 +417,7 @@ in
subpixel = {
rgba = mkOption {
default = "rgb";
default = "none";
type = types.enum ["rgb" "bgr" "vrgb" "vbgr" "none"];
description = lib.mdDoc ''
Subpixel order. The overwhelming majority of displays are

View file

@ -39,7 +39,8 @@ with lib;
graphviz = super.graphviz-nox;
gst_all_1 = super.gst_all_1 // {
gst-plugins-bad = super.gst_all_1.gst-plugins-bad.override { guiSupport = false; };
gst-plugins-base = super.gst_all_1.gst-plugins-base.override { enableX11 = false; };
gst-plugins-base = super.gst_all_1.gst-plugins-base.override { enableWayland = false; enableX11 = false; };
gst-plugins-good = super.gst_all_1.gst-plugins-good.override { enableX11 = false; };
};
imagemagick = super.imagemagick.override { libX11Support = false; libXtSupport = false; };
imagemagickBig = super.imagemagickBig.override { libX11Support = false; libXtSupport = false; };

View file

@ -258,7 +258,8 @@ in
'';
};
# See: [Firmware file size bug] in systemd/default.nix
# Some UEFI firmwares fail on large reads. Now that systemd-boot loads initrd
# itself, systems with such firmware won't boot without this fix
uefiLargeFileWorkaround = makeTest {
name = "uefi-large-file-workaround";

View file

@ -141,9 +141,6 @@ let
sphinxHook = null;
sphinx-better-theme = null;
}).overridePythonAttrs dropDocOutput;
hypothesis = super.hypothesis.override {
enableDocumentation = false;
};
pyjwt = (super.pyjwt.override {
sphinxHook = null;
sphinx-rtd-theme = null;

View file

@ -238,6 +238,19 @@ buildStdenv.mkDerivation ({
hash = "sha256-fLUYaJwhrC/wF24HkuWn2PHqz7LlAaIZ1HYjRDB2w9A=";
})
]
++ lib.optional (lib.versionOlder version "109") [
# cherry-pick bindgen change to fix build with clang 16
(fetchpatch {
url = "https://git.alpinelinux.org/aports/plain/community/firefox-esr/bindgen.patch?id=4c4b0c01c808657fffc5b796c56108c57301b28f";
hash = "sha256-lTvgT358M4M2vedZ+A6xSKsBYhSN+McdmEeR9t75MLU=";
})
]
++ lib.optional (lib.versionOlder version "111") [
# cherry-pick mp4parse change fixing build with Rust 1.70+
# original change: https://github.com/mozilla/mp4parse-rust/commit/8b5b652d38e007e736bb442ccd5aa5ed699db100
# vendored to update checksums
./mp4parse-rust-170.patch
]
++ lib.optional (lib.versionOlder version "111") ./env_var_for_system_dir-ff86.patch
++ lib.optional (lib.versionAtLeast version "111") ./env_var_for_system_dir-ff111.patch
++ lib.optional (lib.versionAtLeast version "96") ./no-buildconfig-ffx96.patch

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@ assert sendEmailSupport -> perlSupport;
assert svnSupport -> perlSupport;
let
version = "2.40.1";
version = "2.41.0";
svn = subversionClient.override { perlBindings = perlSupport; };
gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
in
@ -42,7 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchurl {
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
hash = "sha256-SJO4uY7vyf3EsOfKJJ40AAT6p4BKQz0XQp4xHh/vIdI=";
hash = "sha256-50i6/UJM/oCyEsvG8bvMw6R9SGL7HreYiHd1BHhWgEA=";
};
outputs = [ "out" ] ++ lib.optional withManual "doc";

View file

@ -54,7 +54,6 @@
, lua5
, mpeg2dec
, ncurses
, openssl
, perl
, pkg-config
, removeReferencesTo
@ -159,7 +158,6 @@ stdenv.mkDerivation rec {
libXvMC
xcbutilkeysyms
])
++ optional onlyLibVLC openssl # not sure why
++ optional (!stdenv.hostPlatform.isAarch && !onlyLibVLC) live555
++ optional jackSupport libjack2
++ optionals chromecastSupport [ libmicrodns protobuf ]

View file

@ -62,10 +62,6 @@ in stdenv.mkDerivation ({
export CARGO_HOME=$(mktemp -d cargo-home.XXX)
CARGO_CONFIG=$(mktemp cargo-config.XXXX)
# https://blog.rust-lang.org/2023/03/09/Rust-1.68.0.html#cargos-sparse-protocol
# planned to become the default in 1.70
export CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse
if [[ -n "$NIX_CRATES_INDEX" ]]; then
cat >$CARGO_HOME/config.toml <<EOF
[source.crates-io]

View file

@ -30,7 +30,7 @@ let
]));
extraCertificatesBundle = writeText "cacert-extra-certificates-bundle.crt" (lib.concatStringsSep "\n\n" extraCertificateStrings);
srcVersion = "3.89.1";
srcVersion = "3.90";
version = if nssOverride != null then nssOverride.version else srcVersion;
meta = with lib; {
homepage = "https://curl.haxx.se/docs/caextract.html";
@ -45,7 +45,7 @@ let
src = if nssOverride != null then nssOverride.src else fetchurl {
url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings ["."] ["_"] version}_RTM/src/nss-${version}.tar.gz";
hash = "sha256-OtrtuecMPF9AYDv2CgHjNhkKbb4Bkp05XxawH+hKAVY=";
hash = "sha256-ms1lNMQdjq0Z/Kb8s//+0vnwnEN8PXn+5qTuZoqqk7Y=";
};
dontBuild = true;

View file

@ -53,11 +53,7 @@ let majorVersion = "10";
patches = [
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
(fetchurl {
name = "fix-bug-80431.patch";
url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0";
sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g";
})
../fix-bug-80431.patch
../11/fix-struct-redefinition-on-glibc-2.36.patch
../install-info-files-serially.patch
] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch

View file

@ -57,11 +57,7 @@ let majorVersion = "11";
patches = [
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
(fetchurl {
name = "fix-bug-80431.patch";
url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0";
sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g";
})
../fix-bug-80431.patch
./fix-struct-redefinition-on-glibc-2.36.patch
../install-info-files-serially.patch
] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch

View file

@ -67,11 +67,7 @@ let majorVersion = "6";
../use-source-date-epoch.patch ./0001-Fix-build-for-glibc-2.31.patch
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
(fetchurl {
name = "fix-bug-80431.patch";
url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0";
sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g";
})
../fix-bug-80431.patch
../install-info-files-serially.patch
] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
++ optional noSysDirs ../no-sys-dirs.patch

View file

@ -58,11 +58,7 @@ let majorVersion = "7";
./0001-Fix-build-for-glibc-2.31.patch
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
(fetchurl {
name = "fix-bug-80431.patch";
url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0";
sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g";
})
../fix-bug-80431.patch
../9/fix-struct-redefinition-on-glibc-2.36.patch
../install-info-files-serially.patch

View file

@ -48,11 +48,7 @@ let majorVersion = "8";
patches = [
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
(fetchurl {
name = "fix-bug-80431.patch";
url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0";
sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g";
})
../fix-bug-80431.patch
../9/fix-struct-redefinition-on-glibc-2.36.patch
../install-info-files-serially.patch
] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch

View file

@ -58,11 +58,7 @@ let majorVersion = "9";
patches = [
./fix-struct-redefinition-on-glibc-2.36.patch
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
(fetchurl {
name = "fix-bug-80431.patch";
url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0";
sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g";
})
../fix-bug-80431.patch
../install-info-files-serially.patch
] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
++ optional targetPlatform.isNetBSD ../libstdc++-netbsd-ctypes.patch

View file

@ -0,0 +1,92 @@
From de31f5445b12fd9ab9969dc536d821fe6f0edad0 Mon Sep 17 00:00:00 2001
From: Patrick Palka <ppalka@redhat.com>
Date: Mon, 21 Jun 2021 07:54:26 -0400
Subject: [PATCH] c++: conversion to base of vbase in NSDMI [PR80431]
The delayed processing of conversions to a virtual base in an NSDMI
assumes the target base type is a (possibly indirect) virtual base of
the current class, but the target base type could also be a base of a
virtual base, as in the testcase below. Since such a base isn't a part
of CLASSTYPE_VBASECLASSES, we end up miscompiling the testcase due to
the call to build_base_path (with binfo=NULL_TREE) silently returning
error_mark_node. Fix this by using convert_to_base to build the
conversion instead.
PR c++/80431
gcc/cp/ChangeLog:
* tree.c (bot_replace): Use convert_to_base to build the
conversion to the (morally) virtual base.
gcc/testsuite/ChangeLog:
* g++.dg/cpp0x/nsdmi-virtual1a.C: New test.
---
gcc/cp/tree.c | 14 ++++------
gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C | 28 ++++++++++++++++++++
2 files changed, 33 insertions(+), 9 deletions(-)
create mode 100644 gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index fec5afaa2be..297da2b1550 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -3242,15 +3242,11 @@ bot_replace (tree* t, int* /*walk_subtrees*/, void* data_)
else if (TREE_CODE (*t) == CONVERT_EXPR
&& CONVERT_EXPR_VBASE_PATH (*t))
{
- /* In an NSDMI build_base_path defers building conversions to virtual
- bases, and we handle it here. */
- tree basetype = TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (*t)));
- vec<tree, va_gc> *vbases = CLASSTYPE_VBASECLASSES (current_class_type);
- int i; tree binfo;
- FOR_EACH_VEC_SAFE_ELT (vbases, i, binfo)
- if (BINFO_TYPE (binfo) == basetype)
- break;
- *t = build_base_path (PLUS_EXPR, TREE_OPERAND (*t, 0), binfo, true,
+ /* In an NSDMI build_base_path defers building conversions to morally
+ virtual bases, and we handle it here. */
+ tree basetype = TREE_TYPE (*t);
+ *t = convert_to_base (TREE_OPERAND (*t, 0), basetype,
+ /*check_access=*/false, /*nonnull=*/true,
tf_warning_or_error);
}
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C
new file mode 100644
index 00000000000..dc847cc16e5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C
@@ -0,0 +1,28 @@
+// PR c++/80431
+// { dg-do run { target c++11 } }
+
+// A variant of nsdmi-virtual1.C where A is only a morally virtual base of B.
+
+struct A
+{
+ A(): i(42) { }
+ int i;
+ int f() { return i; }
+};
+
+struct D : A { int pad; };
+
+struct B : virtual D
+{
+ int j = i + f();
+ int k = A::i + A::f();
+};
+
+struct C: B { int pad; };
+
+int main()
+{
+ C c;
+ if (c.j != 84 || c.k != 84)
+ __builtin_abort();
+}
--
2.31.1

View file

@ -46,11 +46,11 @@ let
in
stdenv.mkDerivation rec {
pname = "go";
version = "1.20.4";
version = "1.20.5";
src = fetchurl {
url = "https://go.dev/dl/go${version}.src.tar.gz";
hash = "sha256-nzSs4Sh2S3o6SyOLgFhWzBshhDBN+eVpCCWwcQ9CAtY=";
hash = "sha256-mhXBM7os+v55ZS9IFbYufPwmf2jfG5RUxqsqPKi5aog=";
};
strictDeps = true;

View file

@ -1,63 +0,0 @@
# New rust versions should first go to staging.
# Things to check after updating:
# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
# This testing can be also done by other volunteers as part of the pull
# request review, in case platforms cannot be covered.
# 2. The LLVM version used for building should match with rust upstream.
# Check the version number in the src/llvm-project git submodule in:
# https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
# 3. Firefox and Thunderbird should still build on x86_64-linux.
{ stdenv, lib
, buildPackages
, newScope, callPackage
, CoreFoundation, Security, SystemConfiguration
, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
, makeRustPlatform
, llvmPackages_11
, llvmPackages_15, llvm_15
} @ args:
import ./default.nix {
rustcVersion = "1.69.0";
rustcSha256 = "sha256-+wWXGGetbMq703ICefWpS5n2ECSSMYe1a7XEVfo89g8=";
llvmSharedForBuild = pkgsBuildBuild.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
llvmSharedForHost = pkgsBuildHost.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
llvmSharedForTarget = pkgsBuildTarget.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
llvmBootstrapForDarwin = llvmPackages_11;
# For use at runtime
llvmShared = llvm_15.override { enableSharedLibraries = true; };
# Expose llvmPackages used for rustc from rustc via passthru for LTO in Firefox
llvmPackages = llvmPackages_15;
# Note: the version MUST be one version prior to the version we're
# building
bootstrapVersion = "1.68.2";
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
bootstrapHashes = {
i686-unknown-linux-gnu = "a85e1aa0831e8bd31dc8ba3e042b6dea69b4d45fd5d1111bf6fd2cc9d58dd619";
x86_64-unknown-linux-gnu = "df7c7466ef35556e855c0d35af7ff08e133040400452eb3427c53202b6731926";
x86_64-unknown-linux-musl = "bd02cbdedb4b7f2169a68dc8410e8436fab3734a3a30cab81ab21661d70c6ddd";
arm-unknown-linux-gnueabihf = "a5847f9bcbb1fb4183656b1b01e191d8e48c7bc8346ec6831318b697a2f305c6";
armv7-unknown-linux-gnueabihf = "f87e4b063b5f916b4a5057e5f544f819cee9ab5da3fe1a977cddb2170e7ba0d7";
aarch64-unknown-linux-gnu = "b24d0df852490d80791a228f18c2b75f24b1e6437e6e745f85364edab245f7fa";
aarch64-unknown-linux-musl = "e6615e72aaa3e3c9c42c35139ab253a9b738a4eab719e3e306e25026c1aa93e5";
x86_64-apple-darwin = "632540d3d83758cb048dc45fcfbc0b29f6f170161a3051be22b0a2962a566fb9";
aarch64-apple-darwin = "ab4c6add94686a0392953c588c2b61d4c03f51e855232d161dc492f286e34202";
powerpc64le-unknown-linux-gnu = "cf95658277d71bb8ae3a0fbc53099cc1397ed40e0953c026f41cde4a9619efca";
riscv64gc-unknown-linux-gnu = "befcf2d53e35ae3fe0d609d1e056bdc814bd36ce54028b8d6b8b9e38c0afcaa5";
mips64el-unknown-linux-gnuabi64 = "ee85bbfdc2fb831f067fda19881e6427c8c86571ebff16c1bd219d850969ef0a";
};
selectRustPackage = pkgs: pkgs.rust_1_69;
rustcPatches = [ ];
}
(builtins.removeAttrs args [ "pkgsBuildHost" "llvmPackages_11" "llvmPackages_15" "llvm_15"])

View file

@ -0,0 +1,63 @@
# New rust versions should first go to staging.
# Things to check after updating:
# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
# This testing can be also done by other volunteers as part of the pull
# request review, in case platforms cannot be covered.
# 2. The LLVM version used for building should match with rust upstream.
# Check the version number in the src/llvm-project git submodule in:
# https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
# 3. Firefox and Thunderbird should still build on x86_64-linux.
{ stdenv, lib
, buildPackages
, newScope, callPackage
, CoreFoundation, Security, SystemConfiguration
, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
, makeRustPlatform
, llvmPackages_11
, llvmPackages_16, llvm_16
} @ args:
import ./default.nix {
rustcVersion = "1.70.0";
rustcSha256 = "sha256-sr+uAAt6UEDk7Eu8UKCfIVSBkMt1cLDtdzWDaEE70nw=";
llvmSharedForBuild = pkgsBuildBuild.llvmPackages_16.libllvm.override { enableSharedLibraries = true; };
llvmSharedForHost = pkgsBuildHost.llvmPackages_16.libllvm.override { enableSharedLibraries = true; };
llvmSharedForTarget = pkgsBuildTarget.llvmPackages_16.libllvm.override { enableSharedLibraries = true; };
llvmBootstrapForDarwin = llvmPackages_11;
# For use at runtime
llvmShared = llvm_16.override { enableSharedLibraries = true; };
# Expose llvmPackages used for rustc from rustc via passthru for LTO in Firefox
llvmPackages = llvmPackages_16;
# Note: the version MUST be one version prior to the version we're
# building
bootstrapVersion = "1.69.0";
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
bootstrapHashes = {
i686-unknown-linux-gnu = "08b2b4f58c0861f40ae159c39cc12f6d41b6858e04a43c6c0aeb36707e2971d0";
x86_64-unknown-linux-gnu = "2ca4a306047c0b8b4029c382910fcbc895badc29680e0332c9df990fd1c70d4f";
x86_64-unknown-linux-musl = "071cb04819b15d8801584a1395b28d0472ce99c0e716296e3c0bb4e6318cf171";
arm-unknown-linux-gnueabihf = "64c82735b4e5606af61be0d01317da436a9590b969e503cdbd19e24636e15845";
armv7-unknown-linux-gnueabihf = "a509f02d910041c97847e2ccc4ee908c761b7dc5b3c4715922d2b1c573a09675";
aarch64-unknown-linux-gnu = "88af5aa7a40c8f1b40416a1f27de8ffbe09c155d933f69d3e109c0ccee92353b";
aarch64-unknown-linux-musl = "76aaf3e4fd7b552feb2d70752c43896a960a2a7c940002f58a5c3f03d2b3c862";
x86_64-apple-darwin = "9818dab2c3726d63dfbfde12c9273e62e484ef6d6f6e05a6431a3e089c335454";
aarch64-apple-darwin = "36228cac303298243fb84235db87a5ecf2af49db28585a82af091caefd598677";
powerpc64le-unknown-linux-gnu = "8ef68b77971c079dbe23b54a2cfb52da012873d96399c424bc223635306e9a58";
riscv64gc-unknown-linux-gnu = "e1976bf7d0edb7e7789a1ad7ff8086fdb5306a932650fa8182a5d009883fa6c5";
mips64el-unknown-linux-gnuabi64 = "c4bf3043451d6122a3845db825cbe35b5ca61a44659a00004f6cca1299ad9d72";
};
selectRustPackage = pkgs: pkgs.rust_1_70;
rustcPatches = [ ];
}
(builtins.removeAttrs args [ "pkgsBuildHost" "llvmPackages_11" "llvmPackages_16" "llvm_16"])

View file

@ -20,11 +20,15 @@ rustPlatform.buildRustPackage rec {
buildInputs = lib.optionals stdenv.isDarwin
[ libiconv CoreServices Security ];
# test broken with rust 1.69:
# * https://github.com/evcxr/evcxr/issues/294
# * https://github.com/NixOS/nixpkgs/issues/229524
checkFlags = [
# test broken with rust 1.69:
# * https://github.com/evcxr/evcxr/issues/294
# * https://github.com/NixOS/nixpkgs/issues/229524
"--skip=check_for_errors"
# test broken with rust 1.70
# * https://github.com/evcxr/evcxr/issues/295
"--skip=partially_inferred_variable_type"
];
postInstall = let

View file

@ -20,20 +20,20 @@
sourceVersion = {
major = "3";
minor = "10";
patch = "11";
patch = "12";
suffix = "";
};
hash = "sha256-PDvDBIMDchyQSgPrgya2Mekh8RzDvimIRWpC8RXa8Ew=";
hash = "sha256-r7dL8ZEw56R9EDEsj154TyTgUnmB6raOIFRs+4ZYMLg=";
};
python311 = {
sourceVersion = {
major = "3";
minor = "11";
patch = "3";
patch = "4";
suffix = "";
};
hash = "sha256-il25nJYafs8nx1lWGJyWAslodR8R2+riuQDb/xwIW14=";
hash = "sha256-Lw5AnfKrV6qfxMvd+5dq9E5OVb9vYZ7ua8XCKXJkp/Y=";
};
};

View file

@ -25,6 +25,14 @@ stdenv.mkDerivation rec {
url = "https://github.com/abseil/abseil-cpp/commit/5bfa70c75e621c5d5ec095c8c4c0c050dcb2957e.patch";
sha256 = "0nhjxqfxpi2pkfinnqvd5m4npf9l1kg39mjx9l3087ajhadaywl5";
})
# Bacport gcc-13 fix:
# https://github.com/abseil/abseil-cpp/pull/1187
(fetchpatch {
name = "gcc-13.patch";
url = "https://github.com/abseil/abseil-cpp/commit/36a4b073f1e7e02ed7d1ac140767e36f82f09b7c.patch";
hash = "sha256-aA7mwGEtv/cQINcawjkukmCvfNuqwUeDFssSiNKPdgg=";
})
] ++ lib.optionals stdenv.hostPlatform.isLoongArch64 [
# https://github.com/abseil/abseil-cpp/pull/1110
(fetchpatch {

View file

@ -23,13 +23,13 @@
stdenv.mkDerivation rec {
pname = "at-spi2-core";
version = "2.48.0";
version = "2.48.3";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "kFpbbxeQto7oA7/6n1+rTOtZH7T64LL4xhLFTx1OijA=";
sha256 = "NzFt9DypmJzlOdVM9CmnaMKLs4oLNJUL6t0EIYJ+31U=";
};
nativeBuildInputs = [

View file

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "cmocka";
majorVersion = "1.1";
version = "${majorVersion}.6";
version = "${majorVersion}.7";
src = fetchurl {
url = "https://cmocka.org/files/${majorVersion}/cmocka-${version}.tar.xz";
sha256 = "0xksffx1w3pzm18ynf28cx8scrhylcbz43s1rgkkdqnyil1q6cjv";
sha256 = "sha256-gQVw6wuNZIBDMfgrKf9Hx5DOnNaxY+mNR6SAcEfsrYI=";
};
patches = [

View file

@ -19,11 +19,11 @@
stdenv.mkDerivation rec {
pname = "dbus";
version = "1.14.6";
version = "1.14.8";
src = fetchurl {
url = "https://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.xz";
sha256 = "sha256-/SvfG7idw2WkZTG/9jFTbyKw0cbVzixcXlm1UmWz1ms=";
sha256 = "sha256-pr1brFzxnww8WUva4lZaCVaWmApoOg7zfLYhLgk73jU=";
};
patches = lib.optional stdenv.isSunOS ./implement-getgrouplist.patch;
@ -115,6 +115,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Simple interprocess messaging system";
homepage = "http://www.freedesktop.org/wiki/Software/dbus/";
changelog = "https://gitlab.freedesktop.org/dbus/dbus/-/blob/dbus-${version}/NEWS";
license = licenses.gpl2Plus; # most is also under AFL-2.1
maintainers = teams.freedesktop.members ++ (with maintainers; [ ]);
platforms = platforms.unix;

View file

@ -1,6 +1,7 @@
{ stdenv
, lib
, fetchurl
, fetchpatch2
, pkg-config
, python3
, freetype
@ -14,15 +15,25 @@
stdenv.mkDerivation rec {
pname = "fontconfig";
version = "2.14.0";
version = "2.14.2";
outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
src = fetchurl {
url = "https://www.freedesktop.org/software/fontconfig/release/${pname}-${version}.tar.xz";
sha256 = "3L64TJx0u/2xM9U1/hx77cnyIhqNrzkUuYTETFIOm6w=";
hash = "sha256-26aVtXvOFQI9LO7e+CBiwrkl5R9dTMSu9zbPE/YKRos=";
};
patches = [
# Provide 11-lcdfilter-none.conf for NixOS module
# https://gitlab.freedesktop.org/fontconfig/fontconfig/-/merge_requests/268
(fetchpatch2 {
name = "add-optional-11-lcdfilter-none-configuration.patch";
url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/c2666a6d9a6ed18b1bfcef8176e25f62993e24db.patch";
hash = "sha256-UBzkxy3uxFO+g0aQtPnBZv7OncgQdinwzNwWS8ngjcE=";
})
];
nativeBuildInputs = [
autoreconfHook
gperf

View file

@ -56,11 +56,11 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "glib";
version = "2.76.2";
version = "2.76.3";
src = fetchurl {
url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
sha256 = "JPOEeFex2GdM2wOJo27ewPE8ZmzTznJ+zTQOudqKyp4=";
sha256 = "wL5ETkA9fDGE0fOU+J8LZEcQtekzG1T6TotQN4E60yo=";
};
patches = lib.optionals stdenv.isDarwin [

View file

@ -125,6 +125,8 @@ stdenv.mkDerivation rec {
"-DGOOGLE_CLOUD_CPP_ENABLE=${lib.concatStringsSep ";" apis}"
];
requiredSystemFeatures = [ "big-parallel" ];
meta = with lib; {
license = with licenses; [ asl20 ];
homepage = "https://github.com/googleapis/google-cloud-cpp";

View file

@ -34,13 +34,10 @@
, qt6Support ? false, qt6
, raspiCameraSupport ? false, libraspberrypi
, enableJack ? true, libjack2
, libXdamage
, libXext
, libXfixes
, enableX11 ? stdenv.isLinux, xorg
, ncurses
, wayland
, wayland-protocols
, xorg
, libgudev
, wavpack
, glib
@ -105,15 +102,14 @@ stdenv.mkDerivation rec {
mpg123
twolame
libintl
libXdamage
libXext
libXfixes
ncurses
xorg.libXfixes
xorg.libXdamage
wavpack
] ++ lib.optionals raspiCameraSupport [
libraspberrypi
] ++ lib.optionals enableX11 [
xorg.libXext
xorg.libXfixes
xorg.libXdamage
] ++ lib.optionals gtkSupport [
# for gtksink
gtk3
@ -149,6 +145,8 @@ stdenv.mkDerivation rec {
"-Dqt6=disabled"
] ++ lib.optionals (!gtkSupport) [
"-Dgtk3=disabled"
] ++ lib.optionals (!enableX11) [
"-Dximagesrc=disabled" # Linux-only
] ++ lib.optionals (!enableJack) [
"-Djack=disabled"
] ++ lib.optionals (!stdenv.isLinux) [
@ -158,7 +156,6 @@ stdenv.mkDerivation rec {
"-Dpulse=disabled" # TODO check if we can keep this enabled
"-Dv4l2-gudev=disabled" # Linux-only
"-Dv4l2=disabled" # Linux-only
"-Dximagesrc=disabled" # Linux-only
] ++ lib.optionals (!raspiCameraSupport) [
"-Drpicamsrc=disabled"
];

View file

@ -63,7 +63,7 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "gtk+3";
version = "3.24.37";
version = "3.24.38";
outputs = [ "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
outputBin = "dev";
@ -77,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit (finalAttrs) version;
in fetchurl {
url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz";
sha256 = "sha256-Z0XwtMBTeUFR/Q8OJHSwd8zP9fg+ndG/PTn+n+X7f1c=";
sha256 = "sha256-zhHezwGLJb3YUFVEpPhyQoVOyIvgVNmt5fOiBETdjuc=";
};
patches = [

View file

@ -21,6 +21,8 @@ stdenv.mkDerivation rec {
# Fix warnings from preprocessor instructions.
# https://github.com/NixOS/nixpkgs/issues/59929
./preprocessor-warnings.patch
# `configure` defines a test `main` with an implicit `int` return, which clang 16 disallows.
./fix-configure-main.patch
];
enableParallelBuilding = true;
@ -55,7 +57,13 @@ stdenv.mkDerivation rec {
# cross-compiling, but `autoreconfHook` brings in `makeWrapper` which
# doesn't work with the bootstrapTools bash, so can only do this for
# cross builds when `stdenv.shell` is a newer bash.
++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) autoreconfHook;
++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform
# The provided `configure` script fails on clang 16 because some tests have a `main`
# returning an implicit `int`, which clang 16 treats as an error. Running `autoreconf` fixes
# the test and allows `configure` to detect clang properly.
# This is done only for clang on Darwin because the Darwin stdenv bootstrap does not use
# libelf, so should be safe because it will always be run with a compatible version of bash.
|| (stdenv.cc.isClang && stdenv.isDarwin)) autoreconfHook;
meta = {
description = "ELF object file access library";

View file

@ -0,0 +1,12 @@
diff -ur a/configure.in b/configure.in
--- a/configure.in 2008-05-23 04:17:56.000000000 -0400
+++ b/configure.in 2023-06-01 19:16:04.801921924 -0400
@@ -282,7 +282,7 @@
#define memmove(d,s,n) bcopy((s),(d),(n))
#endif
extern int strcmp();
-main() {
+int main() {
char buf[] = "0123456789";
memmove(buf + 1, buf, 9);
if (strcmp(buf, "0012345678")) exit(1);

View file

@ -1,26 +1,67 @@
{ lib, stdenv, fetchurl
, fixedPoint ? false, withCustomModes ? true }:
{ lib
, stdenv
, fetchpatch
, fetchurl
, meson
, python3
, ninja
, fixedPoint ? false
, withCustomModes ? true
# tests
, ffmpeg-headless
}:
stdenv.mkDerivation rec {
pname = "libopus";
version = "1.3.1";
version = "1.4";
src = fetchurl {
url = "mirror://mozilla/opus/opus-${version}.tar.gz";
sha256 = "17gz8kxs4i7icsc1gj713gadiapyklynlwqlf0ai98dj4lg8xdb5";
url = "https://downloads.xiph.org/releases/opus/opus-${version}.tar.gz";
sha256 = "sha256-ybMrQlO+WuY9H/Fu6ga5S18PKVG3oCrO71jjo85JxR8=";
};
patches = [
./fix-pkg-config-paths.patch
# Fix meson build for arm64. Remove with next release
# https://gitlab.xiph.org/xiph/opus/-/merge_requests/59
(fetchpatch {
url = "https://gitlab.xiph.org/xiph/opus/-/commit/20c032d27c59d65b19b8ffbb2608e5282fe817eb.patch";
hash = "sha256-2pX+0ay5PTyHL2plameBX2L1Q4aTx7V7RGiTdhNIuE4=";
})
];
postPatch = ''
patchShebangs meson/
'';
outputs = [ "out" "dev" ];
configureFlags = lib.optional fixedPoint "--enable-fixed-point"
++ lib.optional withCustomModes "--enable-custom-modes";
nativeBuildInputs = [
meson
python3
ninja
];
mesonFlags = [
(lib.mesonBool "fixed-point" fixedPoint)
(lib.mesonBool "custom-modes" withCustomModes)
(lib.mesonEnable "asm" false)
(lib.mesonEnable "docs" false)
];
doCheck = !stdenv.isi686 && !stdenv.isAarch32; # test_unit_LPC_inv_pred_gain fails
passthru.tests = {
inherit ffmpeg-headless;
};
meta = with lib; {
description = "Open, royalty-free, highly versatile audio codec";
license = lib.licenses.bsd3;
homepage = "https://www.opus-codec.org/";
homepage = "https://opus-codec.org/";
changelog = "https://gitlab.xiph.org/xiph/opus/-/releases/v${version}";
license = licenses.bsd3;
platforms = platforms.all;
maintainers = [ ];
};
}

View file

@ -0,0 +1,13 @@
--- i/meson.build
+++ w/meson.build
@@ -591,8 +591,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', join_paths(get_option('prefix')))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', '${prefix}' / get_option('libdir'))
+pkgconf.set('includedir', '${prefix}' / get_option('includedir'))
pkgconf.set('VERSION', opus_version)
pkgconf.set('PC_BUILD', pc_build)
pkgconf.set('LIBM', libm.found() ? '-lm' : '')

View file

@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "devdoc" ];
buildInputs = [ openssl zlib ]
propagatedBuildInputs = [ openssl ]; # see Libs: in libssh2.pc
buildInputs = [ zlib ]
++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64;
meta = with lib; {

View file

@ -13,7 +13,7 @@
stdenv.mkDerivation rec {
pname = "libwacom";
version = "2.6.0";
version = "2.7.0";
outputs = [ "out" "dev" ];
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
owner = "linuxwacom";
repo = "libwacom";
rev = "libwacom-${version}";
sha256 = "sha256-9zqW6zPrFcxv/yAAtFgdVavKVMXeDBoMP3E/XriUcT0=";
sha256 = "sha256-NNfhZMshM5U/EfJHuNgkDe5NEkEGKtJ56vSpXyGf/xw=";
};
postPatch = ''

View file

@ -7,8 +7,8 @@ let
libwacom-surface = fetchFromGitHub {
owner = "linux-surface";
repo = "libwacom-surface";
rev = "v2.6.0-1";
hash = "sha256-4UOO9LMyCJd4LkqU0uva/0Xc44fIVdIQi27tJOtNEFk=";
rev = "v2.7.0-1";
hash = "sha256-LgJ8YFQQN05kyd6kxBakIIiGgZ9icW27xKK3Dz6TwLs=";
};
in libwacom.overrideAttrs (old: {
pname = "libwacom-surface";

View file

@ -8,11 +8,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "libxcrypt";
version = "4.4.33";
version = "4.4.35";
src = fetchurl {
url = "https://github.com/besser82/libxcrypt/releases/download/v${finalAttrs.version}/libxcrypt-${finalAttrs.version}.tar.xz";
hash = "sha256-6HrPnGUsVzpHE9VYIVn5jzBdVu1fdUzmT1fUGU1rOm8=";
hash = "sha256-qMk1UFtV8d8NF/i/1ZRox8Zwmh0xgxsPjj4EWrj9RV0=";
};
outputs = [
@ -46,7 +46,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
};
enabledCryptSchemeIds = [
# https://github.com/besser82/libxcrypt/blob/v4.4.33/lib/hashes.conf
# https://github.com/besser82/libxcrypt/blob/v4.4.35/lib/hashes.conf
"y" # yescrypt
"gy" # gost_yescrypt
"7" # scrypt
@ -58,6 +58,7 @@ stdenv.mkDerivation (finalAttrs: {
};
meta = with lib; {
changelog = "https://github.com/besser82/libxcrypt/blob/v${finalAttrs.version}/NEWS";
description = "Extended crypt library for descrypt, md5crypt, bcrypt, and others";
homepage = "https://github.com/besser82/libxcrypt/";
platforms = platforms.all;

View file

@ -85,8 +85,8 @@
*/
let
version = "23.1.1";
hash = "sha256-omeQMe1bc7KcTwQqxk2W+DsM/khYYX3jLi78GWxlOkA=";
version = "23.1.2";
hash = "sha256-YLHzrbFWGDDBWL88aFCJQ2dPudafOEw8colpQ4WrXH4=";
# Release calendar: https://www.mesa3d.org/release-calendar.html
# Release frequency: https://www.mesa3d.org/releasing.html#schedule

View file

@ -1,10 +1,10 @@
{ callPackage, fetchurl }:
callPackage ./generic.nix rec {
version = "3.9";
version = "3.9.1";
src = fetchurl {
url = "mirror://gnu/nettle/nettle-${version}.tar.gz";
hash = "sha256-Duet9acgFhC7f+Csu3ybO+g75EkE3TXrvNllzYlr/qo=";
hash = "sha256-zP7/mBsMpxu9b7ywVPQHxg/7ZEOJpb6A1nFtW1UMbOM=";
};
}

View file

@ -1,6 +1,7 @@
{ stdenv
, lib
, fetchFromGitHub
, fetchpatch
, cmake
}:
let
@ -21,6 +22,24 @@ in stdenv.mkDerivation (finalAttrs: {
hash = "sha256-SUdhIV7tjtacf5DkoWk9cnkfyMlrkg8ZU7XnPZd22Tw=";
};
patches = [
# Backport fix for gcc-13:
# https://github.com/nlohmann/json/pull/3895
(fetchpatch {
name = "gcc-13-rebind.patch";
url = "https://github.com/nlohmann/json/commit/a5b09d50b786638ed9deb09ef13860a3cb64eb6b.patch";
hash = "sha256-Jbi0VwZP+ZHTGbpIwgKCVc66gOmwjkT5iOUe85eIzM0=";
})
# Backport fix for gcc-13:
# https://github.com/nlohmann/json/pull/3950
(fetchpatch {
name = "gcc-13-eq-op.patch";
url = "https://github.com/nlohmann/json/commit/a49829bd984c0282be18fcec070df0c31bf77dd5.patch";
hash = "sha256-D+cRtdN6AXr4z3/y9Ui7Zqp3e/y10tp+DOL80ZtPz5E=";
})
];
nativeBuildInputs = [ cmake ];
cmakeFlags = [

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "ocl-icd";
version = "2.3.1";
version = "2.3.2";
src = fetchFromGitHub {
owner = "OCL-dev";
repo = "ocl-icd";
rev = "v${version}";
sha256 = "1km2rqc9pw6xxkqp77a22pxfsb5kgw95w9zd15l5jgvyjb6rqqad";
sha256 = "sha256-nx9Zz5DpS29g1HRIwPAQi6i+d7Blxd53WQ7Sb1a3FHg=";
};
nativeBuildInputs = [

View file

@ -28,13 +28,35 @@ stdenv.mkDerivation rec {
extraPrefix = "OpenEXR/IlmImf/";
sha256 = "1wa2jn6sa0n3phaqvklnlbgk1bz60y756ad4jk4d757pzpnannsy";
})
(fetchpatch {
name = "CVE-2021-3933.patch";
url = "https://github.com/AcademySoftwareFoundation/openexr/commit/5db6f7aee79e3e75e8c3780b18b28699614dd08e.patch";
stripLen = 4;
extraPrefix = "OpenEXR/IlmImf/";
sha256 = "sha256-DrpldpNgN5pWKzIuuPIrynGX3EpP8YhJlu+lLfNFGxQ=";
})
# Backport gcc-13 fix:
# https://github.com/AcademySoftwareFoundation/openexr/pull/1264
./gcc-13.patch
];
# tests are determined to use /var/tmp on unix
postPatch = ''
find . -name tmpDir.h | while read -r f ; do
substituteInPlace $f --replace '/var/tmp' "$TMPDIR"
done
'';
cmakeFlags = lib.optional stdenv.hostPlatform.isStatic "-DCMAKE_SKIP_RPATH=ON";
nativeBuildInputs = [ cmake ];
propagatedBuildInputs = [ ilmbase zlib ];
# https://github.com/AcademySoftwareFoundation/openexr/issues/1400
# https://github.com/AcademySoftwareFoundation/openexr/issues/1281
doCheck = !stdenv.isAarch32 && !stdenv.isi686;
meta = with lib; {
description = "A high dynamic-range (HDR) image file format";
homepage = "https://www.openexr.com/";

View file

@ -0,0 +1,33 @@
https://github.com/AcademySoftwareFoundation/openexr/pull/1264
https://github.com/AcademySoftwareFoundation/openexr/commit/d0088a3c6943a9a53fc24e29885414d082d531fe.patch
--- a/OpenEXR/IlmImf/ImfDwaCompressor.cpp
+++ b/OpenEXR/IlmImf/ImfDwaCompressor.cpp
@@ -159,6 +159,7 @@
#include <limits>
#include <cstddef>
+#include <cstdint>
// Windows specific addition to prevent the indirect import of the redefined min/max macros
--- a/OpenEXR/IlmImf/ImfHuf.cpp
+++ b/OpenEXR/IlmImf/ImfHuf.cpp
@@ -53,6 +53,7 @@
#include <cstring>
#include <cassert>
#include <algorithm>
+#include <cstdint>
using namespace std;
--- a/OpenEXR/IlmImf/ImfMisc.cpp
+++ b/OpenEXR/IlmImf/ImfMisc.cpp
@@ -52,6 +52,7 @@
#include <ImfConvert.h>
#include <ImfPartType.h>
#include <ImfTileDescription.h>
+#include <cstdint>
#include "ImfNamespace.h"
OPENEXR_IMF_INTERNAL_NAMESPACE_SOURCE_ENTER

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "qpdf";
version = "11.3.0";
version = "11.4.0";
src = fetchFromGitHub {
owner = "qpdf";
repo = "qpdf";
rev = "v${version}";
hash = "sha256-UZq973X93E+Ll1IKjfJNPQuQwBFOU3egFGODgXV21x0=";
hash = "sha256-cG8TxgWXZGol7X2eRQNeknMo4L8PoWSMvxOsDVO/Rx4=";
};
nativeBuildInputs = [ cmake perl ];

View file

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "s2n-tls";
version = "1.3.44";
version = "1.3.45";
src = fetchFromGitHub {
owner = "aws";
repo = pname;
rev = "v${version}";
sha256 = "sha256-8YF9PhxTrXQBTUJvTrJZFDVijQecTeZ1ayGuvQRqGEE=";
sha256 = "sha256-ZipZXCwat3H0NoUX9T6XB7/qMRvViB2QrYpgj0U41nU=";
};
nativeBuildInputs = [ cmake ];

View file

@ -23,6 +23,12 @@ stdenv.mkDerivation rec {
buildInputs = [ freetype ];
patches = lib.optionals stdenv.isDarwin [ ./macosx.patch ];
postPatch = ''
# disable broken 'nametabletest' test, fails on gcc-13:
# https://github.com/silnrsi/graphite/pull/74
substituteInPlace tests/CMakeLists.txt \
--replace 'add_subdirectory(nametabletest)' '#add_subdirectory(nametabletest)'
'';
cmakeFlags = lib.optionals static [
"-DBUILD_SHARED_LIBS=OFF"

View file

@ -1,5 +1,13 @@
{ lib, stdenv, fetchFromGitHub, cmake, asciidoc, pkg-config, libsodium
, enableDrafts ? false }:
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, asciidoc
, pkg-config
, libsodium
, enableDrafts ? false
}:
stdenv.mkDerivation rec {
pname = "zeromq";
@ -12,6 +20,16 @@ stdenv.mkDerivation rec {
sha256 = "sha256-epOEyHOswUGVwzz0FLxhow/zISmZHxsIgmpOV8C8bQM=";
};
patches = [
# Backport gcc-13 fix:
# https://github.com/zeromq/libzmq/pull/4480
(fetchpatch {
name = "gcc-13.patch";
url = "https://github.com/zeromq/libzmq/commit/438d5d88392baffa6c2c5e0737d9de19d6686f0d.patch";
hash = "sha256-tSTYSrQzgnfbY/70QhPdOnpEXX05VAYwVYuW8P1LWf0=";
})
];
nativeBuildInputs = [ cmake asciidoc pkg-config ];
buildInputs = [ libsodium ];

View file

@ -4,8 +4,9 @@
, hatchling
, pyflakes
, pytestCheckHook
, pythonOlder
, tomli
}:
buildPythonPackage rec {
pname = "autoflake";
version = "2.0.1";
@ -22,7 +23,8 @@ buildPythonPackage rec {
propagatedBuildInputs = [
pyflakes
];
]
++ lib.optional (pythonOlder "3.11") tomli;
nativeCheckInputs = [
pytestCheckHook

View file

@ -23,8 +23,7 @@ buildPythonPackage rec {
];
nativeCheckInputs = [
# "hypothesis" indirectly depends on chardet to build its documentation.
(hypothesis.override { enableDocumentation = false; })
hypothesis
pytestCheckHook
];

View file

@ -72,8 +72,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
cryptography-vectors
# "hypothesis" indirectly depends on cryptography to build its documentation
(hypothesis.override { enableDocumentation = false; })
hypothesis
iso8601
pretend
py

View file

@ -3,20 +3,21 @@
, fetchPypi
, hatch-vcs
, hatchling
, pytest-mock
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "filelock";
version = "3.9.0";
version = "3.12.0";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-ezGfJDQLUfVaK/ehKsB1WpsD5xgxHaxWeg9Pf6vS9d4=";
hash = "sha256-/AOuQyiMAT0uqDyFlwAbESnbNRqtnFf+JAkyeRa45xg=";
};
nativeBuildInputs = [
@ -25,6 +26,7 @@ buildPythonPackage rec {
];
nativeCheckInputs = [
pytest-mock
pytestCheckHook
];

View file

@ -16,6 +16,13 @@ buildPythonPackage rec {
sha256 = "5a6188fe2666c484a12159c18be97a1977a71d632ef5bb867ef15f54af39cc4e";
};
# With python 3.11.4, invalid IPv6 address does throw ValueError
# https://github.com/gruns/furl/issues/164#issuecomment-1595637359
postPatch = ''
substituteInPlace tests/test_furl.py \
--replace '[0:0:0:0:0:0:0:1:1:1:1:1:1:1:1:9999999999999]' '[2001:db8::9999]'
'';
propagatedBuildInputs = [
orderedmultidict
six

View file

@ -8,21 +8,21 @@
, doCheck ? true
, pytestCheckHook
, pytest-xdist
, python
, sortedcontainers
, stdenv
, pythonOlder
, sphinxHook
, sphinx-rtd-theme
, sphinx-hoverxref
, sphinx-codeautolink
, tzdata
# Used to break internal dependency loop.
, enableDocumentation ? true
}:
buildPythonPackage rec {
pname = "hypothesis";
version = "6.68.2";
outputs = [ "out" ] ++ lib.optional enableDocumentation "doc";
outputs = [ "out" ];
format = "setuptools";
disabled = pythonOlder "3.7";
@ -49,13 +49,6 @@ buildPythonPackage rec {
postUnpack = "sourceRoot=$sourceRoot/hypothesis-python";
nativeBuildInputs = lib.optionals enableDocumentation [
sphinxHook
sphinx-rtd-theme
sphinx-hoverxref
sphinx-codeautolink
];
propagatedBuildInputs = [
attrs
sortedcontainers
@ -67,7 +60,7 @@ buildPythonPackage rec {
pexpect
pytest-xdist
pytestCheckHook
] ++ lib.optionals (isPyPy) [
] ++ lib.optionals isPyPy [
tzdata
];
@ -86,6 +79,30 @@ buildPythonPackage rec {
"hypothesis"
];
passthru = {
doc = stdenv.mkDerivation {
# Forge look and feel of multi-output derivation as best as we can.
#
# Using 'outputs = [ "doc" ];' breaks a lot of assumptions.
name = "${pname}-${version}-doc";
inherit src pname version;
postInstallSphinx = ''
mv $out/share/doc/* $out/share/doc/python$pythonVersion-$pname-$version
'';
nativeBuildInputs = [
sphinxHook
sphinx-rtd-theme
sphinx-hoverxref
sphinx-codeautolink
];
inherit (python) pythonVersion;
inherit meta;
};
};
meta = with lib; {
description = "Library for property based testing";
homepage = "https://github.com/HypothesisWorks/hypothesis";

View file

@ -25,8 +25,7 @@ buildPythonPackage rec {
];
nativeCheckInputs = [
# "hypothesis" indirectly depends on iso8601 to build its documentation
(hypothesis.override { enableDocumentation = false; })
hypothesis
pytestCheckHook
pytz
];

View file

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "markupsafe";
version = "2.1.2";
version = "2.1.3";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -15,7 +15,7 @@ buildPythonPackage rec {
src = fetchPypi {
pname = "MarkupSafe";
inherit version;
hash = "sha256-q8q8jCsmA21i1MdGOBpvfPYKr8xlMZitZ4MGmGsJRQ0=";
hash = "sha256-r1mO0y1q6G8bdHuCeDlYsaSrj2F7Bv5oeVx/Amq73K0=";
};
nativeCheckInputs = [
@ -25,6 +25,7 @@ buildPythonPackage rec {
pythonImportsCheck = [ "markupsafe" ];
meta = with lib; {
changelog = "https://markupsafe.palletsprojects.com/en/${versions.majorMinor version}.x/changes/#version-${replaceStrings [ "." ] [ "-" ] version}";
description = "Implements a XML/HTML/XHTML Markup safe string";
homepage = "https://palletsprojects.com/p/markupsafe/";
license = licenses.bsd3;

View file

@ -76,8 +76,7 @@ in buildPythonPackage rec {
nativeCheckInputs = [
pytest
# "hypothesis" indirectly depends on numpy to build its documentation.
(hypothesis.override { enableDocumentation = false; })
hypothesis
typing-extensions
];

View file

@ -44,8 +44,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
glibcLocales
# hypothesis indirectly depends on pandas to build its documentation
(hypothesis.override { enableDocumentation = false; })
hypothesis
jinja2
pytest-asyncio
pytest-xdist

View file

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "platformdirs";
version = "3.0.0";
version = "3.5.1";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = pname;
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-RiZ26BGqS8nN5qHpUt7LIXSck/cGM8qlet3uL81TyPo=";
hash = "sha256-/qi22jiF+P7XcG/D+dxoOrHk89amdBoGewrTqZZOsoM=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;

View file

@ -18,6 +18,13 @@ buildPythonPackage rec {
hash = "sha256-NHGHvbR2Mp2Y9pXCE9cpWoRtEVL/T+m6y4qVkLjucFM=";
};
patches = [
# https://github.com/PyCQA/pycodestyle/issues/1151
# Applies a modified version of an upstream patch that only applied
# to Python 3.12.
./python-3.11.4-compat.patch
];
# https://github.com/PyCQA/pycodestyle/blob/2.10.0/tox.ini#L13
checkPhase = ''
${python.interpreter} -m pycodestyle --statistics pycodestyle.py

View file

@ -0,0 +1,16 @@
diff --git a/testsuite/test_api.py b/testsuite/test_api.py
index 8dde32ff..38e34acf 100644
--- a/testsuite/test_api.py
+++ b/testsuite/test_api.py
@@ -329,7 +329,10 @@ def test_check_nullbytes(self):
count_errors = pep8style.input_file('stdin', lines=['\x00\n'])
stdout = sys.stdout.getvalue()
- expected = "stdin:1:1: E901 ValueError"
+ if sys.version_info < (3, 11, 4):
+ expected = "stdin:1:1: E901 ValueError"
+ else:
+ expected = "stdin:1:1: E901 SyntaxError: source code string cannot contain null bytes" # noqa: E501
self.assertTrue(stdout.startswith(expected),
msg='Output %r does not start with %r' %
(stdout, expected))

View file

@ -2,6 +2,7 @@
, buildPythonPackage
, pythonOlder
, fetchPypi
, fetchpatch, isPy311
, pytestCheckHook
}:
@ -18,6 +19,14 @@ buildPythonPackage rec {
hash = "sha256-7IsnamtgvYDe/tJa3X5DmIHBnmSFCv2bNGKD1BZf0P0=";
};
patches = lib.optional isPy311 # could be made unconditional on rebuild
(fetchpatch {
name = "tests-py311.patch";
url = "https://github.com/PyCQA/pyflakes/commit/836631f2f73d45baa4021453d89fc9fd6f52be58.diff";
hash = "sha256-xlgql+bN0HsGnTMkwax3ZG/5wrbkUl/kQkjlr3lsgRw=";
})
;
nativeCheckInputs = [
pytestCheckHook
];

View file

@ -40,7 +40,7 @@
buildPythonPackage rec {
pname = "sentry-sdk";
version = "1.25.0";
version = "1.25.1";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -49,7 +49,7 @@ buildPythonPackage rec {
owner = "getsentry";
repo = "sentry-python";
rev = "refs/tags/${version}";
hash = "sha256-aY6oZf6S6jioeL10euxo1ijvzE7FcHQoWjadE21ILA4=";
hash = "sha256-I7lsyMJ6akQvpzXEcUrWfomTX+oFYCX7YiE4cf6KAuE=";
};
propagatedBuildInputs = [

View file

@ -159,8 +159,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
git
glibcLocales
# "hypothesis" indirectly depends on twisted to build its documentation.
(hypothesis.override { enableDocumentation = false; })
hypothesis
pyhamcrest
]
++ passthru.optional-dependencies.conch

View file

@ -2,6 +2,7 @@
, buildPythonPackage
, fetchPypi
, pytestCheckHook
, pythonAtLeast
, pythonOlder
}:
@ -25,8 +26,10 @@ buildPythonPackage rec {
"w3lib"
];
disabledTests = [
"test_add_or_replace_parameter"
disabledTests = lib.optionals (pythonAtLeast "3.11") [
# regressed on Python 3.11.4
# https://github.com/scrapy/w3lib/issues/212
"test_safe_url_string_url"
];
meta = with lib; {

View file

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, pythonAtLeast
, pythonOlder
, idna
@ -22,6 +23,14 @@ buildPythonPackage rec {
hash = "sha256-SdQ0AsbjATrQl4YCv2v1MoU1xI0ZIwS5G5ejxnkLFWI=";
};
patches = [
# https://github.com/aio-libs/yarl/issues/876
(fetchpatch {
url = "https://github.com/aio-libs/yarl/commit/0a94c6e4948e00fff072c0cf367afbf4ac36f906.patch";
hash = "sha256-bqT46OLZLkBef8FQ1L95ITD70mC3+WIkr3+h2ekKrvE=";
})
];
postPatch = ''
sed -i '/^addopts/d' setup.cfg
'';

View file

@ -29,11 +29,11 @@ assert pythonSupport -> python3 != null;
stdenv.mkDerivation rec {
pname = targetPrefix + basename + lib.optionalString hostCpuOnly "-host-cpu-only";
version = "13.1";
version = "13.2";
src = fetchurl {
url = "mirror://gnu/gdb/${basename}-${version}.tar.xz";
hash = "sha256-EVrVwY1ppr4qsViC02XdoqIhHBT0gLNQLG66V24ulaA=";
hash = "sha256-/Vvrt74YM6vbbgI8L0mKNUSYKB350FUj2JFbq+uJPwo=";
};
postPatch = lib.optionalString stdenv.isDarwin ''
@ -48,12 +48,6 @@ stdenv.mkDerivation rec {
patches = [
./debug-info-from-env.patch
# Backport musl fix
(fetchpatch {
url = "https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=2e977d9901393ea1bacbe1896af0929e968bc811";
hash = "sha256-/+UYjiOxrszJy1x8xavs63/ptNZ+ISIAQhG+i86VDpA=";
})
] ++ lib.optionals stdenv.isDarwin [
./darwin-target-match.patch
];

View file

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec {
pname = "maturin";
version = "1.0.0";
version = "1.0.1";
src = fetchFromGitHub {
owner = "PyO3";
repo = "maturin";
rev = "v${version}";
hash = "sha256-Y/eqkA23gzoCmsFeYqZsK52e6s8ElIdKavL4ay9Q0Zs=";
hash = "sha256-iVN6LpikU+TP4P9ZJUVQR/ZNkRHjYLgdDA0aQeWMZfA=";
};
cargoHash = "sha256-fr7HuMfuErYyPhAdwvj+HluW/K4mSHW/kKcdnWOW1i4=";
cargoHash = "sha256-iX4cbZ0PV0/o42f1QKNlAkwHEif2fu+RvhdzH7tWOZE=";
nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];

View file

@ -178,7 +178,7 @@ let
Name: v8
Description: V8 JavaScript Engine
Version: $major.$minor.$patch
Libs: -L$libv8/lib -lv8 -pthread -licui18n
Libs: -L$libv8/lib -lv8 -pthread -licui18n -licuuc
Cflags: -I$libv8/include
EOF
'';

View file

@ -1,6 +1,9 @@
{ stdenv, fetchurl, xar, cpio, pkgs, python3, pbzx, lib, darwin-stubs, print-reexports }:
{ stdenv, fetchurl, libxml2, xar, cpio, pkgs, python3Minimal, pbzx, lib, darwin-stubs, print-reexports }:
let
xarMinimal = xar.override {
libxml2 = libxml2.override { pythonSupport = false; };
};
# sadly needs to be exported because security_tool needs it
sdk = stdenv.mkDerivation rec {
pname = "MacOS_SDK";
@ -16,7 +19,7 @@ let
sha256 = "13xq34sb7383b37hwy076gnhf96prpk1b4087p87xnwswxbrisih";
};
nativeBuildInputs = [ xar cpio python3 pbzx ];
nativeBuildInputs = [ xarMinimal cpio python3Minimal pbzx ];
outputs = [ "out" "dev" "man" ];

View file

@ -1,67 +1,32 @@
{ lib, stdenv, appleDerivation', launchd, bootstrap_cmds, xnu, ppp, IOKit, eap8021x, Security
{ lib, stdenv, appleDerivation', launchd, bootstrap_cmds, xnu, xpc, ppp, IOKit, eap8021x, Security
, headersOnly ? false }:
appleDerivation' stdenv {
meta.broken = stdenv.cc.nativeLibc;
nativeBuildInputs = lib.optionals (!headersOnly) [ bootstrap_cmds ];
buildInputs = lib.optionals (!headersOnly) [ launchd ppp IOKit eap8021x ];
buildInputs = lib.optionals (!headersOnly) [ launchd ppp xpc IOKit eap8021x ];
propagatedBuildInputs = lib.optionals (!headersOnly) [ Security ];
env = lib.optionalAttrs (!headersOnly) {
NIX_CFLAGS_COMPILE = toString [
"-ISystemConfiguration.framework/Headers"
"-I${xnu}/Library/Frameworks/System.framework/Versions/B/PrivateHeaders"
];
};
patchPhase = lib.optionalString (!headersOnly) ''
HACK=$PWD/hack
mkdir $HACK
cp -r ${xnu}/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/net $HACK
substituteInPlace SystemConfiguration.fproj/SCNetworkReachabilityInternal.h \
--replace '#include <xpc/xpc.h>' ""
substituteInPlace SystemConfiguration.fproj/reachability/SCNetworkReachabilityServer_client.c \
--replace '#include <xpc/private.h>' ""
substituteInPlace SystemConfiguration.fproj/SCNetworkReachability.c \
--replace ''$'#define\tHAVE_VPN_STATUS' ""
substituteInPlace SystemConfiguration.fproj/reachability/SCNetworkReachabilityServer_client.c \
--replace '#include <xpc/xpc.h>' '#include "fake_xpc.h"' \
--replace '#include <xpc/private.h>' "" \
# Our neutered CoreFoundation doesn't have this function, but I think we'll live...
substituteInPlace SystemConfiguration.fproj/SCNetworkConnectionPrivate.c \
--replace 'CFPreferencesAppValueIsForced(serviceID, USER_PREFERENCES_APPLICATION_ID)' 'FALSE' \
--replace 'CFPreferencesAppValueIsForced(userPrivate->serviceID, USER_PREFERENCES_APPLICATION_ID)' 'FALSE'
cat >SystemConfiguration.fproj/fake_xpc.h <<EOF
typedef void *xpc_type_t;
typedef void *xpc_object_t;
typedef void *xpc_connection_t;
xpc_type_t xpc_get_type(xpc_object_t object);
xpc_object_t xpc_dictionary_create(const char * const *keys, const xpc_object_t *values, size_t count);
char *xpc_copy_description(xpc_object_t object);
int64_t xpc_dictionary_get_int64(xpc_object_t xdict, const char *key);
uint64_t xpc_dictionary_get_uint64(xpc_object_t xdict, const char *key);
void xpc_connection_set_event_handler(xpc_connection_t connection, void *handler);
extern const struct _xpc_type_s _xpc_type_error;
#define XPC_TYPE_ERROR (&_xpc_type_error)
extern const struct _xpc_type_s _xpc_type_dictionary;
#define XPC_TYPE_DICTIONARY (&_xpc_type_dictionary)
extern const struct _xpc_type_s _xpc_type_array;
#define XPC_TYPE_ARRAY (&_xpc_type_array)
extern const struct _xpc_dictionary_s _xpc_error_connection_interrupted;
#define XPC_ERROR_CONNECTION_INTERRUPTED (&_xpc_error_connection_interrupted)
extern const struct _xpc_dictionary_s _xpc_error_connection_invalid;
#define XPC_ERROR_CONNECTION_INVALID (&_xpc_error_connection_invalid)
extern const char *const _xpc_error_key_description;
#define XPC_ERROR_KEY_DESCRIPTION _xpc_error_key_description
#define XPC_CONNECTION_MACH_SERVICE_PRIVILEGED (1 << 1)
EOF
'';
dontBuild = headersOnly;
@ -177,9 +142,9 @@ appleDerivation' stdenv {
$CC -I. -Ihelper -Iderived -F. -c DHCP.c -o DHCP.o
$CC -I. -Ihelper -Iderived -F. -c moh.c -o moh.o
$CC -I. -Ihelper -Iderived -F. -c DeviceOnHold.c -o DeviceOnHold.o
$CC -I. -Ihelper -Iderived -I $HACK -F. -c LinkConfiguration.c -o LinkConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c LinkConfiguration.c -o LinkConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c dy_framework.c -o dy_framework.o
$CC -I. -Ihelper -Iderived -I $HACK -F. -c VLANConfiguration.c -o VLANConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c VLANConfiguration.c -o VLANConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c derived/configUser.c -o configUser.o
$CC -I. -Ihelper -Iderived -F. -c SCPreferencesPathKey.c -o SCPreferencesPathKey.o
$CC -I. -Ihelper -Iderived -I../dnsinfo -F. -c derived/shared_dns_infoUser.c -o shared_dns_infoUser.o
@ -188,8 +153,8 @@ appleDerivation' stdenv {
$CC -I. -Ihelper -Iderived -F. -c SCNetworkProtocol.c -o SCNetworkProtocol.o
$CC -I. -Ihelper -Iderived -F. -c SCNetworkService.c -o SCNetworkService.o
$CC -I. -Ihelper -Iderived -F. -c SCNetworkSet.c -o SCNetworkSet.o
$CC -I. -Ihelper -Iderived -I $HACK -F. -c BondConfiguration.c -o BondConfiguration.o
$CC -I. -Ihelper -Iderived -I $HACK -F. -c BridgeConfiguration.c -o BridgeConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c BondConfiguration.c -o BondConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c BridgeConfiguration.c -o BridgeConfiguration.o
$CC -I. -Ihelper -Iderived -F. -c helper/SCHelper_client.c -o SCHelper_client.o
$CC -I. -Ihelper -Iderived -F. -c SCPreferencesKeychainPrivate.c -o SCPreferencesKeychainPrivate.o
$CC -I. -Ihelper -Iderived -F. -c SCNetworkSignature.c -o SCNetworkSignature.o

View file

@ -248,6 +248,7 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
CommonCrypto = applePackage "CommonCrypto" "osx-10.12.6" "sha256-FLgODBrfv+XsGaAjddncYAm/BIJJYw6LcwX/z7ncKFM=" {};
configd = applePackage "configd" "osx-10.8.5" "sha256-6I3FWNjTgds5abEcZrD++s9b+P9a2+qUf8KFAb72DwI=" {
Security = applePackage "Security/boot.nix" "osx-10.9.5" "sha256-7qr0IamjCXCobIJ6V9KtvbMBkJDfRCy4C5eqpHJlQLI=" {};
inherit (pkgs.darwin.apple_sdk.libs) xpc;
};
copyfile = applePackage "copyfile" "osx-10.12.6" "sha256-uHqLFOIpXK+n0RHyOZzVsP2DDZcFDivKCnqHBaXvHns=" {};
Csu = applePackage "Csu" "osx-10.11.6" "sha256-h6a/sQMEVeFxKNWAPgKBXjWhyL2L2nvX9BQUMaTQ6sY=" {};
@ -310,6 +311,7 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
configdHeaders = applePackage "configd" "osx-10.8.5" "sha256-6I3FWNjTgds5abEcZrD++s9b+P9a2+qUf8KFAb72DwI=" {
headersOnly = true;
Security = null;
xpc = null;
};
libutilHeaders = pkgs.darwin.libutil.override { headersOnly = true; };
hfsHeaders = pkgs.darwin.hfs.override { headersOnly = true; };

View file

@ -30,7 +30,12 @@ appleDerivation {
"-DAU_SESSION_FLAG_HAS_AUTHENTICATED=0x4000"
] ++ lib.optional (!stdenv.isLinux) " -D__FreeBSD__ ");
patchPhase = ''
patches = [
# Fix implicit declarations that cause builds to fail when built with clang 16.
./fix-implicit-declarations.patch
];
postPatch = ''
substituteInPlace login.tproj/login.c \
--replace bsm/audit_session.h bsm/audit.h
substituteInPlace login.tproj/login_audit.c \

View file

@ -0,0 +1,48 @@
diff -ur a/getty.tproj/main.c b/getty.tproj/main.c
--- a/getty.tproj/main.c 2008-06-10 14:50:19.000000000 -0400
+++ b/getty.tproj/main.c 2023-05-31 18:06:40.121028558 -0400
@@ -67,6 +67,7 @@
#include <syslog.h>
#include <termios.h>
#include <time.h>
+#include <util.h>
#include <unistd.h>
#ifdef __APPLE__
@@ -152,7 +153,7 @@
static void putpad(const char *);
static void puts(const char *);
static void timeoverrun(int);
-static char *getline(int);
+static char *get_line(int);
static void setttymode(int);
static int opentty(const char *, int);
@@ -352,7 +353,7 @@
if ((fd = open(IF, O_RDONLY)) != -1) {
char * cp;
- while ((cp = getline(fd)) != NULL) {
+ while ((cp = get_line(fd)) != NULL) {
putf(cp);
}
close(fd);
@@ -744,7 +745,7 @@
static char *
-getline(int fd)
+get_line(int fd)
{
int i = 0;
static char linebuf[512];
--- a/newgrp.tproj/newgrp.c 2021-10-06 01:38:52.000000000 -0400
+++ b/newgrp.tproj/newgrp.c 2023-05-31 22:26:50.656157841 -0400
@@ -47,6 +47,7 @@
#include <string.h>
#include <unistd.h>
#ifdef __APPLE__
+#include <membership.h>
#include <paths.h>
#endif /* __APPLE__ */
static void addgroup(const char *grpname);

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, fetchurl, ninja, python3, curl, libxml2, objc4, ICU }:
{ lib, stdenv, fetchFromGitHub, fetchurl, makeSetupHook, ninja, python3, curl, libxml2, objc4, ICU }:
let
# 10.12 adds a new sysdir.h that our version of CF in the main derivation depends on, but
@ -104,4 +104,6 @@ stdenv.mkDerivation {
ln -s Versions/Current/$i $base/$i
done
'';
darwinEnvHook = makeSetupHook { name = "darwin-env-hook"; } ./pure-corefoundation-hook.sh;
}

View file

@ -0,0 +1,7 @@
usePureCoreFoundation() {
# Avoid overriding value set by the impure CF
if [ -z "${NIX_COREFOUNDATION_RPATH:-}" ]; then
export NIX_COREFOUNDATION_RPATH=@out@/Library/Frameworks
fi
}
addEnvHooks "$hostOffset" usePureCoreFoundation

View file

@ -23,7 +23,9 @@ stdenv.mkDerivation rec {
sha256 = "sha256-zN9FI4emOAlz0pJzY+nLuTn6IGiRWm+Tf/nSRSICRoM=";
};
outputs = [ "out" "dev" ];
# vlock is moved into its own output, since it depends on pam. This
# reduces closure size for most use cases.
outputs = [ "out" "vlock" "dev" ];
configureFlags = [
"--enable-optional-progs"
@ -55,6 +57,12 @@ stdenv.mkDerivation rec {
--replace 'bzip2 ' '${bzip2.bin}/bin/bzip2 ' \
--replace 'xz ' '${xz.bin}/bin/xz ' \
--replace 'zstd ' '${zstd.bin}/bin/zstd '
sed -i '
1i prefix:=$(vlock)
1i bindir := $(vlock)/bin' \
src/vlock/Makefile.in \
src/vlock/Makefile.am
'';
postInstall = ''

View file

@ -130,8 +130,6 @@ let
# e.g. "defconfig"
kernelBaseConfig = if defconfig != null then defconfig else stdenv.hostPlatform.linux-kernel.baseConfig or "defconfig";
# e.g. "bzImage"
kernelTarget = stdenv.hostPlatform.linux-kernel.target or "vmlinux";
makeFlags = lib.optionals (stdenv.hostPlatform.linux-kernel ? makeFlags) stdenv.hostPlatform.linux-kernel.makeFlags
++ extraMakeFlags;

View file

@ -10,10 +10,10 @@ container, so checking early whether it exists will fail.
1 file changed, 2 insertions(+)
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
index a697ea5cb9..65d9e7e398 100644
index 3dabe12672..e5aa4feb1e 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
@@ -5635,6 +5635,7 @@ static int run(int argc, char *argv[]) {
@@ -5638,6 +5638,7 @@ static int run(int argc, char *argv[]) {
goto finish;
}
} else {
@ -21,7 +21,7 @@ index a697ea5cb9..65d9e7e398 100644
_cleanup_free_ char *p = NULL;
if (arg_pivot_root_new)
@@ -5649,6 +5650,7 @@ static int run(int argc, char *argv[]) {
@@ -5652,6 +5653,7 @@ static int run(int argc, char *argv[]) {
"Directory %s doesn't look like it has an OS tree (/usr/ directory is missing). Refusing.", arg_directory);
goto finish;
}

View file

@ -1,152 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Florian Klink <flokli@flokli.de>
Date: Thu, 13 Apr 2023 22:54:54 +0200
Subject: [PATCH] fsck: look for fsck binary not just in /sbin
This removes remaining hardcoded occurences of `/sbin/fsck`, and instead
uses `find_executable` to find `fsck`.
We also use `fsck_exists_for_fstype` to check for the `fsck.*`
executable, which also checks in `$PATH`, so it's fair to assume fsck
itself is also available.
---
man/systemd-fsck@.service.xml | 8 ++++----
src/fsck/fsck.c | 9 ++++++++-
src/home/homework-luks.c | 11 ++++++++++-
src/shared/dissect-image.c | 13 +++++++++++--
4 files changed, 33 insertions(+), 8 deletions(-)
diff --git a/man/systemd-fsck@.service.xml b/man/systemd-fsck@.service.xml
index e928aebdb3..403286829e 100644
--- a/man/systemd-fsck@.service.xml
+++ b/man/systemd-fsck@.service.xml
@@ -51,17 +51,17 @@
<para><filename>systemd-fsck</filename> does not know any details
about specific filesystems, and simply executes file system
checkers specific to each filesystem type
- (<filename>/sbin/fsck.<replaceable>type</replaceable></filename>). These checkers will decide if
+ (<filename>fsck.<replaceable>type</replaceable></filename>). These checkers will decide if
the filesystem should actually be checked based on the time since
last check, number of mounts, unclean unmount, etc.</para>
<para><filename>systemd-fsck-root.service</filename> and <filename>systemd-fsck-usr.service</filename>
- will activate <filename>reboot.target</filename> if <filename>/sbin/fsck</filename> returns the "System
- should reboot" condition, or <filename>emergency.target</filename> if <filename>/sbin/fsck</filename>
+ will activate <filename>reboot.target</filename> if <filename>fsck</filename> returns the "System
+ should reboot" condition, or <filename>emergency.target</filename> if <filename>fsck</filename>
returns the "Filesystem errors left uncorrected" condition.</para>
<para><filename>systemd-fsck@.service</filename> will fail if
- <filename>/sbin/fsck</filename> returns with either "System should reboot"
+ <filename>fsck</filename> returns with either "System should reboot"
or "Filesystem errors left uncorrected" conditions. For filesystems
listed in <filename>/etc/fstab</filename> without <literal>nofail</literal>
or <literal>noauto</literal> options, <literal>local-fs.target</literal>
diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c
index e25c5d5efa..0e0e73c9ac 100644
--- a/src/fsck/fsck.c
+++ b/src/fsck/fsck.c
@@ -351,6 +351,7 @@ static int run(int argc, char *argv[]) {
if (r == 0) {
char dash_c[STRLEN("-C") + DECIMAL_STR_MAX(int) + 1];
int progress_socket = -1;
+ _cleanup_free_ char *fsck_path = NULL;
const char *cmdline[9];
int i = 0;
@@ -371,7 +372,13 @@ static int run(int argc, char *argv[]) {
} else
dash_c[0] = 0;
- cmdline[i++] = "/sbin/fsck";
+ r = find_executable("fsck", &fsck_path);
+ if (r < 0) {
+ log_error_errno(r, "Cannot find fsck binary: %m");
+ _exit(FSCK_OPERATIONAL_ERROR);
+ }
+
+ cmdline[i++] = fsck_path;
cmdline[i++] = arg_repair;
cmdline[i++] = "-T";
diff --git a/src/home/homework-luks.c b/src/home/homework-luks.c
index 2ea9887853..e267457b8e 100644
--- a/src/home/homework-luks.c
+++ b/src/home/homework-luks.c
@@ -215,6 +215,7 @@ static int block_get_size_by_path(const char *path, uint64_t *ret) {
static int run_fsck(const char *node, const char *fstype) {
int r, exit_status;
pid_t fsck_pid;
+ _cleanup_free_ char *fsck_path = NULL;
assert(node);
assert(fstype);
@@ -227,6 +228,14 @@ static int run_fsck(const char *node, const char *fstype) {
return 0;
}
+ r = find_executable("fsck", &fsck_path);
+ /* We proceed anyway if we can't determine whether the fsck
+ * binary for some specific fstype exists,
+ * but the lack of the main fsck binary should be considered
+ * an error. */
+ if (r < 0)
+ return log_error_errno(r, "Cannot find fsck binary: %m");
+
r = safe_fork("(fsck)",
FORK_RESET_SIGNALS|FORK_RLIMIT_NOFILE_SAFE|FORK_DEATHSIG|FORK_LOG|FORK_STDOUT_TO_STDERR|FORK_CLOSE_ALL_FDS,
&fsck_pid);
@@ -234,7 +243,7 @@ static int run_fsck(const char *node, const char *fstype) {
return r;
if (r == 0) {
/* Child */
- execl("/sbin/fsck", "/sbin/fsck", "-aTl", node, NULL);
+ execl(fsck_path, fsck_path, "-aTl", node, NULL);
log_open();
log_error_errno(errno, "Failed to execute fsck: %m");
_exit(FSCK_OPERATIONAL_ERROR);
diff --git a/src/shared/dissect-image.c b/src/shared/dissect-image.c
index 4749bdd230..2b6e1418dd 100644
--- a/src/shared/dissect-image.c
+++ b/src/shared/dissect-image.c
@@ -1423,6 +1423,7 @@ static int is_loop_device(const char *path) {
static int run_fsck(int node_fd, const char *fstype) {
int r, exit_status;
pid_t pid;
+ _cleanup_free_ char *fsck_path = NULL;
assert(node_fd >= 0);
assert(fstype);
@@ -1437,6 +1438,14 @@ static int run_fsck(int node_fd, const char *fstype) {
return 0;
}
+ r = find_executable("fsck", &fsck_path);
+ /* We proceed anyway if we can't determine whether the fsck
+ * binary for some specific fstype exists,
+ * but the lack of the main fsck binary should be considered
+ * an error. */
+ if (r < 0)
+ return log_error_errno(r, "Cannot find fsck binary: %m");
+
r = safe_fork_full(
"(fsck)",
&node_fd, 1, /* Leave the node fd open */
@@ -1446,7 +1455,7 @@ static int run_fsck(int node_fd, const char *fstype) {
return log_debug_errno(r, "Failed to fork off fsck: %m");
if (r == 0) {
/* Child */
- execl("/sbin/fsck", "/sbin/fsck", "-aT", FORMAT_PROC_FD_PATH(node_fd), NULL);
+ execl(fsck_path, fsck_path, "-aT", FORMAT_PROC_FD_PATH(node_fd), NULL);
log_open();
log_debug_errno(errno, "Failed to execl() fsck: %m");
_exit(FSCK_OPERATIONAL_ERROR);
@@ -1454,7 +1463,7 @@ static int run_fsck(int node_fd, const char *fstype) {
exit_status = wait_for_terminate_and_check("fsck", pid, 0);
if (exit_status < 0)
- return log_debug_errno(exit_status, "Failed to fork off /sbin/fsck: %m");
+ return log_debug_errno(exit_status, "Failed to fork off %s: %m", fsck_path);
if ((exit_status & ~FSCK_ERROR_CORRECTED) != FSCK_SUCCESS) {
log_debug("fsck failed with exit status %i.", exit_status);

View file

@ -13,10 +13,10 @@ in containers.
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/core/manager.c b/src/core/manager.c
index 380a4e30d7..817acb87b8 100644
index 4bc8a06bd2..342892490e 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -1437,7 +1437,8 @@ static unsigned manager_dispatch_stop_when_bound_queue(Manager *m) {
@@ -1486,7 +1486,8 @@ static unsigned manager_dispatch_stop_when_bound_queue(Manager *m) {
if (!unit_is_bound_by_inactive(u, &culprit))
continue;

View file

@ -88,10 +88,10 @@ index 9e79f84691..1a1c75718c 100644
(void) mkdir_parents(etc_localtime, 0755);
r = symlink_atomic(e, etc_localtime);
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
index 65d9e7e398..dd44d529ca 100644
index e5aa4feb1e..a7a8fae860 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
@@ -1915,8 +1915,8 @@ int userns_mkdir(const char *root, const char *path, mode_t mode, uid_t uid, gid
@@ -1918,8 +1918,8 @@ int userns_mkdir(const char *root, const char *path, mode_t mode, uid_t uid, gid
static const char *timezone_from_path(const char *path) {
return PATH_STARTSWITH_SET(
path,

View file

@ -10,10 +10,10 @@ This is needed for NixOS to use such scripts as systemd directory is immutable.
1 file changed, 1 insertion(+)
diff --git a/src/shutdown/shutdown.c b/src/shutdown/shutdown.c
index 42111d2772..53467ac229 100644
index 5dee1b3a92..c08cf80548 100644
--- a/src/shutdown/shutdown.c
+++ b/src/shutdown/shutdown.c
@@ -335,6 +335,7 @@ static void init_watchdog(void) {
@@ -339,6 +339,7 @@ static void init_watchdog(void) {
int main(int argc, char *argv[]) {
static const char* const dirs[] = {
SYSTEM_SHUTDOWN_PATH,

View file

@ -16,10 +16,10 @@ executables that are being called from managers.
1 file changed, 8 insertions(+)
diff --git a/src/core/manager.c b/src/core/manager.c
index 817acb87b8..3f31359f8a 100644
index 342892490e..1117251fe0 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -3714,9 +3714,17 @@ static int build_generator_environment(Manager *m, char ***ret) {
@@ -3771,9 +3771,17 @@ static int build_generator_environment(Manager *m, char ***ret) {
* adjust generated units to that. Let's pass down some bits of information that are easy for us to
* determine (but a bit harder for generator scripts to determine), as environment variables. */

View file

@ -17,10 +17,10 @@ See also: https://github.com/systemd/systemd/issues/24191
1 file changed, 4 deletions(-)
diff --git a/src/core/manager.c b/src/core/manager.c
index 3f31359f8a..0c4ec0b4fb 100644
index 1117251fe0..bf5600a6cf 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -4556,10 +4556,6 @@ char* manager_taint_string(const Manager *m) {
@@ -4617,10 +4617,6 @@ char* manager_taint_string(const Manager *m) {
if (m->taint_usr)
stage[n++] = "split-usr";

View file

@ -0,0 +1,46 @@
From bc0f378a1149b59e88e9345e579d62fec7f50cdf Mon Sep 17 00:00:00 2001
From: Arian van Putten <arian.vanputten@gmail.com>
Date: Wed, 31 May 2023 13:27:13 +0200
Subject: [PATCH] bootctl: also print efi files not owned by systemd in status
We should not skip over unknown entries in EFI/BOOT/ but
also print them out in status so people are aware that they are there.
(cherry picked from commit a680d4fb87bad829989949e5ea4fc6db90453456)
---
src/boot/bootctl-status.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/src/boot/bootctl-status.c b/src/boot/bootctl-status.c
index 2e2bf1f7e1..f1ac4a9c8a 100644
--- a/src/boot/bootctl-status.c
+++ b/src/boot/bootctl-status.c
@@ -225,9 +225,8 @@ static int enumerate_binaries(
return log_error_errno(errno, "Failed to open file '%s' for reading: %m", filename);
r = get_file_version(fd, &v);
- if (r == -ESRCH) /* Not the file we are looking for. */
- continue;
- if (r < 0)
+
+ if (r < 0 && r != -ESRCH)
return r;
if (*previous) { /* Let's output the previous entry now, since now we know that there will be
@@ -242,10 +241,10 @@ static int enumerate_binaries(
/* Do not output this entry immediately, but store what should be printed in a state
* variable, because we only will know the tree glyph to print (branch or final edge) once we
* read one more entry */
- if (r > 0)
- r = asprintf(previous, "/%s/%s (%s%s%s)", path, de->d_name, ansi_highlight(), v, ansi_normal());
- else
+ if (r == -ESRCH) /* No systemd-owned file but still interesting to print */
r = asprintf(previous, "/%s/%s", path, de->d_name);
+ else /* if (r >= 0) */
+ r = asprintf(previous, "/%s/%s (%s%s%s)", path, de->d_name, ansi_highlight(), v, ansi_normal());
if (r < 0)
return log_oom();
--
2.39.2 (Apple Git-143)

View file

@ -145,7 +145,7 @@ assert withUkify -> withEfi;
let
wantCurl = withRemote || withImportd;
wantGcrypt = withResolved || withImportd;
version = "253.3";
version = "253.5";
# Bump this variable on every (major) version change. See below (in the meson options list) for why.
# command:
@ -162,7 +162,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "systemd";
repo = "systemd-stable";
rev = "v${version}";
hash = "sha256-iy1kyqiVeXIhFJAQ+nYorrXm/xb2gfakyrEfMyNR5l8=";
hash = "sha256-B3A9AvpfZ8SYsiZvHnWO4RHs1/6EdczWF2NmrSqxQ7c=";
};
# On major changes, or when otherwise required, you *must* reformat the patches,
@ -174,32 +174,22 @@ stdenv.mkDerivation (finalAttrs: {
./0001-Start-device-units-for-uninitialised-encrypted-devic.patch
./0002-Don-t-try-to-unmount-nix-or-nix-store.patch
./0003-Fix-NixOS-containers.patch
./0004-fsck-look-for-fsck-binary-not-just-in-sbin.patch
./0005-Add-some-NixOS-specific-unit-directories.patch
./0006-Get-rid-of-a-useless-message-in-user-sessions.patch
./0007-hostnamed-localed-timedated-disable-methods-that-cha.patch
./0008-Fix-hwdb-paths.patch
./0009-Change-usr-share-zoneinfo-to-etc-zoneinfo.patch
./0010-localectl-use-etc-X11-xkb-for-list-x11.patch
./0011-build-don-t-create-statedir-and-don-t-touch-prefixdi.patch
./0012-add-rootprefix-to-lookup-dir-paths.patch
./0013-systemd-shutdown-execute-scripts-in-etc-systemd-syst.patch
./0014-systemd-sleep-execute-scripts-in-etc-systemd-system-.patch
./0015-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch
./0016-pkg-config-derive-prefix-from-prefix.patch
./0017-inherit-systemd-environment-when-calling-generators.patch
./0018-core-don-t-taint-on-unmerged-usr.patch
./0019-tpm2_context_init-fix-driver-name-checking.patch
(fetchpatch {
# https://github.com/systemd/systemd/pull/25948
#
# [Firmware file size bug]: Some UEFI firmwares fail on large
# reads. Now that systemd-boot loads initrd itself, systems with
# such firmware won't boot without this fix
url = "https://github.com/systemd/systemd/commit/3ed1d966f00b002ed822ca9de116252bd91fe6c3.patch";
hash = "sha256-pwXrLTScqgnvfddlzUBZpwsoMrvRLcZPp6e4whMcyL4=";
})
./0004-Add-some-NixOS-specific-unit-directories.patch
./0005-Get-rid-of-a-useless-message-in-user-sessions.patch
./0006-hostnamed-localed-timedated-disable-methods-that-cha.patch
./0007-Fix-hwdb-paths.patch
./0008-Change-usr-share-zoneinfo-to-etc-zoneinfo.patch
./0009-localectl-use-etc-X11-xkb-for-list-x11.patch
./0010-build-don-t-create-statedir-and-don-t-touch-prefixdi.patch
./0011-add-rootprefix-to-lookup-dir-paths.patch
./0012-systemd-shutdown-execute-scripts-in-etc-systemd-syst.patch
./0013-systemd-sleep-execute-scripts-in-etc-systemd-system-.patch
./0014-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch
./0015-pkg-config-derive-prefix-from-prefix.patch
./0016-inherit-systemd-environment-when-calling-generators.patch
./0017-core-don-t-taint-on-unmerged-usr.patch
./0018-tpm2_context_init-fix-driver-name-checking.patch
./0019-bootctl-also-print-efi-files-not-owned-by-systemd-in.patch
] ++ lib.optional stdenv.hostPlatform.isMusl (
let
oe-core = fetchzip {

View file

@ -38,6 +38,16 @@ stdenv.mkDerivation rec {
url = "https://github.com/util-linux/util-linux/commit/1bd85b64632280d6bf0e86b4ff29da8b19321c5f.diff";
hash = "sha256-dgu4de5ul/si7Vzwe8lr9NvsdI1CWfDQKuqvARaY6sE=";
})
# FIXME: backport bcache detection fixes, remove in next release
(fetchpatch {
url = "https://github.com/util-linux/util-linux/commit/158639a2a4c6e646fd4fa0acb5f4743e65daa415.diff";
hash = "sha256-9F1OQFxKuI383u6MVy/UM15B6B+tkZFRwuDbgoZrWME=";
})
(fetchpatch {
url = "https://github.com/util-linux/util-linux/commit/00a19fb8cdfeeae30a6688ac6b490e80371b2257.diff";
hash = "sha256-w1S6IKSoL6JhVew9t6EemNRc/nrJQ5oMqFekcx0kno8=";
})
];
outputs = [ "bin" "dev" "out" "lib" "man" ];

Some files were not shown because too many files have changed in this diff Show more