keepassxc: 2.6.6 -> 2.7.1

main
Felix Buehler 2 years ago
parent 88be12e5dd
commit 4db7ee21d7
  1. 37
      pkgs/applications/misc/keepassx/community.nix
  2. 56
      pkgs/applications/misc/keepassx/darwin.patch

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

@ -8,46 +8,30 @@ index 74b1a7ff..0a713a32 100644
elseif(APPLE AND WITH_APP_BUNDLE) elseif(APPLE AND WITH_APP_BUNDLE)
+ set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications") + set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications")
set(BUNDLE_INSTALL_DIR "${PROGNAME}.app/Contents") set(BUNDLE_INSTALL_DIR "${PROGNAME}.app/Contents")
set(CMAKE_INSTALL_MANDIR "${PROGNAME}.app/Contents/Resources/man") set(CMAKE_INSTALL_MANDIR "${BUNDLE_INSTALL_DIR}/Resources/man")
set(CLI_INSTALL_DIR "${PROGNAME}.app/Contents/MacOS") set(CLI_INSTALL_DIR "${BUNDLE_INSTALL_DIR}/MacOS")
@@ -369,12 +370,6 @@ set(CMAKE_AUTORCC ON) @@ -470,11 +470,6 @@ set(CMAKE_AUTORCC ON)
if(APPLE) if(APPLE)
set(CMAKE_MACOSX_RPATH TRUE) 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) - if(NOT MACDEPLOYQT_EXE)
- message(FATAL_ERROR "macdeployqt is required to build on macOS") - message(FATAL_ERROR "macdeployqt is required to build on macOS")
- else()
- message(STATUS "Using macdeployqt: ${MACDEPLOYQT_EXE}")
- endif() - endif()
elseif(MINGW) - message(STATUS "Using macdeployqt: ${MACDEPLOYQT_EXE}")
find_program(WINDEPLOYQT_EXE windeployqt HINTS ${Qt5_PREFIX}/bin ENV PATH) set(MACDEPLOYQT_EXTRA_BINARIES "")
if(NOT WINDEPLOYQT_EXE) elseif(WIN32)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt find_program(WINDEPLOYQT_EXE windeployqt HINTS ${Qt5_PREFIX}/bin ${Qt5_PREFIX}/tools/qt5/bin ENV PATH)
index f142f368..0742512d 100644 diff --git a/src/post_install/CMakeLists.txt b/src/post_install/CMakeLists.txt
--- a/src/CMakeLists.txt index 359c891f..a6a061a3 100644
+++ b/src/CMakeLists.txt --- a/src/post_install/CMakeLists.txt
@@ -351,11 +351,6 @@ if(APPLE AND WITH_APP_BUNDLE) +++ b/src/post_install/CMakeLists.txt
set(CPACK_PACKAGE_FILE_NAME "${PROGNAME}-${KEEPASSXC_VERSION}") @@ -1,7 +1,7 @@
include(CPack) # 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} -if(APPLE AND WITH_APP_BUNDLE)
- POST_BUILD +if(FALSE)
- COMMAND ${MACDEPLOYQT_EXE} ${PROGNAME}.app # Run macdeloyqt on the main app and any extra binaries and plugins as specified by the
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/src # _MACDEPLOYQT_EXTRA_BINARIES global property.
- COMMENT "Deploying app bundle") # All install(TARGETS) calls should have already been called.
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()

Loading…
Cancel
Save