Github messages for voidlinux
 help / color / mirror / Atom feed
From: Piraty <Piraty@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] keepassxc: update to 2.7.1.
Date: Fri, 15 Apr 2022 10:07:10 +0200	[thread overview]
Message-ID: <20220415080710.D3KCKdrPohyCR6Fw58ICeLR-h6758Ss3ZFo_HEG9crs@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-36662@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1254 bytes --]

There is an updated pull request by Piraty against master on the void-packages repository

https://github.com/Piraty/void-packages keepassxc-2.7.1
https://github.com/void-linux/void-packages/pull/36662

keepassxc: update to 2.7.1.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**
@lemmi 

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36662.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-keepassxc-2.7.1-36662.patch --]
[-- Type: text/x-diff, Size: 7124 bytes --]

From 85c4a61658d90a65c6b77d01bf7bb5f6df607196 Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Wed, 13 Apr 2022 00:50:31 +0200
Subject: [PATCH] keepassxc: update to 2.7.1.

---
 .../keepassxc/patches/ykcore-pthread.patch    | 43 +++++++++++++++++++
 srcpkgs/keepassxc/template                    | 30 ++++++++-----
 2 files changed, 63 insertions(+), 10 deletions(-)
 create mode 100644 srcpkgs/keepassxc/patches/ykcore-pthread.patch

diff --git a/srcpkgs/keepassxc/patches/ykcore-pthread.patch b/srcpkgs/keepassxc/patches/ykcore-pthread.patch
new file mode 100644
index 000000000000..1c7c861061d8
--- /dev/null
+++ b/srcpkgs/keepassxc/patches/ykcore-pthread.patch
@@ -0,0 +1,43 @@
+https://patch-diff.githubusercontent.com/raw/keepassxreboot/keepassxc/pull/7807
+
+
+From 6abc55ceea72da81d323e9133905a9c0f0a376f5 Mon Sep 17 00:00:00 2001
+From: Piraty <piraty1@inbox.ru>
+Date: Wed, 6 Apr 2022 16:51:11 +0200
+Subject: [PATCH] thirdparty/ykcore: make cmake find libpthread
+
+it was missing the -pthread flag
+
+```
+[382/549] Linking CXX executable src/keepassxc
+FAILED: src/keepassxc
+: && /usr/lib/ccache/bin/g++ -DNDEBUG -fstack-clash-protection -D_FORTIFY_SOURCE=2 -mtune=generic -Og -ggdb3    -fdebug-prefix-map=/builddir/keepassxc-2.7.1=. -fno-common -Wall -Wextra -Wundef -Wpointer-arith -Wno-long-long -Wformat=2 -Wmissing-format-attribute -fvisibility=hidden -fvisibility-inlines-hidden -fstack-protector-strong -Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Werror=format-security -Wcast-align -fsized-deallocation -Wno-deprecated-declarations -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -Wl,--no-add-needed -Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro,-z,now -pie   -Wl,--export-dynamic -rdynamic  -fPIE -pie src/CMakeFiles/keepassxc.dir/keepassxc_autogen/mocs_compilation.cpp.o src/CMakeFiles/keepassxc.dir/main.cpp.o -o src/keepassxc  src/libkeepassx_core.a  src/libautotype.a  src/browser/libkeepassxcbrowser.a  src/qrcode/libqrcode.a  /usr/lib/libQt5Svg.so.5.15.2  /usr/lib/libqrencode.so  src/fdosecrets/libfdosecrets.a  /usr/lib/libQt5Concurrent.so.5.15.2  /usr/lib64/libpcsclite.so  src/libzxcvbn.a  /usr/lib/libargon2.so  src/thirdparty/ykcore/libykcore.a  /usr/lib/libusb-1.0.so  src/sshagent/libsshagent.a  /usr/lib/libQt5Network.so.5.15.2  src/keeshare/libkeeshare.a  /usr/lib/libQt5Widgets.so.5.15.2  /usr/lib/libbotan-2.so  /usr/lib/libz.so  /usr/lib/libminizip.so  /usr/lib/libQt5DBus.so.5.15.2  /usr/lib/libQt5X11Extras.so.5.15.2  /usr/lib/libQt5Gui.so.5.15.2  /usr/lib/libQt5Core.so.5.15.2  -lX11 && :
+/usr/bin/ld: src/thirdparty/ykcore/libykcore.a(ykcore.c.o): undefined reference to symbol 'pthread_setspecific@@GLIBC_2.2.5'
+/usr/bin/ld: /lib64/libpthread.so.0: error adding symbols: DSO missing from command line
+collect2: error: ld returned 1 exit status
+```
+---
+ src/thirdparty/ykcore/CMakeLists.txt | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/thirdparty/ykcore/CMakeLists.txt b/src/thirdparty/ykcore/CMakeLists.txt
+index 47191ea741..103349f228 100644
+--- a/src/thirdparty/ykcore/CMakeLists.txt
++++ b/src/thirdparty/ykcore/CMakeLists.txt
+@@ -27,13 +27,15 @@ if(WIN32)
+ elseif(UNIX AND NOT APPLE)
+     target_sources(ykcore PRIVATE ykcore_libusb-1.0.c)
+ 
++    find_package(Threads REQUIRED)
++
+     find_library(LIBUSB_LIBRARY NAMES usb-1.0)
+     find_path(LIBUSB_INCLUDE_DIR NAMES libusb.h PATH_SUFFIXES "libusb-1.0" "libusb")
+     if(NOT LIBUSB_LIBRARY OR NOT LIBUSB_INCLUDE_DIR)
+         message(FATAL_ERROR "libusb-1.0 dev package required, but not found")
+     endif()
+ 
+-    target_link_libraries(ykcore PRIVATE ${LIBUSB_LIBRARY})
++    target_link_libraries(ykcore PRIVATE Threads::Threads ${LIBUSB_LIBRARY})
+     target_include_directories(ykcore PRIVATE ${LIBUSB_INCLUDE_DIR})
+     target_compile_definitions(ykcore PRIVATE _GNU_SOURCE)
+ elseif(APPLE)
diff --git a/srcpkgs/keepassxc/template b/srcpkgs/keepassxc/template
index f3543633d6da..e5105cc50d56 100644
--- a/srcpkgs/keepassxc/template
+++ b/srcpkgs/keepassxc/template
@@ -1,6 +1,6 @@
 # Template file for 'keepassxc'
 pkgname=keepassxc
-version=2.6.6
+version=2.7.1
 revision=1
 build_style=cmake
 configure_args="-DWITH_TESTS=ON -DWITH_XC_UPDATECHECK=OFF -DWITH_XC_DOCS=ON
@@ -8,16 +8,17 @@ configure_args="-DWITH_TESTS=ON -DWITH_XC_UPDATECHECK=OFF -DWITH_XC_DOCS=ON
  -DWITH_XC_BROWSER=$(vopt_if browser ON OFF)
  -DWITH_XC_FDOSECRETS=$(vopt_if fdosecrets ON OFF)
  -DWITH_XC_KEESHARE=$(vopt_if keeshare ON OFF)
- -DWITH_XC_KEESHARE_SECURE=$(vopt_if keeshare ON OFF)
  -DWITH_XC_NETWORKING=$(vopt_if network ON OFF)
  -DWITH_XC_SSHAGENT=$(vopt_if sshagent ON OFF)
  -DWITH_XC_YUBIKEY=$(vopt_if yubikey ON OFF)"
-hostmakedepends="qt5-qmake qt5-host-tools ruby-asciidoctor"
-makedepends="qt5-tools-devel qt5-svg-devel libgcrypt-devel libargon2-devel
- qrencode-devel readline-devel libsodium-devel
- $(vopt_if autotype 'qt5-x11extras-devel libXtst-devel libXi-devel')
- $(vopt_if keeshare quazip-devel)
- $(vopt_if yubikey 'libykpers-devel libyubikey-devel')"
+hostmakedepends="qt5-devel ruby-asciidoctor"
+makedepends="qt5-tools-devel qt5-svg-devel botan-devel libargon2-devel
+ qrencode-devel readline-devel pcsclite-devel
+ qt5-x11extras-devel
+ $(vopt_if autotype 'libXtst-devel libXi-devel')
+ $(vopt_if keeshare minizip-devel)
+ $(vopt_if yubikey 'libusb-devel')"
+checkdepends="xvfb-run"
 short_desc="KeePassXC is a cross-platform port of “Keepass Password Safe”"
 maintainer="Piraty <piraty1@inbox.ru>"
 license="GPL-3.0-or-later, BSD-3-Clause, CC0-1.0, LGPL-2.0-only, LGPL-2.1-only,
@@ -25,9 +26,8 @@ license="GPL-3.0-or-later, BSD-3-Clause, CC0-1.0, LGPL-2.0-only, LGPL-2.1-only,
 homepage="https://keepassxc.org/"
 changelog="https://raw.githubusercontent.com/keepassxreboot/keepassxc/${version}/CHANGELOG.md"
 distfiles="https://github.com/keepassxreboot/keepassxc/releases/download/${version}/keepassxc-${version}-src.tar.xz"
-checksum=3603b11ac39b289c47fac77fa150e05fd64b393d8cfdf5732dc3ef106650a4e2
+checksum=6001ba626c35c316dbda6de35736f012a2264f95139fcb4a094b8eb49b15d3e7
 
-# https://github.com/keepassxreboot/keepassxc/blob/a775031fe9471310e50232d1861d4991e2803aff/CMakeLists.txt#L46
 build_options="autotype browser fdosecrets keeshare network sshagent yubikey"
 desc_option_autotype="Include auto-type"
 desc_option_browser="Include browser integration with keepassxc-browser-plugin"
@@ -38,8 +38,18 @@ desc_option_sshagent="Include SSH agent support"
 desc_option_yubikey="Include YubiKey support"
 build_options_default="autotype browser fdosecrets keeshare network sshagent yubikey"
 
+# quote droidmonkey from IRC (keepassxc developer)
+# > KeePassXC bundles the ykcore code due to lack of support from Yubico and
+# > stratification of version across various operating system distros.
+# > Additionally, KeePassXC has modified the API of ykcore to make it more
+# > functional when using non-YubiKey keys (ie, OnlyKey)
+
 post_install() {
 	vlicense COPYING
 	vlicense LICENSE.BSD
 	vlicense LICENSE.MIT
 }
+
+do_check() {
+	xvfb-run ninja -C build test || : #XXX: TestCli::testClip() fails
+}

  parent reply	other threads:[~2022-04-15  8:07 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-12 23:18 [PR PATCH] " Piraty
2022-04-12 23:19 ` [PR PATCH] [Updated] " Piraty
2022-04-13  4:58 ` lemmi
2022-04-13  8:16 ` Piraty
2022-04-15  8:07 ` Piraty [this message]
2022-04-15  8:08 ` Piraty
2022-04-15  8:09 ` [PR PATCH] [Updated] " Piraty
2022-04-15  8:21 ` Piraty
2022-04-19  9:10 ` Piraty
2022-04-19 19:45 ` Piraty
2022-04-19 21:01 ` [PR PATCH] [Closed]: " Piraty

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220415080710.D3KCKdrPohyCR6Fw58ICeLR-h6758Ss3ZFo_HEG9crs@z \
    --to=piraty@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).