From 578ce5fd0b50f896b6f985385a41430d785784ee Mon Sep 17 00:00:00 2001 From: Raito Bezarius Date: Sun, 21 Aug 2022 17:55:34 +0200 Subject: [PATCH] sbctl: init at 0.9 --- pkgs/tools/security/sbctl/default.nix | 45 +++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 47 insertions(+) create mode 100644 pkgs/tools/security/sbctl/default.nix diff --git a/pkgs/tools/security/sbctl/default.nix b/pkgs/tools/security/sbctl/default.nix new file mode 100644 index 000000000000..00a5f53d6b50 --- /dev/null +++ b/pkgs/tools/security/sbctl/default.nix @@ -0,0 +1,45 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, installShellFiles +, asciidoc +, databasePath ? "/etc/secureboot" +}: + +buildGoModule rec { + pname = "sbctl"; + version = "0.9"; + + src = fetchFromGitHub { + owner = "Foxboron"; + repo = pname; + rev = version; + hash = "sha256-mntb3EMB+QTnFU476Dq6T6rAAv0JeYbvWJ/pbL3a4RE="; + }; + + vendorSha256 = "sha256-k6AIYigjxbitH0hH+vwRt2urhNYTToIF0eSsIWbzslI="; + + ldflags = [ "-s" "-w" "-X github.com/foxboron/sbctl.DatabasePath=${databasePath}" ]; + + nativeBuildInputs = [ installShellFiles asciidoc ]; + + postBuild = '' + make docs/sbctl.8 + ''; + + postInstall = '' + installManPage docs/sbctl.8 + + installShellCompletion --cmd sbctl \ + --bash <($out/bin/sbctl completion bash) \ + --fish <($out/bin/sbctl completion fish) \ + --zsh <($out/bin/sbctl completion zsh) + ''; + + meta = with lib; { + description = "Secure Boot key manager"; + homepage = "https://github.com/Foxboron/sbctl"; + license = licenses.mit; + maintainers = with maintainers; [ raitobezarius ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 334e409e2da5..8058702bd173 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7138,6 +7138,8 @@ with pkgs; efitools = callPackage ../tools/security/efitools { }; + sbctl = callPackage ../tools/security/sbctl { }; + sbsigntool = callPackage ../tools/security/sbsigntool { }; gsmartcontrol = callPackage ../tools/misc/gsmartcontrol { };