Merge pull request #166010 from Stunkymonkey/keepassxc-2.7.0

keepassxc: 2.6.6 -> 2.7.1
This commit is contained in:
Manuel Bärenz 2022-05-16 11:08:23 +02:00 committed by GitHub
commit 556ce9a40a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 36 additions and 61 deletions

View File

@ -62,7 +62,7 @@ import ./make-test-python.nix ({ pkgs, ...} :
machine.send_key("tab")
machine.send_chars("/home/alice/foo.keyfile")
machine.send_key("ret")
# Passwords folder is displayed
machine.wait_for_text("Passwords")
# Database is unlocked (doesn't have "[Locked]" in the title anymore)
machine.wait_for_text("foo.kdbx - KeePassXC")
'';
})

View File

@ -5,34 +5,31 @@
, darwin
, asciidoctor
, botan2
, curl
, glibcLocales
, libXi
, libXtst
, libargon2
, libgcrypt
, libgpg-error
, libsodium
, libyubikey
, libusb1
, minizip
, pcsclite
, pkg-config
, qrencode
, qtbase
, qtmacextras
, qtsvg
, qtx11extras
, quazip
, readline
, wrapGAppsHook
, wrapQtAppsHook
, yubikey-personalization
, zlib
, withKeePassBrowser ? true
, withKeePassKeeShare ? true
, withKeePassKeeShareSecure ? true
, withKeePassSSHAgent ? true
, withKeePassNetworking ? true
, withKeePassTouchID ? true
, withKeePassYubiKey ? true
, withKeePassFDOSecrets ? true
, nixosTests
@ -42,13 +39,13 @@ with lib;
stdenv.mkDerivation rec {
pname = "keepassxc";
version = "2.6.6";
version = "2.7.1";
src = fetchFromGitHub {
owner = "keepassxreboot";
repo = "keepassxc";
rev = version;
sha256 = "15rm3avdmc2x2n92zq6w1zbcranak4j6dds2sxmgdqi1ffc0a3ci";
sha256 = "sha256-BOtehDzlWhhfXj8TOFvFN4f86Hl2EC3rO4qUIl9fqq4=";
};
NIX_CFLAGS_COMPILE = optionalString stdenv.cc.isClang [
@ -66,15 +63,12 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DKEEPASSXC_BUILD_TYPE=Release"
"-DWITH_GUI_TESTS=ON"
"-DWITH_XC_AUTOTYPE=ON"
"-DWITH_XC_UPDATECHECK=OFF"
"-DWITH_XC_YUBIKEY=ON"
]
++ (optional withKeePassBrowser "-DWITH_XC_BROWSER=ON")
++ (optional withKeePassKeeShare "-DWITH_XC_KEESHARE=ON")
++ (optional withKeePassKeeShareSecure "-DWITH_XC_KEESHARE_SECURE=ON")
++ (optional withKeePassNetworking "-DWITH_XC_NETWORKING=ON")
++ (optional (withKeePassTouchID && stdenv.isDarwin) "-DWITH_XC_TOUCHID=ON")
++ (optional (withKeePassYubiKey && stdenv.isLinux) "-DWITH_XC_YUBIKEY=ON")
++ (optional (withKeePassFDOSecrets && stdenv.isLinux) "-DWITH_XC_FDOSECRETS=ON")
++ (optional withKeePassSSHAgent "-DWITH_XC_SSHAGENT=ON");
@ -95,26 +89,22 @@ stdenv.mkDerivation rec {
buildInputs = [
curl
glibcLocales
botan2
libXi
libXtst
libargon2
libgcrypt
libgpg-error
libsodium
libyubikey
minizip
pcsclite
qrencode
qtbase
qtsvg
qtx11extras
readline
yubikey-personalization
zlib
]
++ optional withKeePassKeeShareSecure quazip
++ optional stdenv.isLinux libusb1
++ optional stdenv.isDarwin qtmacextras
++ optional (stdenv.isDarwin && withKeePassTouchID)
darwin.apple_sdk.frameworks.LocalAuthentication;
++ optional (stdenv.isDarwin && withKeePassTouchID) darwin.apple_sdk.frameworks.LocalAuthentication;
passthru.tests = nixosTests.keepassxc;
@ -131,5 +121,6 @@ stdenv.mkDerivation rec {
license = licenses.gpl2Plus;
maintainers = with maintainers; [ jonafato turion ];
platforms = platforms.linux ++ platforms.darwin;
broken = stdenv.isDarwin; # see to https://github.com/NixOS/nixpkgs/issues/172165
};
}

View File

@ -8,46 +8,30 @@ index 74b1a7ff..0a713a32 100644
elseif(APPLE AND WITH_APP_BUNDLE)
+ set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications")
set(BUNDLE_INSTALL_DIR "${PROGNAME}.app/Contents")
set(CMAKE_INSTALL_MANDIR "${PROGNAME}.app/Contents/Resources/man")
set(CLI_INSTALL_DIR "${PROGNAME}.app/Contents/MacOS")
@@ -369,12 +370,6 @@ set(CMAKE_AUTORCC ON)
set(CMAKE_INSTALL_MANDIR "${BUNDLE_INSTALL_DIR}/Resources/man")
set(CLI_INSTALL_DIR "${BUNDLE_INSTALL_DIR}/MacOS")
@@ -470,11 +470,6 @@ set(CMAKE_AUTORCC ON)
if(APPLE)
set(CMAKE_MACOSX_RPATH TRUE)
- find_program(MACDEPLOYQT_EXE macdeployqt HINTS ${Qt5_PREFIX}/bin ENV PATH)
- find_program(MACDEPLOYQT_EXE macdeployqt HINTS ${Qt5_PREFIX}/bin ${Qt5_PREFIX}/tools/qt5/bin ENV PATH)
- if(NOT MACDEPLOYQT_EXE)
- message(FATAL_ERROR "macdeployqt is required to build on macOS")
- else()
- message(STATUS "Using macdeployqt: ${MACDEPLOYQT_EXE}")
- endif()
elseif(MINGW)
find_program(WINDEPLOYQT_EXE windeployqt HINTS ${Qt5_PREFIX}/bin ENV PATH)
if(NOT WINDEPLOYQT_EXE)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f142f368..0742512d 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -351,11 +351,6 @@ if(APPLE AND WITH_APP_BUNDLE)
set(CPACK_PACKAGE_FILE_NAME "${PROGNAME}-${KEEPASSXC_VERSION}")
include(CPack)
- message(STATUS "Using macdeployqt: ${MACDEPLOYQT_EXE}")
set(MACDEPLOYQT_EXTRA_BINARIES "")
elseif(WIN32)
find_program(WINDEPLOYQT_EXE windeployqt HINTS ${Qt5_PREFIX}/bin ${Qt5_PREFIX}/tools/qt5/bin ENV PATH)
diff --git a/src/post_install/CMakeLists.txt b/src/post_install/CMakeLists.txt
index 359c891f..a6a061a3 100644
--- a/src/post_install/CMakeLists.txt
+++ b/src/post_install/CMakeLists.txt
@@ -1,7 +1,7 @@
# The install commands in this subdirectory will be executed after all the install commands in the
# current scope are ran. It is required for correct functtioning of macdeployqt.
- add_custom_command(TARGET ${PROGNAME}
- POST_BUILD
- COMMAND ${MACDEPLOYQT_EXE} ${PROGNAME}.app
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/src
- COMMENT "Deploying app bundle")
endif()
install(TARGETS ${PROGNAME}
diff --git a/src/autotype/mac/CMakeLists.txt b/src/autotype/mac/CMakeLists.txt
index 7427450a..a0a58d71 100644
--- a/src/autotype/mac/CMakeLists.txt
+++ b/src/autotype/mac/CMakeLists.txt
@@ -8,7 +8,6 @@ if(WITH_APP_BUNDLE)
add_custom_command(TARGET keepassx-autotype-cocoa
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/libkeepassx-autotype-cocoa.so ${PLUGIN_INSTALL_DIR}
- COMMAND ${MACDEPLOYQT_EXE} ${PROGNAME}.app -executable=${PLUGIN_INSTALL_DIR}/libkeepassx-autotype-cocoa.so -no-plugins
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/src
COMMENT "Deploying autotype plugin")
else()
-if(APPLE AND WITH_APP_BUNDLE)
+if(FALSE)
# Run macdeloyqt on the main app and any extra binaries and plugins as specified by the
# _MACDEPLOYQT_EXTRA_BINARIES global property.
# All install(TARGETS) calls should have already been called.