aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/tools/security/mpw/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/tools/security/mpw/default.nix')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/security/mpw/default.nix62
1 files changed, 62 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/security/mpw/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/security/mpw/default.nix
new file mode 100644
index 000000000000..9d25daf29a69
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/security/mpw/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, cmake, fetchFromGitLab
+, json_c, libsodium, libxml2, ncurses }:
+
+let
+ rev = "22796663dcad81684ab24308d9db570f6781ba2c";
+
+in stdenv.mkDerivation rec {
+ name = "mpw-${version}-${builtins.substring 0 8 rev}";
+ version = "2.6";
+
+ src = fetchFromGitLab {
+ owner = "MasterPassword";
+ repo = "MasterPassword";
+ sha256 = "1f2vqacgbyam1mazawrfim8zwp38gnwf5v3xkkficsfnv789g6fw";
+ inherit rev;
+ };
+
+ sourceRoot = "./source/platform-independent/c/cli";
+
+ postPatch = ''
+ rm build
+ substituteInPlace mpw-cli-tests \
+ --replace '/usr/bin/env bash' ${stdenv.shell} \
+ --replace ./mpw ./build/mpw
+ '';
+
+ cmakeFlags = [
+ "-Dmpw_version=${version}"
+ "-DBUILD_MPW_TESTS=ON"
+ ];
+
+ nativeBuildInputs = [ cmake ];
+
+ buildInputs = [ json_c libxml2 libsodium ncurses ];
+
+ installPhase = ''
+ runHook preInstall
+
+ install -Dm755 mpw $out/bin/mpw
+ install -Dm644 ../mpw.completion.bash $out/share/bash-completion/completions/_mpw
+ install -Dm644 ../../../../README.md $out/share/doc/mpw/README.md
+
+ runHook postInstall
+ '';
+
+ doCheck = true;
+
+ checkPhase = ''
+ runHook preCheck
+
+ ../mpw-cli-tests
+
+ runHook postCheck
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A stateless password management solution";
+ homepage = "https://masterpasswordapp.com/";
+ license = licenses.gpl3;
+ platforms = platforms.unix;
+ };
+}