diff options
author | Peter Hoeg <peter@hoeg.com> | 2019-02-01 15:05:03 +0800 |
---|---|---|
committer | Peter Hoeg <peter@hoeg.com> | 2019-03-18 11:56:58 +0800 |
commit | 31e4f1dbf6ea58f581287cb875673415b7389b1f (patch) | |
tree | db6d2fb053d8ba648ae650082d3f0a25c553c3d2 /pkgs/tools/security/mpw | |
parent | da1a2b1eeafa66b4419b4f275396d8a731eccb61 (diff) |
mpw: point upgrade and minor cleanups
Diffstat (limited to 'pkgs/tools/security/mpw')
-rw-r--r-- | pkgs/tools/security/mpw/default.nix | 61 |
1 files changed, 42 insertions, 19 deletions
diff --git a/pkgs/tools/security/mpw/default.nix b/pkgs/tools/security/mpw/default.nix index 0994c649c83e8..4cff17ef84954 100644 --- a/pkgs/tools/security/mpw/default.nix +++ b/pkgs/tools/security/mpw/default.nix @@ -1,38 +1,61 @@ -{ stdenv, cmake, fetchFromGitHub, ncurses, libsodium, json_c }: +{ stdenv, cmake, fetchFromGitLab +, json_c, libsodium, libxml2, ncurses }: -stdenv.mkDerivation rec { - name = "mpw-2.6-f8043ae"; +let + rev = "22796663dcad81684ab24308d9db570f6781ba2c"; - src = fetchFromGitHub { - owner = "Lyndir"; - repo = "MasterPassword"; - rev = "f8043ae16d73ddfb205aadd25c35cd9c5e95b228"; - sha256 = "0hy02ri7y3sca85z3ff5i68crwav5cjd7rrdqj7jrnpp1bw4yapi"; +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; }; - postUnpack = '' - sourceRoot+=/platform-independent/cli-c - ''; + sourceRoot = "./source/platform-independent/c/cli"; - preConfigure = '' - substituteInPlace CMakeLists.txt --replace curses ncurses - echo ${name} > VERSION + postPatch = '' + rm build + substituteInPlace mpw-cli-tests \ + --replace '/usr/bin/env bash' ${stdenv.shell} \ + --replace ./mpw ./build/mpw ''; - dontUseCmakeBuildDir = true; + cmakeFlags = [ + "-Dmpw_version=${version}" + "-DBUILD_MPW_TESTS=ON" + ]; nativeBuildInputs = [ cmake ]; - buildInputs = [ ncurses libsodium json_c ]; + buildInputs = [ json_c libxml2 libsodium ncurses ]; installPhase = '' - mkdir -p $out/bin - mv mpw $out/bin/mpw + 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; { - homepage = https://masterpasswordapp.com/; description = "A stateless password management solution"; + homepage = https://masterpasswordapp.com/; license = licenses.gpl3; platforms = platforms.unix; }; |