From a025483a41eba6da06665b11228a963abefcc3c6 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Sat, 2 Dec 2023 13:27:11 +0100 Subject: [PATCH 1/3] qMasterPassword: 1.2.4 -> 2.0 https://github.com/bkueng/qMasterPassword/compare/v1.2.4...v2.0 Use Qt6 Add wayland variant which uses no x11 build dependencies and disables form filling features --- .../misc/qMasterPassword/default.nix | 32 +++++++++++-------- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/pkgs/applications/misc/qMasterPassword/default.nix b/pkgs/applications/misc/qMasterPassword/default.nix index 8ac8ae5f4f55..a2be621ad149 100644 --- a/pkgs/applications/misc/qMasterPassword/default.nix +++ b/pkgs/applications/misc/qMasterPassword/default.nix @@ -3,27 +3,33 @@ , fetchFromGitHub , libX11 , libXtst -, qmake +, cmake , qtbase , qttools +, qtwayland , openssl , libscrypt , wrapQtAppsHook +, x11Support ? true +, waylandSupport ? false }: stdenv.mkDerivation rec { pname = "qMasterPassword"; - version = "1.2.4"; + version = "2.0"; src = fetchFromGitHub { owner = "bkueng"; repo = pname; rev = "v${version}"; - sha256 = "sha256-VQ1ZkXaZ5sUbtWa/GreTr5uXvnZ2Go6owJ2ZBK25zns="; + hash = "sha256-4qxPjrf6r2S0l/hcs6bqfJm56jdDz+0a0xEkqGBYGBs="; }; - buildInputs = [ qtbase libX11 libXtst openssl libscrypt ]; - nativeBuildInputs = [ qmake qttools wrapQtAppsHook ]; + buildInputs = [ qtbase qtwayland openssl libscrypt ] ++ lib.optionals x11Support [ libX11 libXtst ]; + nativeBuildInputs = [ cmake qttools wrapQtAppsHook ]; + cmakeFlags = lib.optionals waylandSupport [ + "-DDISABLE_FILL_FORM_SHORTCUTS=1" + ]; # Upstream install is mostly defunct. It hardcodes target.path and doesn't # install anything but the binary. @@ -34,15 +40,13 @@ stdenv.mkDerivation rec { '' else '' mkdir -p $out/bin mkdir -p $out/share/{applications,doc/qMasterPassword,icons/qmasterpassword,icons/hicolor/512x512/apps,qMasterPassword/translations} - mv qMasterPassword $out/bin - mv data/qMasterPassword.desktop $out/share/applications - mv LICENSE README.md $out/share/doc/qMasterPassword - mv data/icons/app_icon.png $out/share/icons/hicolor/512x512/apps/qmasterpassword.png - mv data/icons/* $out/share/icons/qmasterpassword - lrelease ./data/translations/translation_de.ts - lrelease ./data/translations/translation_pl.ts - mv ./data/translations/translation_de.qm $out/share/qMasterPassword/translations/translation_de.qm - mv ./data/translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm + cp qMasterPassword $out/bin + cp $src/data/qMasterPassword.desktop $out/share/applications + cp $src/LICENSE $src/README.md $out/share/doc/qMasterPassword + cp $src/data/icons/app_icon.png $out/share/icons/hicolor/512x512/apps/qmasterpassword.png + cp $src/data/icons/* $out/share/icons/qmasterpassword + cp ./translations/translation_de.qm $out/share/qMasterPassword/translations/translation_de.qm + cp ./translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm ''; meta = with lib; { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 274e3bc36e98..693617d7c293 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -40950,7 +40950,7 @@ with pkgs; gtk2 = gtk2-x11; }; - qMasterPassword = libsForQt5.callPackage ../applications/misc/qMasterPassword { }; + qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { }; qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { }; From 71ae5a5023ed95908afffae436b7b5c69b3dc672 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Mon, 11 Dec 2023 20:16:01 +0100 Subject: [PATCH 2/3] qMasterPassword-wayland: init at 2.0 --- pkgs/top-level/all-packages.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 693617d7c293..e70a3f877177 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -40952,6 +40952,11 @@ with pkgs; qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { }; + qMasterPassword-wayland = qt6Packages.callPackage ../applications/misc/qMasterPassword { + x11Support = false; + waylandSupport = true; + }; + qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { }; qtrvsim = libsForQt5.callPackage ../applications/science/computer-architecture/qtrvsim { }; From 90d5382750b6f6923dbb9f25766367011230b941 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Tue, 12 Dec 2023 17:25:43 +0100 Subject: [PATCH 3/3] qMasterPassword.tests: init version test --- pkgs/applications/misc/qMasterPassword/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/applications/misc/qMasterPassword/default.nix b/pkgs/applications/misc/qMasterPassword/default.nix index a2be621ad149..436c1fc70377 100644 --- a/pkgs/applications/misc/qMasterPassword/default.nix +++ b/pkgs/applications/misc/qMasterPassword/default.nix @@ -10,6 +10,8 @@ , openssl , libscrypt , wrapQtAppsHook +, testers +, qMasterPassword , x11Support ? true , waylandSupport ? false }: @@ -49,6 +51,13 @@ stdenv.mkDerivation rec { cp ./translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm ''; + passthru = { + tests.version = testers.testVersion { + package = qMasterPassword; + version = "v${version}"; + }; + }; + meta = with lib; { description = "Stateless Master Password Manager"; longDescription = ''