# Copyright 1999-2025 Gentoo Authors # Copyright 2026 Bryan Gardiner # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit cmake xdg DESCRIPTION="Secure, cross-platform password manager (fork of KeePassXC 2.7.10)" HOMEPAGE="https://chipass.org/" if [[ "${PV}" = *9999* ]] ; then inherit git-r3 EGIT_BRANCH="main" EGIT_REPO_URI="https://codeberg.org/ChiPass/ChiPass" else if [[ "${PV}" == *_beta* ]] ; then SRC_URI="https://codeberg.org/ChiPass/ChiPass/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${P/_/-}" else SRC_URI="https://codeberg.org/ChiPass/ChiPass/archive/${PV}.tar.gz -> ${P}.tar.gz" fi KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" fi # COPYING order LICENSE="|| ( GPL-2 GPL-3 ) BSD LGPL-2.1 MIT LGPL-2 CC0-1.0 Apache-2.0 GPL-2+ BSD-2" SLOT="0" IUSE="X autotype browser doc keeshare +keyring +network +ssh-agent test yubikey" RESTRICT="!test? ( test )" REQUIRED_USE="autotype? ( X )" RDEPEND=" !app-admin/keepassxc app-crypt/argon2:= dev-libs/botan:3= dev-libs/zxcvbn-c dev-qt/qt5compat:6 dev-qt/qtbase:6=[concurrent,dbus,gui,network,widgets] dev-qt/qtsvg:6 media-gfx/qrencode:= sys-libs/readline:0= virtual/minizip:= autotype? ( x11-libs/libX11 x11-libs/libXtst ) yubikey? ( dev-libs/libusb:1 sys-apps/pcsc-lite ) " DEPEND=" ${RDEPEND} test? ( dev-qt/qtbase:6[test] ) " BDEPEND=" doc? ( dev-ruby/asciidoctor ) " src_prepare() { if ! [[ "${PV}" =~ _beta|9999 ]]; then echo "${PV}" > .version || die fi # Unbundle zxcvbn, bug 958062 rm -r ./src/thirdparty/zxcvbn || die cmake_src_prepare } src_configure() { local -a mycmakeargs=( # Gentoo users enable ccache via e.g. FEATURES=ccache or # other means. We don't want the build system to enable it for us. -DWITH_CCACHE="OFF" -DWITH_GUI_TESTS="OFF" -DWITH_XC_BOTAN3="ON" -DWITH_XC_UPDATECHECK="OFF" -DWITH_TESTS="$(usex test)" -DWITH_XC_AUTOTYPE="$(usex autotype)" -DWITH_XC_BROWSER="$(usex browser)" -DWITH_XC_BROWSER_PASSKEYS="$(usex browser)" -DWITH_XC_DOCS="$(usex doc)" -DWITH_XC_FDOSECRETS="$(usex keyring)" -DWITH_XC_KEESHARE="$(usex keeshare)" -DWITH_XC_NETWORKING="$(usex network)" -DWITH_XC_SSHAGENT="$(usex ssh-agent)" -DWITH_XC_X11="$(usex X)" -DWITH_XC_YUBIKEY="$(usex yubikey)" ) if [[ "${PV}" == *_beta* ]] ; then mycmakeargs+=( -DOVERRIDE_VERSION="${PV/_/-}" ) fi cmake_src_configure }