Rbw fix darwin (#358894)
This commit is contained in:
@@ -1,26 +1,27 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, rustPlatform
|
||||
, fetchzip
|
||||
, openssl
|
||||
, pkg-config
|
||||
, installShellFiles
|
||||
, darwin
|
||||
, bash
|
||||
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
rustPlatform,
|
||||
fetchzip,
|
||||
openssl,
|
||||
pkg-config,
|
||||
installShellFiles,
|
||||
darwin,
|
||||
bash,
|
||||
apple-sdk_11,
|
||||
# rbw-fzf
|
||||
, withFzf ? false
|
||||
, fzf
|
||||
, perl
|
||||
withFzf ? false,
|
||||
fzf,
|
||||
perl,
|
||||
|
||||
# rbw-rofi
|
||||
, withRofi ? false
|
||||
, rofi
|
||||
, xclip
|
||||
withRofi ? false,
|
||||
rofi,
|
||||
xclip,
|
||||
|
||||
# pass-import
|
||||
, withPass ? false
|
||||
, pass
|
||||
withPass ? false,
|
||||
pass,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
@@ -38,39 +39,46 @@ rustPlatform.buildRustPackage rec {
|
||||
installShellFiles
|
||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ];
|
||||
|
||||
buildInputs = [ bash ] # for git-credential-rbw
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
darwin.apple_sdk_11_0.frameworks.Security
|
||||
darwin.apple_sdk_11_0.frameworks.AppKit
|
||||
];
|
||||
buildInputs =
|
||||
[ bash ] # for git-credential-rbw
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
apple-sdk_11 # Needs _NSPasteboardTypeFileURL, can be removed once x86_64-darwin defaults to a higher SDK
|
||||
darwin.apple_sdk_11_0.frameworks.Security
|
||||
darwin.apple_sdk_11_0.frameworks.AppKit
|
||||
];
|
||||
|
||||
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
|
||||
'' + 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)
|
||||
'' + lib.optionalString withFzf ''
|
||||
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 withRofi ''
|
||||
install -Dm755 -t $out/bin bin/rbw-rofi
|
||||
substituteInPlace $out/bin/rbw-rofi \
|
||||
--replace rofi ${rofi}/bin/rofi \
|
||||
--replace xclip ${xclip}/bin/xclip
|
||||
'' + lib.optionalString withPass ''
|
||||
install -Dm755 -t $out/bin bin/pass-import
|
||||
substituteInPlace $out/bin/pass-import \
|
||||
--replace pass ${pass}/bin/pass
|
||||
'';
|
||||
postInstall =
|
||||
''
|
||||
install -Dm755 -t $out/bin bin/git-credential-rbw
|
||||
''
|
||||
+ 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)
|
||||
''
|
||||
+ lib.optionalString withFzf ''
|
||||
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 withRofi ''
|
||||
install -Dm755 -t $out/bin bin/rbw-rofi
|
||||
substituteInPlace $out/bin/rbw-rofi \
|
||||
--replace rofi ${rofi}/bin/rofi \
|
||||
--replace xclip ${xclip}/bin/xclip
|
||||
''
|
||||
+ lib.optionalString withPass ''
|
||||
install -Dm755 -t $out/bin bin/pass-import
|
||||
substituteInPlace $out/bin/pass-import \
|
||||
--replace pass ${pass}/bin/pass
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Unofficial command line client for Bitwarden";
|
||||
|
||||
Reference in New Issue
Block a user