diff options
author | Vladimír Čunát <v@cunat.cz> | 2023-10-26 10:36:50 +0200 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2023-10-26 10:36:50 +0200 |
commit | d811555465785e76fc06872f4bb14d4dd1dfed8c (patch) | |
tree | 91db30ffe3553dcd7c9766c4163687f7b951dd16 /pkgs/os-specific/linux/systemd/default.nix | |
parent | 7054a80f3b8061bd532e407f46f60e484a5e9a9c (diff) | |
parent | 0f8647b0c2bce447f8ce27428de242727104ffb0 (diff) | |
download | nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.tar nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.tar.gz nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.tar.bz2 nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.tar.lz nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.tar.xz nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.tar.zst nixpkgs-d811555465785e76fc06872f4bb14d4dd1dfed8c.zip |
Merge branch 'staging' into staging-next
Diffstat (limited to 'pkgs/os-specific/linux/systemd/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/systemd/default.nix | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 01054fa7fc6..809bf48be1e 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -134,6 +134,8 @@ , withUtmp ? !stdenv.hostPlatform.isMusl # tests assume too much system access for them to be feasible for us right now , withTests ? false + # build only libudev and libsystemd +, buildLibsOnly ? false # name argument , pname ? "systemd" @@ -202,6 +204,14 @@ stdenv.mkDerivation (finalAttrs: { ./0017-core-don-t-taint-on-unmerged-usr.patch ./0018-tpm2_context_init-fix-driver-name-checking.patch ./0019-systemctl-edit-suggest-systemdctl-edit-runtime-on-sy.patch + + # Fix for `RuntimeError: ELF .dynamic section is missing.` + # https://github.com/systemd/systemd/issues/29381 + # https://github.com/systemd/systemd/pull/29392 + (fetchpatch { + url = "https://github.com/systemd/systemd/commit/cecbb162a3134b43d2ca160e13198c73ff34c3ef.patch"; + hash = "sha256-hWpUosTDA18mYm5nIb9KnjwOlnzbEHgzha/WpyHoC54="; + }) ] ++ lib.optional stdenv.hostPlatform.isMusl ( let oe-core = fetchzip { @@ -372,7 +382,7 @@ stdenv.mkDerivation (finalAttrs: { patchShebangs tools test src/!(rpm|kernel-install|ukify) src/kernel-install/test-kernel-install.sh ''; - outputs = [ "out" "man" "dev" ]; + outputs = [ "out" "dev" ] ++ (lib.optional (!buildLibsOnly) "man"); nativeBuildInputs = [ @@ -436,7 +446,7 @@ stdenv.mkDerivation (finalAttrs: { ++ lib.optional withUkify (python3Packages.python.withPackages (ps: with ps; [ pefile ])) ; - #dontAddPrefix = true; + mesonBuildType = "release"; mesonFlags = [ "-Dversion-tag=${version}" @@ -697,7 +707,9 @@ stdenv.mkDerivation (finalAttrs: { export DESTDIR=/ ''; - postInstall = '' + mesonInstallTags = lib.optionals buildLibsOnly [ "devel" "libudev" "libsystemd" ]; + + postInstall = lib.optionalString (!buildLibsOnly) '' mkdir -p $out/example/systemd mv $out/lib/{binfmt.d,sysctl.d,tmpfiles.d} $out/example mv $out/lib/systemd/{system,user} $out/example/systemd @@ -715,7 +727,7 @@ stdenv.mkDerivation (finalAttrs: { find $out -name "*kernel-install*" -exec rm {} \; '' + lib.optionalString (!withDocumentation) '' rm -rf $out/share/doc - '' + lib.optionalString withKmod '' + '' + lib.optionalString (withKmod && !buildLibsOnly) '' mv $out/lib/modules-load.d $out/example ''; |