diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/qtkeychain')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch | 25 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/qtkeychain/default.nix | 43 |
2 files changed, 68 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch b/nixpkgs/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch new file mode 100644 index 000000000000..4cd7214e61e2 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch @@ -0,0 +1,25 @@ +From f72e5b67ee1137a0ccd57db5d077a197b01b3cdc Mon Sep 17 00:00:00 2001 +From: Samuel Dionne-Riel <samuel@dionne-riel.com> +Date: Tue, 4 Sep 2018 23:19:29 -0400 +Subject: [PATCH] Fixes build with Qt4. + +--- + keychain_unix.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/keychain_unix.cpp b/keychain_unix.cpp +index 30b26c3..b27ebef 100644 +--- a/keychain_unix.cpp ++++ b/keychain_unix.cpp +@@ -91,7 +91,7 @@ static bool isKwallet5Available() + // a wallet can be opened. + + iface.setTimeout(500); +- QDBusMessage reply = iface.call(QStringLiteral("networkWallet")); ++ QDBusMessage reply = iface.call("networkWallet"); + return reply.type() == QDBusMessage::ReplyMessage; + } + +-- +2.16.4 + diff --git a/nixpkgs/pkgs/development/libraries/qtkeychain/default.nix b/nixpkgs/pkgs/development/libraries/qtkeychain/default.nix new file mode 100644 index 000000000000..3de84d859111 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/qtkeychain/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchFromGitHub, cmake, pkgconfig, qt4 ? null +, withQt5 ? false, qtbase ? null, qttools ? null +, darwin ? null +, libsecret +}: + +assert withQt5 -> qtbase != null; +assert withQt5 -> qttools != null; +assert stdenv.isDarwin -> darwin != null; + +stdenv.mkDerivation rec { + name = "qtkeychain-${if withQt5 then "qt5" else "qt4"}-${version}"; + version = "0.9.1"; # verify after nix-build with `grep -R "set(PACKAGE_VERSION " result/` + + src = fetchFromGitHub { + owner = "frankosterfeld"; + repo = "qtkeychain"; + rev = "v${version}"; + sha256 = "0h4wgngn2yl35hapbjs24amkjfbzsvnna4ixfhn87snjnq5lmjbc"; # v0.9.1 + }; + + patches = if withQt5 then null else [ ./0001-Fixes-build-with-Qt4.patch ]; + + cmakeFlags = [ "-DQT_TRANSLATIONS_DIR=share/qt/translations" ]; + + nativeBuildInputs = [ cmake ] + ++ stdenv.lib.optional (!stdenv.isDarwin) [ pkgconfig ] # for finding libsecret + ; + + buildInputs = stdenv.lib.optional (!stdenv.isDarwin) [ libsecret ] + ++ (if withQt5 then [ qtbase qttools ] else [ qt4 ]) + ++ stdenv.lib.optional stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ + CoreFoundation Security + ]) + ; + + meta = { + description = "Platform-independent Qt API for storing passwords securely"; + homepage = https://github.com/frankosterfeld/qtkeychain; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.unix; + }; +} |