diff options
Diffstat (limited to 'nixpkgs/pkgs/by-name/bi/bitwarden-directory-connector-cli/package.nix')
-rw-r--r-- | nixpkgs/pkgs/by-name/bi/bitwarden-directory-connector-cli/package.nix | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/bi/bitwarden-directory-connector-cli/package.nix b/nixpkgs/pkgs/by-name/bi/bitwarden-directory-connector-cli/package.nix new file mode 100644 index 000000000000..24376014a120 --- /dev/null +++ b/nixpkgs/pkgs/by-name/bi/bitwarden-directory-connector-cli/package.nix @@ -0,0 +1,66 @@ +{ + lib, + buildNpmPackage, + fetchFromGitHub, + buildPackages, + python3, + pkg-config, + libsecret, + nodejs_18, +}: +buildNpmPackage rec { + pname = "bitwarden-directory-connector-cli"; + version = "2023.10.0"; + nodejs = nodejs_18; + + src = fetchFromGitHub { + owner = "bitwarden"; + repo = "directory-connector"; + rev = "v${version}"; + hash = "sha256-PlOtTh+rpTxAv8ajHBDHZuL7yeeLVpbAfKEDPQlejIg="; + }; + + postPatch = '' + ${lib.getExe buildPackages.jq} 'del(.scripts.preinstall)' package.json > package.json.tmp + mv -f package.json{.tmp,} + ''; + + npmDepsHash = "sha256-jBAWWY12qeX2EDhUvT3TQpnQvYXRsIilRrXGpVzxYvw="; + + env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; + + makeCacheWritable = true; + npmBuildScript = "build:cli:prod"; + + installPhase = '' + runHook preInstall + mkdir -p $out/libexec/bitwarden-directory-connector + cp -R {build-cli,node_modules} $out/libexec/bitwarden-directory-connector + runHook postInstall + ''; + + # needs to be wrapped with nodejs so that it can be executed + postInstall = '' + chmod +x $out/libexec/bitwarden-directory-connector/build-cli/bwdc.js + mkdir -p $out/bin + ln -s $out/libexec/bitwarden-directory-connector/build-cli/bwdc.js $out/bin/bitwarden-directory-connector-cli + ''; + + buildInputs = [ + libsecret + ]; + + nativeBuildInputs = [ + python3 + pkg-config + ]; + + meta = with lib; { + description = "LDAP connector for Bitwarden"; + homepage = "https://github.com/bitwarden/directory-connector"; + license = licenses.gpl3Only; + maintainers = with maintainers; [Silver-Golden]; + platforms = platforms.linux; + mainProgram = "bitwarden-directory-connector-cli"; + }; +} |