From 92f91323661546184f11b1492c2fb8e714cd62b4 Mon Sep 17 00:00:00 2001 From: Mostly Void <7rat13@gmail.com> Date: Mon, 7 Aug 2023 16:06:31 +0300 Subject: [PATCH] bws: init at 0.3.0 --- pkgs/tools/security/bws/default.nix | 53 +++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 55 insertions(+) create mode 100644 pkgs/tools/security/bws/default.nix diff --git a/pkgs/tools/security/bws/default.nix b/pkgs/tools/security/bws/default.nix new file mode 100644 index 000000000000..5c3987319109 --- /dev/null +++ b/pkgs/tools/security/bws/default.nix @@ -0,0 +1,53 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, oniguruma +, openssl +, stdenv +, darwin +, python3 +}: + +rustPlatform.buildRustPackage rec { + pname = "bws"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "bitwarden"; + repo = "sdk"; + rev = "bws-v${version}"; + hash = "sha256-o+tmO9E881futhA/fN6+EX2yEBKnKUmKk/KilIt5vYY="; + }; + + cargoHash = "sha256-nmsAfXNn1nqmqHzGD7jl2JNrif/nJycCJZWZYjv7G4c="; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = + [ + oniguruma + openssl + ] + ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Security + ]; + + env = { + PYO3_PYTHON = "${python3}/bin/python3"; + RUSTONIG_SYSTEM_LIBONIG = true; + }; + + buildAndTestSubdir = "crates/bws"; + + meta = { + changelog = "https://github.com/bitwarden/sdk/blob/${src.rev}/CHANGELOG.md"; + description = "Bitwarden Secrets Manager CLI"; + homepage = "https://github.com/bitwarden/sdk"; + license = lib.licenses.unfree; # BITWARDEN SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT + mainProgram = "bws"; + maintainers = with lib.maintainers; [ dit7ya ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b3f69dc95745..6fec4d7e3ae5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4336,6 +4336,8 @@ with pkgs; bwbasic = callPackage ../development/interpreters/bwbasic { }; + bws = callPackage ../tools/security/bws { }; + byobu = callPackage ../tools/misc/byobu { # Choices: [ tmux screen ]; textual-window-manager = tmux;