blob: d9791c330cb2f112bdbd88444ef7166fc149934a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop xdg
DESCRIPTION="Yubico Authenticator for TOTP"
HOMEPAGE="
https://developers.yubico.com/yubioath-flutter/
https://github.com/Yubico/yubioath-flutter"
SRC_URI="https://github.com/Yubico/yubioath-flutter/releases/download/${PV}/yubico-authenticator-${PV}-linux.tar.gz"
S="${WORKDIR}/yubico-authenticator-${PV}-linux"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="-* ~amd64"
RDEPEND="
app-accessibility/at-spi2-core:2
app-crypt/ccid
dev-libs/glib:2
media-libs/fontconfig
media-libs/harfbuzz
media-libs/libepoxy
sys-libs/glibc
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libnotify
x11-libs/libxcb
x11-libs/pango"
BDEPEND="app-admin/chrpath"
# "Modern" app, built using Google's flutter framework.
#
# Don't even *think* about unbundling the dependencies, they're all
# hardcoded into the main binary and the helper, including but not
# limited to a full-fledged python interpreter that gets dlopen'd, an
# assortment of python packages, the X11 kitchen sink, random GCC
# libraries, and OpenSSL 1.1, oftentimes using git checkouts instead of
# released versioned libraries.
#
# The only way to avoid this mess would be to build flutter from source,
# but unfortunately life is too short to be dealing with whatever is
# Google's framework-de-jour on a regular basis.
QA_PREBUILT="opt/yubico-authenticator/*"
src_install() {
einstalldocs
rm -r README* || die
sed -e 's|@EXEC_PATH/authenticator|authenticator|' \
-e 's|@EXEC_PATH/linux_support/com.yubico.yubioath.png|com.yubico.yubioath|g' \
-i linux_support/com.yubico.authenticator.desktop || die
domenu linux_support/com.yubico.authenticator.desktop
doicon -s 128 linux_support/com.yubico.yubioath.png
rm -r linux_support || die
exeinto /opt/yubico-authenticator
doexe authenticator
rm authenticator || die
exeinto /opt/yubico-authenticator/helper
doexe helper/authenticator-helper
rm helper/authenticator-helper || die
# prevent rpath_security_checks() trigger
chrpath -d helper/_internal/libjpeg-*.so* helper/_internal/pillow.libs/libjpeg-*.so* || die
insinto /opt/yubico-authenticator
doins -r .
dosym ../../opt/yubico-authenticator/authenticator /usr/bin/authenticator
}
pkg_postinst() {
xdg_pkg_postinst
elog "Make sure you are a member of the pcscd group"
elog "and the pcscd service is running."
}
|