mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-04-07 03:10:15 -04:00
* EAPI 8 * Migrate to Qt6 * Remove unusual/unheard of files that don't seem to integrate with other tools - /etc/menu/tomb - /usr/lib/mime/packages/tomb * Wire up tests where possible Signed-off-by: Lucio Sauer <watermanpaint@posteo.net>
146 lines
3.2 KiB
Bash
146 lines
3.2 KiB
Bash
# Copyright 1999-2025 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit desktop optfeature prefix qmake-utils toolchain-funcs xdg
|
|
|
|
DESCRIPTION="The Linux Crypto Undertaker"
|
|
HOMEPAGE="
|
|
https://dyne.org/software/tomb/
|
|
https://github.com/dyne/Tomb
|
|
"
|
|
SRC_URI="https://files.dyne.org/tomb/releases/Tomb-${PV}.tar.gz"
|
|
|
|
S="${WORKDIR}/${P^}"
|
|
|
|
# doc/literate/shocco - MIT
|
|
LICENSE="GPL-3 MIT gui? ( GPL-3+ )"
|
|
SLOT="0"
|
|
KEYWORDS="~amd64"
|
|
IUSE="gui tray"
|
|
|
|
PATCHES=(
|
|
"${FILESDIR}/${P}-gtomb.patch"
|
|
"${FILESDIR}/${P}-qt-tray.patch"
|
|
"${FILESDIR}/${PN}-2.9-respect-ldflags.patch"
|
|
)
|
|
|
|
DEPEND="
|
|
dev-libs/libgcrypt:=
|
|
tray? (
|
|
dev-qt/qtbase:6[gui,network,widgets]
|
|
dev-qt/qtdeclarative:6
|
|
)
|
|
"
|
|
RDEPEND="
|
|
${DEPEND}
|
|
app-crypt/gnupg
|
|
app-crypt/pinentry
|
|
app-shells/zsh
|
|
sys-fs/cryptsetup
|
|
sys-fs/e2fsprogs[tools]
|
|
gui? ( gnome-extra/zenity )
|
|
"
|
|
BDEPEND="
|
|
dev-python/markdown
|
|
dev-python/pygments
|
|
sys-devel/gettext
|
|
"
|
|
|
|
src_prepare() {
|
|
default
|
|
hprefixify tomb extras/gtomb
|
|
eprefixify extras/qt-tray/main.cpp
|
|
}
|
|
|
|
src_compile() {
|
|
export CFLAGS LDFLAGS PREFIX="${EPREFIX}/usr"
|
|
tc-export CC
|
|
|
|
emake all -C extras/kdf-keys
|
|
emake all -C doc/literate
|
|
if use tray ; then
|
|
pushd extras/qt-tray > /dev/null || die
|
|
eqmake6
|
|
emake all
|
|
popd > /dev/null || die
|
|
fi
|
|
}
|
|
|
|
src_test() {
|
|
# test require sudo, can't be done non interactively
|
|
# emake TEST_OPTS="--verbose --immediate --root="${T}"/tomb/sharness" test
|
|
emake test -C extras/kdf-keys
|
|
}
|
|
|
|
src_install() {
|
|
local -x DESTDIR="${D}"
|
|
|
|
default
|
|
emake install -C extras/translations
|
|
emake install -C extras/kdf-keys
|
|
if use gui ; then
|
|
pushd extras/gtomb > /dev/null || die
|
|
dobin gtomb
|
|
newdoc README.md README-gtomb
|
|
popd > /dev/null || die
|
|
fi
|
|
if use tray ; then
|
|
pushd extras/qt-tray > /dev/null || die
|
|
dobin tomb-qt-tray
|
|
doicon pixmaps/tomb_icon.png
|
|
insinto /usr/share/locale/it_IT/LC_MESSAGES
|
|
doins i18n/tomb-qt-tray_it.qm
|
|
popd > /dev/null || die
|
|
fi
|
|
|
|
pushd extras/gtk-tray > /dev/null || die
|
|
doicon monmort.xpm
|
|
newicon --context mimetypes --size 32 monmort.xpm monmort
|
|
newicon --size 32 monmort.xpm dyne-monmort
|
|
popd > /dev/null || die
|
|
|
|
pushd extras/desktop > /dev/null || die
|
|
insinto /usr/share/mime/packages
|
|
doins dyne-tomb.xml
|
|
domenu tomb.desktop
|
|
insinto /usr/share/mime-info
|
|
doins tomb.mime
|
|
doins tomb.keys
|
|
insinto /usr/share/application-registry
|
|
doins tomb.applications
|
|
popd > /dev/null || die
|
|
|
|
local DOCS=(
|
|
AUTHORS.txt
|
|
ChangeLog.txt
|
|
KNOWN_BUGS.txt
|
|
README.txt
|
|
doc/bertini_thesis.pdf
|
|
doc/HACKING.txt
|
|
doc/KEY_SPECIFICATIONS.txt
|
|
doc/LinuxHDEncSettings.txt
|
|
doc/Luks_on_disk_format.pdf
|
|
doc/New_methods_in_HD_encryption.pdf
|
|
doc/TKS1-draft.pdf
|
|
doc/tomb_manpage.pdf
|
|
)
|
|
einstalldocs
|
|
cd doc/literate || die
|
|
docinto html
|
|
dodoc -r *.html *.css public
|
|
}
|
|
|
|
pkg_postinst() {
|
|
xdg_pkg_postinst
|
|
optfeature "Argon2 KDF" app-crypt/argon2
|
|
optfeature "ACL" sys-apps/acl
|
|
optfeature "privilege escalation to superuser" app-admin/doas app-admin/sudo sys-auth/polkit
|
|
optfeature "fancy dd output" sys-apps/dcfldd
|
|
optfeature "tomb index/search file contents" app-misc/recoll
|
|
optfeature "tomb index/search file names" sys-apps/mlocate sys-apps/plocate
|
|
optfeature "tomb engrave" "media-gfx/qrencode[png]"
|
|
optfeature "tomb slam" sys-process/lsof
|
|
}
|