Skip to content

keepassxc: update to 2.8.0. - #63140

Closed
Vinfall wants to merge 1 commit into
void-linux:masterfrom
Vinfall:keepassxc
Closed

Vinfall wants to merge 1 commit into
void-linux:masterfrom
Vinfall:keepassxc

Conversation

@Vinfall

@Vinfall Vinfall commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Testing the changes

  • I tested the changes in this PR: briefly

Local build testing

  • I built this PR locally for my native architecture, x86_64-glibc

Migrate to Qt6, update build options per keepassxreboot/keepassxc#11003.

  • Auto-Type, Yubikey, KeeShare are now built-in
  • passkey support is merged into browser integration
  • pkg-config is required in hostmakedepends, keyutils-devel is now required in makedepends. I'm not sure if libkeyutils is required as a runtime dep, it's added just in case.
  • I'm also not sure the counterpart of qt5-x11extras-devel, I use qt6-wayland-devel here and the build works on Xfce4 X11 in my brief test.
  • TestCli::testClip( ) still fails so do_check() is kept intact.
Debug info in test build

KeePassXC - Version 2.8.0
Build Type: Release
Revision: 4a1e523
Distribution: Native

Qt 6.11.2
Debugging mode is disabled.

Operating system: Void Linux
CPU architecture: x86_64
Kernel: linux 7.3.0_1

Enabled extensions:
- Auto-Type
- KeeShare
- Hardware Keys
- Browser Integration
- Passkeys
- SSH Agent
- Secret Service Integration

Cryptographic libraries:
- Botan 3.12.0

Test log

=> keepassxc-2.8.0_1: running do_check ...
ninja: Entering directory `build'
[0/1] Running tests...
Test project /builddir/keepassxc-2.8.0/build
      Start  1: test_windows_deployqt_host_triplet_set
 1/46 Test  #1: test_windows_deployqt_host_triplet_set .....   Passed    0.00 sec
      Start  2: test_windows_deployqt_host_triplet_arm64
 2/46 Test  #2: test_windows_deployqt_host_triplet_arm64 ...   Passed    0.00 sec
      Start  3: test_windows_deployqt_host_triplet_unset
 3/46 Test  #3: test_windows_deployqt_host_triplet_unset ...   Passed    0.00 sec
      Start  4: testgroup
 4/46 Test  #4: testgroup ..................................   Passed    0.01 sec
      Start  5: testkdbx2
 5/46 Test  #5: testkdbx2 ..................................   Passed    0.02 sec
      Start  6: testkdbx3
 6/46 Test  #6: testkdbx3 ..................................   Passed    0.28 sec
      Start  7: testkdbx4
 7/46 Test  #7: testkdbx4 ..................................   Passed   12.55 sec
      Start  8: testkeys
 8/46 Test  #8: testkeys ...................................   Passed    0.24 sec
      Start  9: testgroupmodel
 9/46 Test  #9: testgroupmodel .............................   Passed    0.02 sec
      Start 10: testentrymodel
10/46 Test #10: testentrymodel .............................   Passed    0.04 sec
      Start 11: testcryptohash
11/46 Test #11: testcryptohash .............................   Passed    0.01 sec
      Start 12: testsymmetriccipher
12/46 Test #12: testsymmetriccipher ........................   Passed    0.02 sec
      Start 13: testhashedblockstream
13/46 Test #13: testhashedblockstream ......................   Passed    0.01 sec
      Start 14: testhmacblockstream
14/46 Test #14: testhmacblockstream ........................   Passed    0.01 sec
      Start 15: testkeepass2randomstream
15/46 Test #15: testkeepass2randomstream ...................   Passed    0.01 sec
      Start 16: testmodified
16/46 Test #16: testmodified ...............................   Passed    9.76 sec
      Start 17: testdeletedobjects
17/46 Test #17: testdeletedobjects .........................   Passed    0.02 sec
      Start 18: testkeepass1reader
18/46 Test #18: testkeepass1reader .........................   Passed    0.03 sec
      Start 19: testimports
19/46 Test #19: testimports ................................   Passed    0.17 sec
      Start 20: testautotype
20/46 Test #20: testautotype ...............................   Passed   17.76 sec
      Start 21: testentry
21/46 Test #21: testentry ..................................   Passed    0.02 sec
      Start 22: testmerge
22/46 Test #22: testmerge ..................................   Passed    0.18 sec
      Start 23: testpasswordgenerator
23/46 Test #23: testpasswordgenerator ......................   Passed    0.03 sec
      Start 24: testpasswordhealth
24/46 Test #24: testpasswordhealth .........................   Passed    0.01 sec
      Start 25: testpassphrasegenerator
25/46 Test #25: testpassphrasegenerator ....................   Passed    0.02 sec
      Start 26: testhibp
26/46 Test #26: testhibp ...................................   Passed    0.01 sec
      Start 27: testtotp
27/46 Test #27: testtotp ...................................   Passed    0.01 sec
      Start 28: testbase32
28/46 Test #28: testbase32 .................................   Passed    0.01 sec
      Start 29: testcsvparser
29/46 Test #29: testcsvparser ..............................   Passed    0.01 sec
      Start 30: testrandomgenerator
30/46 Test #30: testrandomgenerator ........................   Passed    0.01 sec
      Start 31: testentrysearcher
31/46 Test #31: testentrysearcher ..........................   Passed    0.01 sec
      Start 32: testcsvexporter
32/46 Test #32: testcsvexporter ............................   Passed    0.01 sec
      Start 33: testykchallengeresponsekey
33/46 Test #33: testykchallengeresponsekey .................   Passed    0.01 sec
      Start 34: testsharing
34/46 Test #34: testsharing ................................   Passed    0.03 sec
      Start 35: testdatabase
35/46 Test #35: testdatabase ...............................   Passed    0.55 sec
      Start 36: testtools
36/46 Test #36: testtools ..................................   Passed    0.02 sec
      Start 37: testconfig
37/46 Test #37: testconfig .................................   Passed    0.02 sec
      Start 38: testcli
38/46 Test #38: testcli ....................................***Failed    6.62 sec
********* Start testing of TestCli *********
Config: Using QtTest library 6.11.2, Qt 6.11.2 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 14.2.1 20250405), void unknown
PASS   : TestCli::initTestCase()
PASS   : TestCli::testBatchCommands()
PASS   : TestCli::testAdd()
PASS   : TestCli::testAddGroup()
PASS   : TestCli::testAnalyze()
PASS   : TestCli::testAttachmentExport()
PASS   : TestCli::testAttachmentImport()
PASS   : TestCli::testAttachmentRemove()
FAIL!  : TestCli::testClip() '!errorOutput.contains("All clipping programs failed")' returned FALSE. ()
   Loc: [../tests/TestCli.cpp(653)]
PASS   : TestCli::testCommandParsing(basic)
PASS   : TestCli::testCommandParsing(basic escaping)
PASS   : TestCli::testCommandParsing(quoted string)
PASS   : TestCli::testCommandParsing(multiple params)
PASS   : TestCli::testCommandParsing(quoted string inside param)
PASS   : TestCli::testCommandParsing(multiple whitespace)
PASS   : TestCli::testCommandParsing(single slash char)
PASS   : TestCli::testCommandParsing(double backslash entry name)
QWARN  : TestCli::testCreate() The -k option will be deprecated. Please use the --set-key-file option instead.
QWARN  : TestCli::testCreate() The -k option will be deprecated. Please use the --set-key-file option instead.
PASS   : TestCli::testCreate()
PASS   : TestCli::testDatabaseEdit()
QWARN  : TestCli::testDiceware() Wordlist is less than minimum acceptable size: /tmp/testcli.JEktvm
PASS   : TestCli::testDiceware()
PASS   : TestCli::testEdit()
PASS   : TestCli::testEstimate(Dictionary)
PASS   : TestCli::testEstimate(Spatial)
PASS   : TestCli::testEstimate(Spatial(Rep))
PASS   : TestCli::testEstimate(Dictionary / Sequence)
PASS   : TestCli::testEstimate(Dict+Leet)
PASS   : TestCli::testEstimate(Dictionary(Rep))
PASS   : TestCli::testEstimate(Sequence(Rep) / Dictionary)
PASS   : TestCli::testEstimate(Bruteforce(Rep) / Bruteforce)
PASS   : TestCli::testEstimate(Dictionary / Date(Rep))
PASS   : TestCli::testEstimate(Dictionary / Date / Bruteforce)
PASS   : TestCli::testEstimate(Strong Password)
PASS   : TestCli::testEstimate(Strong Passphrase)
PASS   : TestCli::testExport()
PASS   : TestCli::testGenerate(default)
PASS   : TestCli::testGenerate(length)
PASS   : TestCli::testGenerate(lowercase)
PASS   : TestCli::testGenerate(uppercase)
PASS   : TestCli::testGenerate(numbers)
PASS   : TestCli::testGenerate(special)
PASS   : TestCli::testGenerate(special (exclude))
PASS   : TestCli::testGenerate(extended)
PASS   : TestCli::testGenerate(numbers + lowercase + uppercase)
PASS   : TestCli::testGenerate(numbers + lowercase + uppercase (exclude))
PASS   : TestCli::testGenerate(numbers + lowercase + uppercase (exclude similar))
PASS   : TestCli::testGenerate(uppercase + lowercase (every))
PASS   : TestCli::testGenerate(numbers + lowercase (every))
PASS   : TestCli::testGenerate(custom character set)
PASS   : TestCli::testGenerate(custom character set without extra options uses only custom chars)
QWARN  : TestCli::testImport() The -k option will be deprecated. Please use the --set-key-file option instead.
QWARN  : TestCli::testImport() The -k option will be deprecated. Please use the --set-key-file option instead.
PASS   : TestCli::testImport()
PASS   : TestCli::testInfo()
PASS   : TestCli::testKeyFileOption()
PASS   : TestCli::testNoPasswordOption()
PASS   : TestCli::testHelp()
PASS   : TestCli::testInteractiveCommands()
PASS   : TestCli::testList()
PASS   : TestCli::testMerge()
QWARN  : TestCli::testMergeWithKeys() The -k option will be deprecated. Please use the --set-key-file option instead.
QWARN  : TestCli::testMergeWithKeys() The -k option will be deprecated. Please use the --set-key-file option instead.
PASS   : TestCli::testMergeWithKeys()
PASS   : TestCli::testMove()
PASS   : TestCli::testOpen()
PASS   : TestCli::testRemove()
PASS   : TestCli::testRemoveGroup()
PASS   : TestCli::testRemoveQuiet()
PASS   : TestCli::testSearch()
PASS   : TestCli::testShow()
PASS   : TestCli::testInvalidDbFiles()
SKIP   : TestCli::testYubiKeyOption() No YubiKey devices were detected.
   Loc: [../tests/TestCli.cpp(2258)]
PASS   : TestCli::testNonAscii()
PASS   : TestCli::testTextStream(UTF-8)
PASS   : TestCli::testTextStream(UTF-16)
PASS   : TestCli::testTextStream(UTF-16LE)
PASS   : TestCli::testTextStream(Utf16LE)
PASS   : TestCli::testTextStream(UTF-32)
PASS   : TestCli::testTextStream(Utf32)
PASS   : TestCli::testTextStream(UTF-32BE)
PASS   : TestCli::testTextStream(Utf32BE)
PASS   : TestCli::testTextStream(UTF-32LE)
PASS   : TestCli::testTextStream(Utf32LE)
PASS   : TestCli::testTextStream(ISO-8859-1)
PASS   : TestCli::testTextStream(Latin1)
PASS   : TestCli::testTextStream(Windows-850)
PASS   : TestCli::testTextStream(Windows-1252)
PASS   : TestCli::testTextStream(System)
PASS   : TestCli::cleanupTestCase()
Totals: 82 passed, 1 failed, 1 skipped, 0 blacklisted, 6599ms
********* Finished testing of TestCli *********

      Start 39: testopensshkey
39/46 Test #39: testopensshkey .............................   Passed    0.71 sec
      Start 40: testsshagent
40/46 Test #40: testsshagent ...............................   Passed    0.03 sec
      Start 41: testfdosecrets
41/46 Test #41: testfdosecrets .............................   Passed    0.02 sec
      Start 42: testbrowser
42/46 Test #42: testbrowser ................................   Passed    0.04 sec
      Start 43: testpasskeys
43/46 Test #43: testpasskeys ...............................   Passed    0.02 sec
      Start 44: testurltools
44/46 Test #44: testurltools ...............................   Passed    0.01 sec
      Start 45: testupdatecheck
45/46 Test #45: testupdatecheck ............................   Passed    0.02 sec
      Start 46: testicondownloader
46/46 Test #46: testicondownloader .........................   Passed    0.59 sec

98% tests passed, 1 tests failed out of 46

Total Test time (real) =  49.98 sec

The following tests FAILED:
         38 - testcli (Failed)
Errors while running CTest
FAILED: [code=8] CMakeFiles/test.util
cd /builddir/keepassxc-2.8.0/build && /usr/libexec/xbps-src/bin/ctest
ninja: build stopped: subcommand failed.

cc @Piraty

@Vinfall

Vinfall commented Oct 22, 2026

Copy link
Copy Markdown
Contributor Author

Looks like I need to disable docs generation on these architectures?🤔

 [390/636] Linking CXX static library src/cli/libcli.a
[391/636] Generating keepassxc_ar.qm
FAILED: [code=126] share/translations/keepassxc_ar.qm /builddir/keepassxc-2.8.0/build/share/translations/keepassxc_ar.qm 
cd /builddir/keepassxc-2.8.0/build/share/translations && /usr/aarch64-linux-musl/usr/lib64/qt6/bin/lrelease /builddir/keepassxc-2.8.0/share/translations/keepassxc_ar.ts -qm /builddir/keepassxc-2.8.0/build/share/translations/keepassxc_ar.qm
/bin/sh: line 1: /usr/aarch64-linux-musl/usr/lib64/qt6/bin/lrelease: cannot execute binary file: Exec format error
[392/636] Building CXX object tests/CMakeFiles/testsupport.dir/util/TemporaryFile.cpp.o
[393/636] Building CXX object tests/CMakeFiles/testsupport.dir/mock/MockClock.cpp.o
[394/636] Building CXX object tests/CMakeFiles/testsupport.dir/modeltest.cpp.o
ninja: build stopped: subcommand failed.
=> ERROR: keepassxc-2.8.0_1: do_build: '${make_cmd} ${makejobs} ${XBPS_VERBOSE+${make_verbose}} ${make_build_args} ${make_build_target}' exited with 126
=> ERROR:   in do_build() at common/build-style/cmake.sh:102

Error: Process completed with exit code 1.

Comment thread srcpkgs/keepassxc/template Outdated
-DKPXC_FEATURE_FDOSECRETS=$(vopt_if fdosecrets ON OFF)
-DKPXC_FEATURE_NETWORK=$(vopt_if network ON OFF)
-DKPXC_FEATURE_SSHAGENT=$(vopt_if sshagent ON OFF)"
hostmakedepends="qt6-base-devel ruby-asciidoctor pkg-config"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
hostmakedepends="qt6-base-devel ruby-asciidoctor pkg-config"
hostmakedepends="qt6-base qt6-tools ruby-asciidoctor pkg-config"

qt6-base-devel in hostmakedepends is nearly always wrong, adding qt6-tools should help with the lrelease error

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You are right, I mistook it as makedepends.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The change itself surely applies, but the error does not go away with it.🤔

@Vinfall
Vinfall force-pushed the keepassxc branch 2 times, most recently from ad6cd19 to 26b8218 Compare October 22, 2026 13:20
@Piraty

Piraty commented Oct 23, 2026

Copy link
Copy Markdown
Member

i have a ready branch since 2.8.0beta1, just be patient

@Piraty Piraty closed this Oct 23, 2026
@Vinfall
Vinfall deleted the keepassxc branch October 24, 2026 00:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants