aports/community/keepassxc/APKBUILD
2025-03-29 13:50:03 +00:00

118 lines
3.2 KiB
Text

# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Contributor: August Klein <amatcoder@gmail.com>
# Contributor: Orson Teodoro <orsonteodoro@hotmail.com>
# Contributor: Max Rees <maxcrees@me.com>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=keepassxc
pkgver=2.7.10
pkgrel=0
pkgdesc="Community-driven port of the Windows application Keepass Password Safe"
url="https://keepassxc.org/"
arch="all"
license="GPL-2.0-only OR GPL-3.0-only"
provides="dbus:org.freedesktop.Secrets"
provider_priority=5 # Smallest priority, unusual setup
depends="hicolor-icon-theme"
makedepends="
argon2-dev
asciidoctor
botan3-dev
cmake
libqrencode-dev
libusb-dev
libxi-dev
libxtst-dev
minizip-dev
pcsc-lite-dev
qt5-qtbase-dev
qt5-qtsvg-dev
qt5-qttools-dev
qt5-qtx11extras-dev
readline-dev
samurai
zlib-dev
"
checkdepends="dbus xclip xvfb-run"
install="$pkgname.post-upgrade"
subpackages="
$pkgname-doc
$pkgname-lang::noarch
$pkgname-autotype
$pkgname-firefox-manifest:_firefox_manifest:noarch
"
source="https://github.com/keepassxreboot/keepassxc/archive/refs/tags/$pkgver/keepassxc-$pkgver.tar.gz
tests.patch
doc-path.patch
org.keepassxc.keepassxc_browser.json
"
build() {
export CXXFLAGS="$CXXFLAGS -flto=auto"
cmake -G Ninja -B build \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=/usr/lib \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DKEEPASSXC_BUILD_TYPE=Release \
-DWITH_XC_AUTOTYPE=ON \
-DWITH_XC_NETWORKING=ON \
-DWITH_XC_BROWSER=ON \
-DWITH_XC_BROWSER_PASSKEYS=ON \
-DWITH_XC_YUBIKEY=ON \
-DWITH_XC_SSHAGENT=ON \
-DWITH_XC_KEESHARE=ON \
-DWITH_XC_UPDATECHECK=OFF \
-DWITH_XC_FDOSECRETS=ON \
-DWITH_GUI_TESTS=ON
cmake --build build
}
check() {
QT_QPA_PLATFORM=xcb xvfb-run -a ctest --test-dir build -j1
}
package() {
DESTDIR="$pkgdir" cmake --install build
install -D -m 0644 -t "$pkgdir"/usr/lib/mozilla/native-messaging-hosts \
"$srcdir"/org.keepassxc.keepassxc_browser.json
install -D -m 0644 -t "$pkgdir"/usr/share/doc/$pkgname/ \
CHANGELOG.md README.md
rm -rf "$pkgdir"/usr/share/keepassxc/docs
}
lang() {
pkgdesc="Languages for package $pkgname"
depends=""
install_if="$pkgname=$pkgver-r$pkgrel lang"
local langdir='usr/share/keepassxc/translations'
amove $langdir
mkdir -p "$pkgdir"/$langdir
mv "$subpkgdir"/$langdir/keepassxc_en_US.qm "$pkgdir"/$langdir/
}
autotype() {
pkgdesc="KeePassXC Auto-Type feature for X11"
install_if="$pkgname=$pkgver-r$pkgrel xorg-server"
depends=""
amove usr/lib/keepassxc/libkeepassxc-autotype-xcb.so
}
_firefox_manifest() {
pkgdesc="KeePassXC native app manifest for Firefox (Browser extension not included)"
depends=""
amove usr/lib/mozilla
}
sha512sums="
265edbafdfd2951219fac8f28fe72672be798dbd93242d6b6d528a017adfed2f16f98ad753b6cdff0eca3f4d7158c9de87aa626ff7e66d3bac470595e248e271 keepassxc-2.7.10.tar.gz
17b70ceffd0f70a83fc64c607db3019548e16ca3101e101300d7e930842664936759bbfe06a4a872b436feccc2e7a4b203de8ea47abfa151bd23d8eddaa3b858 tests.patch
f1d1978db4da56064f6f7eb37f61f82169020afc18de3be4afbe46f6bbb6292cc9551bf07a454a89bc5b09ebe72a153f08bff9f62492e3c1b69b6919da8be94e doc-path.patch
977f1f76c8c7be819b51417481664bf22d3138978f450bf2b762ebad8f4aee7f6384f090f66b5bee8c0a2a182d4f578c1c4c6cd9a2d80ab65716e24c65d43aee org.keepassxc.keepassxc_browser.json
"