18 , yubikey-personalization
27 inherit (darwin.apple_sdk.frameworks) Cocoa;
29 stdenv.mkDerivation rec {
31 version = "1.18.0"; # do NOT update to 3.x Windows releases
33 src = fetchFromGitHub {
37 hash = "sha256-2n3JJ/DPhJpNOyviYpqQQl83IAZnmnH5w7b/pOGU8K8=";
58 ] ++ lib.optionals stdenv.hostPlatform.isLinux [
65 yubikey-personalization
66 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
72 "-DCMAKE_CXX_FLAGS=-I${yubikey-personalization}/include/ykpers-1"
73 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
78 # Fix perl scripts used during the build.
79 for f in $(find . -type f -name '*.pl') ; do
83 # Fix hard coded paths.
84 for f in $(grep -Rl /usr/share/ src install/desktop) ; do
85 substituteInPlace $f --replace /usr/share/ $out/share/
88 # Fix hard coded zip path.
89 substituteInPlace help/Makefile.linux --replace /usr/bin/zip ${zip}/bin/zip
91 for f in $(grep -Rl /usr/bin/ .) ; do
92 substituteInPlace $f --replace /usr/bin/ ""
94 '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
95 substituteInPlace src/ui/cli/CMakeLists.txt --replace "uuid" ""
98 installFlags = [ "PREFIX=${placeholder "out"}" ];
100 passthru.updateScript = gitUpdater {
101 allowedVersions = "^1\\.";
102 url = src.gitRepoUrl;
106 description = "Password database utility";
108 Password Safe is a password database utility. Like many other
109 such products, commercial and otherwise, it stores your
110 passwords in an encrypted file, allowing you to remember only
111 one password (the "safe combination"), instead of all the
112 username/password combinations that you use.
114 homepage = "https://pwsafe.org/";
115 maintainers = with maintainers; [ c0bw3b pjones ];
116 platforms = platforms.unix;
117 license = licenses.artistic2;