1{ stdenv, systemd, cryptsetup }:
2
3assert stdenv.isLinux;
4
5stdenv.lib.overrideDerivation systemd (p: {
6 version = p.version;
7 name = "systemd-cryptsetup-generator";
8
9 nativeBuildInputs = p.nativeBuildInputs ++ [ cryptsetup ];
10 outputs = [ "out" ];
11
12 buildPhase = ''
13 ninja systemd-cryptsetup systemd-cryptsetup-generator
14 '';
15
16 installPhase = ''
17 mkdir -p $out/lib/systemd/
18 cp systemd-cryptsetup $out/lib/systemd/systemd-cryptsetup
19 cp src/shared/*.so $out/lib/systemd/
20
21 mkdir -p $out/lib/systemd/system-generators/
22 cp systemd-cryptsetup-generator $out/lib/systemd/system-generators/systemd-cryptsetup-generator
23 '';
24})