systemd: fix ukify script

The script requires a python3 shebang with an environment that includes
python3Packages.pefile at runtime.
This commit is contained in:
Lily Foster 2023-03-30 11:40:35 -04:00
parent a9bd908709
commit 617813243c
No known key found for this signature in database
GPG Key ID: 49340081E484C893

View File

@ -117,6 +117,7 @@
, withTimedated ? true
, withTimesyncd ? true
, withTpm2Tss ? true
, withUkify ? false # adds python to closure which is too much by default
, withUserDb ? true
, withUtmp ? !stdenv.hostPlatform.isMusl
# tests assume too much system access for them to be feasible for us right now
@ -349,7 +350,7 @@ stdenv.mkDerivation (finalAttrs: {
# when cross-compiling.
+ ''
shopt -s extglob
patchShebangs tools test src/!(rpm|kernel-install) src/kernel-install/test-kernel-install.sh
patchShebangs tools test src/!(rpm|kernel-install|ukify) src/kernel-install/test-kernel-install.sh
'';
outputs = [ "out" "man" "dev" ];
@ -414,6 +415,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optionals (withHomed || withCryptsetup) [ libfido2 ]
++ lib.optionals withLibBPF [ libbpf ]
++ lib.optional withTpm2Tss tpm2-tss
++ lib.optional withUkify (python3Packages.python.withPackages (ps: with ps; [ pefile ]))
;
#dontAddPrefix = true;
@ -510,11 +512,10 @@ stdenv.mkDerivation (finalAttrs: {
# more frequent development builds
"-Dman=true"
# Temporary disable the ukify tool. see https://github.com/NixOS/nixpkgs/pull/216826#issuecomment-1465228824
"-Dukify=false"
"-Defi=${lib.boolToString withEfi}"
"-Dgnu-efi=${lib.boolToString withEfi}"
"-Dukify=${lib.boolToString withUkify}"
] ++ lib.optionals withEfi [
"-Defi-libdir=${toString gnu-efi}/lib"
"-Defi-includedir=${toString gnu-efi}/include/efi"