diff options
author | Colin Arnott <colin@urandom.co.uk> | 2022-11-26 10:14:01 +0000 |
---|---|---|
committer | Colin Arnott <colin@urandom.co.uk> | 2022-12-15 11:38:44 +0000 |
commit | 4684607935932853e918ad07fa37ec07f13e8d90 (patch) | |
tree | db7793a682234b8c646876bab34ab8af3c810222 /pkgs/applications/system | |
parent | ffca9ffaaafb38c8979068cee98b2644bd3f14cb (diff) |
booster: init at 0.9
The check phase is disabled because integration tests need kernel and other impure resources to function. Fixes #173437
Diffstat (limited to 'pkgs/applications/system')
-rw-r--r-- | pkgs/applications/system/booster/default.nix | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/applications/system/booster/default.nix b/pkgs/applications/system/booster/default.nix new file mode 100644 index 0000000000000..dda41f24531b1 --- /dev/null +++ b/pkgs/applications/system/booster/default.nix @@ -0,0 +1,58 @@ +{ bash +, binutils +, buildGoModule +, fetchFromGitHub +, kbd +, lib +, libfido2 +, lvm2 +, lz4 +, makeWrapper +, mdadm +, unixtools +, xz +, zfs +}: + +buildGoModule rec { + pname = "booster"; + version = "0.9"; + + src = fetchFromGitHub { + owner = "anatol"; + repo = pname; + rev = version; + hash = "sha256-kalVFVBb+ngoUpm+iiIHGS6vBVLEvTVyKuSMSMbp7Qc="; + }; + + vendorHash = "sha256-GD+nsT4/Y2mTF+ztOC3N560BY5+QSfsPrXZ+dJYtzAw="; + + postPatch = '' + substituteInPlace init/main.go --replace "/usr/bin/fsck" "${unixtools.fsck}/bin/fsck" + ''; + + # integration tests are run against the current kernel + doCheck = false; + + nativeBuildInputs = [ + kbd + lz4 + makeWrapper + xz + ]; + + postInstall = let + runtimeInputs = [ bash binutils kbd libfido2 lvm2 mdadm zfs ]; + in '' + wrapProgram $out/bin/generator --prefix PATH : ${lib.makeBinPath runtimeInputs} + wrapProgram $out/bin/init --prefix PATH : ${lib.makeBinPath runtimeInputs} + ''; + + meta = with lib; { + description = "Fast and secure initramfs generator "; + homepage = "https://github.com/anatol/booster"; + license = licenses.mit; + maintainers = with maintainers; [ urandom ]; + mainProgram = "init"; + }; +} |