diff options
Diffstat (limited to 'pkgs/os-specific/linux/systemd/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/systemd/default.nix | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index ef4b8ec5dfc..65e7a4531bf 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, fetchpatch, pkgconfig, intltool, gperf, libcap, kmod , zlib, xz, pam, acl, cryptsetup, libuuid, m4, utillinux, libffi , glib, kbd, libxslt, coreutils, libgcrypt, libgpgerror, libidn2, libapparmor -, audit, lz4, bzip2, kexectools, libmicrohttpd +, audit, lz4, bzip2, kexectools, libmicrohttpd, pcre2 , linuxHeaders ? stdenv.cc.libc.linuxHeaders , libseccomp, iptables, gnu-efi , autoreconfHook, gettext, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_45 @@ -10,6 +10,7 @@ , getent , hostPlatform , buildPackages +, withSelinux ? false, libselinux }: assert stdenv.isLinux; @@ -26,8 +27,8 @@ in stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "NixOS"; repo = "systemd"; - rev = "3a439bcdb5706dbb44215ef4e70f07b09aaac040"; - sha256 = "0qkk5891068pkxmxqvm07bwl597i8lfp89c23yxp11m21cjq0f4b"; + rev = "02042d012c4d6c0a2854d8436dd6636d4327774f"; + sha256 = "0iv6fygzac0z6dagbmw1nf8dx7rrr6d9cxp0fr304rn3ir58g5f0"; }; outputs = [ "out" "lib" "man" "dev" ]; @@ -42,11 +43,14 @@ in stdenv.mkDerivation rec { buildInputs = [ linuxHeaders libcap kmod xz pam acl /* cryptsetup */ libuuid glib libgcrypt libgpgerror libidn2 - libmicrohttpd kexectools libseccomp libffi audit lz4 bzip2 libapparmor + libmicrohttpd pcre2 ] ++ + stdenv.lib.meta.enableIfAvailable kexectools ++ + stdenv.lib.meta.enableIfAvailable libseccomp ++ + [ libffi audit lz4 bzip2 libapparmor iptables gnu-efi # This is actually native, but we already pull it from buildPackages pythonLxmlEnv - ]; + ] ++ stdenv.lib.optionals withSelinux [ libselinux ]; #dontAddPrefix = true; @@ -75,7 +79,7 @@ in stdenv.mkDerivation rec { "-Dsystem-gid-max=499" # "-Dtime-epoch=1" - (if stdenv.isArm || !hostPlatform.isEfi then "-Dgnu-efi=false" else "-Dgnu-efi=true") + (if stdenv.isArm || stdenv.isAarch64 || !hostPlatform.isEfi then "-Dgnu-efi=false" else "-Dgnu-efi=true") "-Defi-libdir=${toString gnu-efi}/lib" "-Defi-includedir=${toString gnu-efi}/include/efi" "-Defi-ldsdir=${toString gnu-efi}/lib" @@ -174,6 +178,8 @@ in stdenv.mkDerivation rec { "-USYSTEMD_BINARY_PATH" "-DSYSTEMD_BINARY_PATH=\"/run/current-system/systemd/lib/systemd/systemd\"" ]; + doCheck = false; # fails a bunch of tests + postInstall = '' # sysinit.target: Don't depend on # systemd-tmpfiles-setup.service. This interferes with NixOps's |