From 4a065e569ba568ec708100bf20a49d0521ebe02c Mon Sep 17 00:00:00 2001 From: Luke Granger-Brown Date: Sun, 16 Jan 2022 01:25:17 +0000 Subject: [PATCH] solo2-cli: init at 0.1.1 --- pkgs/tools/security/solo2-cli/default.nix | 48 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 2 files changed, 52 insertions(+) create mode 100644 pkgs/tools/security/solo2-cli/default.nix diff --git a/pkgs/tools/security/solo2-cli/default.nix b/pkgs/tools/security/solo2-cli/default.nix new file mode 100644 index 00000000000..e3518799504 --- /dev/null +++ b/pkgs/tools/security/solo2-cli/default.nix @@ -0,0 +1,48 @@ +{ lib +, stdenv +, rustPlatform +, fetchFromGitHub +, installShellFiles +, pkg-config +, pcsclite +, udev +, PCSC +, IOKit +, CoreFoundation +, AppKit +}: + +rustPlatform.buildRustPackage rec { + pname = "solo2-cli"; + version = "0.1.1"; + + src = fetchFromGitHub { + owner = "solokeys"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-3GIK0boxGD4Xa5OskP1535zCQyhMQ/oXbgThRivJzww="; + }; + + cargoSha256 = "sha256-MYxVegXUVeZ4AzDz+Si5TtTjUDEPTO0Nh008rgLtsLw="; + + nativeBuildInputs = [ installShellFiles pkg-config ]; + + buildInputs = [ ] + ++ lib.optionals stdenv.isLinux [ pcsclite udev ] + ++ lib.optionals stdenv.isDarwin [ PCSC IOKit CoreFoundation AppKit ]; + + postInstall = '' + installShellCompletion target/*/release/solo2.{bash,fish,zsh} + ''; + + doCheck = true; + + buildFeatures = [ "cli" ]; + + meta = with lib; { + description = "A CLI tool for managing SoloKeys' Solo2 USB security keys."; + homepage = "https://github.com/solokeys/solo2-cli"; + license = with licenses; [ asl20 mit ]; # either at your option + maintainers = with maintainers; [ lukegb ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f6cb53114a4..63451ad3bfe 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4893,6 +4893,10 @@ with pkgs; s-tar = callPackage ../tools/archivers/s-tar {}; + solo2-cli = callPackage ../tools/security/solo2-cli { + inherit (darwin.apple_sdk.frameworks) PCSC IOKit CoreFoundation AppKit; + }; + sonota = callPackage ../tools/misc/sonota { }; sonobuoy = callPackage ../applications/networking/cluster/sonobuoy { };