From 262bfc7aa25968837426c775cb0c9b3cd24cca16 Mon Sep 17 00:00:00 2001 From: Matt Nish-Lapidus Date: Wed, 1 Jan 2025 14:48:06 -0500 Subject: [PATCH] custom rbw package for latest version --- home/home.nix | 5 +++- packages/default.nix | 2 ++ packages/rbw/rbw.nix | 62 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 packages/rbw/rbw.nix diff --git a/home/home.nix b/home/home.nix index eae1a0b..e99b317 100644 --- a/home/home.nix +++ b/home/home.nix @@ -540,7 +540,10 @@ # enable = true; # package = pkgs.thunderbird-latest; # }; - rbw.enable = true; + rbw = { + enable = true; + package = pkgs.rbw-latest; + }; }; dconf.settings = { diff --git a/packages/default.nix b/packages/default.nix index 08e9c65..861d7aa 100644 --- a/packages/default.nix +++ b/packages/default.nix @@ -16,4 +16,6 @@ pkgs: { mioctl = pkgs.callPackage ./mioctl/mioctl.nix {}; bitwig-studio-beta = pkgs.callPackage ./bitwig-beta/bitwig-studio-beta.nix {}; + + rbw-latest = pkgs.callPackage ./rbw/rbw.nix {}; } diff --git a/packages/rbw/rbw.nix b/packages/rbw/rbw.nix new file mode 100644 index 0000000..4db3832 --- /dev/null +++ b/packages/rbw/rbw.nix @@ -0,0 +1,62 @@ +{ + lib, + stdenv, + rustPlatform, + fetchzip, + openssl, + pkg-config, + installShellFiles, + darwin, + bash, + + # rbw-fzf + fzf, + perl +}: + +rustPlatform.buildRustPackage rec { + pname = "rbw-latest"; + version = "1.13.1"; + + src = fetchzip { + url = "https://git.tozt.net/rbw/snapshot/rbw-${version}.tar.gz"; + hash = "sha256-6T1pa+LzgJLaPbWJg7imZZ6KuGJ47YqpSKXxrv4E+1I="; + }; + + cargoHash = "sha256-NGt60HJwHnP4vwQp8oHpmmTa72lHVDftFo6whu4V9JQ="; + + nativeBuildInputs = [ + installShellFiles + ] ++ lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ]; + + buildInputs = + [ bash ]; # for git-credential-rbw + + preConfigure = lib.optionalString stdenv.hostPlatform.isLinux '' + export OPENSSL_INCLUDE_DIR="${openssl.dev}/include" + export OPENSSL_LIB_DIR="${lib.getLib openssl}/lib" + ''; + + postInstall = + '' + install -Dm755 -t $out/bin bin/git-credential-rbw + install -Dm755 -t $out/bin bin/rbw-fzf + substituteInPlace $out/bin/rbw-fzf \ + --replace fzf ${fzf}/bin/fzf \ + --replace perl ${perl}/bin/perl + '' + + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd rbw \ + --bash <($out/bin/rbw gen-completions bash) \ + --fish <($out/bin/rbw gen-completions fish) \ + --zsh <($out/bin/rbw gen-completions zsh) + ''; + + meta = with lib; { + description = "Unofficial command line client for Bitwarden"; + homepage = "https://crates.io/crates/rbw"; + changelog = "https://git.tozt.net/rbw/plain/CHANGELOG.md?id=${version}"; + license = licenses.mit; + mainProgram = "rbw"; + }; +}