summaryrefslogtreecommitdiff
path: root/sys-apps
diff options
context:
space:
mode:
authorSergio <sergiotarxz@posteo.net>2026-09-17 09:22:06 +0200
committerSergio <sergiotarxz@posteo.net>2026-09-17 09:22:06 +0200
commitbf8946aa0871704b3dfc8f9f4b9010bdc3426aca (patch)
treed079d3b233b31e6bdacc607003df485b3dcd0e6b /sys-apps
parent594333594f63d7cf7ecd45c20e132b9b353336c3 (diff)
parent26848107409f08ee79da713b24ec322c4b00a9b4 (diff)
Merge branch 'master' of https://gitweb.gentoo.org/repo/gentoov1.0.0-rc19
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/pcsc-lite/Manifest2
-rw-r--r--sys-apps/pcsc-lite/files/pcsc-lite-2.5.1-systemd-sysusers-fixup.patch11
-rw-r--r--sys-apps/pcsc-lite/pcsc-lite-2.5.1.ebuild117
3 files changed, 130 insertions, 0 deletions
diff --git a/sys-apps/pcsc-lite/Manifest b/sys-apps/pcsc-lite/Manifest
index cb5c29950b7f..dc1f93dc88cb 100644
--- a/sys-apps/pcsc-lite/Manifest
+++ b/sys-apps/pcsc-lite/Manifest
@@ -1,3 +1,5 @@
DIST pcsc-lite-2.4.0.tar.xz 211940 BLAKE2B 2211cf0cfde8006ece93e0704b2ffbeaeea827b43eaaabfb2abb1061b76d18b407779d509f2de07784a35ae6ca254c107339c51a1d10b17ae346c387900345b3 SHA512 5b662f3902fc352cdf83b0f819fa955781cc755a977bf78a97c86178ba6c66d9c7c489af9ccaf8e534255951c12e88e80f6684af4aed3f0dcd97bba23eec5cd3
DIST pcsc-lite-2.4.1.tar.xz 212412 BLAKE2B c26f0e4999a35588b30ed6835c1bb12d7cec96e34a7ee2e71a29f601eb8b64ce59963fd2a2645a646d2f6432fc4de27177c01536d3d36c04f5a961b9888f665c SHA512 e35924b0f983aaa4b0b5f7b9e59d09609ea8c83e94137c8c985e5d6fff1ca9c6a52a742306edd3cd72f5c14fc9cb0a22b86c0f3f23f4836d3d01a2ccb8f1b4e5
DIST pcsc-lite-2.4.1.tar.xz.asc 833 BLAKE2B 4a80654899695d3ee171ff2f756df0292648d6810248ffef3237af475b22c5d555b302c1a94e75804818bb02087e6809bcaecd34f74de95b52e97d79df07b2cc SHA512 2fcb3fa97e1a002ec1228719447f0d904b2acf6449a2eea90380aa1cfaa0bfe890b194969cfb83edf9e117c9d7f41c70c24ca9303c4afd0d631766a10521a107
+DIST pcsc-lite-2.5.1.tar.xz 207788 BLAKE2B 8c9d77f8cd3a1d149f845deeae26cbbddc2ff54af3acb46f5d220ecc890c33bd3b4bd3df2fa97f1bd89dfc67fdcaa151e72c077d2c7b94c22669d882c6b5dc1f SHA512 027851359b38cf56c2ea97a969c0ae8c5eabbb977fc2a86c650c6c8e0e2caba43934f3de35573deb408bf6365e9deb2a9c443b3712b313692069421c77222057
+DIST pcsc-lite-2.5.1.tar.xz.asc 833 BLAKE2B 7bbd65e8936b5b24370ef5613ac4c1ee7245de4cb2d9569ffa32da8504da727ba2210b2d5063103932ac6844995272a51f87e076ad57d7e747f3e92f574e0b8d SHA512 290b7ba08bb9890e48b85d9f4bc4f523c9228703b35e5cb1d4691f0fb43dfde38601e0ef2077b5b4cab62cc208bcfdaa8d035f44d90d61a242ff877a91cc9767
diff --git a/sys-apps/pcsc-lite/files/pcsc-lite-2.5.1-systemd-sysusers-fixup.patch b/sys-apps/pcsc-lite/files/pcsc-lite-2.5.1-systemd-sysusers-fixup.patch
new file mode 100644
index 000000000000..ebd40ff211b8
--- /dev/null
+++ b/sys-apps/pcsc-lite/files/pcsc-lite-2.5.1-systemd-sysusers-fixup.patch
@@ -0,0 +1,11 @@
+--- a/meson.build
++++ b/meson.build
+@@ -155,7 +155,7 @@
+ sysusersdir = systemd.get_variable(pkgconfig : 'sysusersdir')
+ else
+ systemdsystemunitdir = get_option('prefix') / 'lib' / 'systemd' / systemdunit
+- sysusersdir = get_option('prefix') / 'sysusers.d'
++ sysusersdir = get_option('prefix') / 'lib' / 'sysusers.d'
+ endif
+
+ if not compiler.has_function('socket')
diff --git a/sys-apps/pcsc-lite/pcsc-lite-2.5.1.ebuild b/sys-apps/pcsc-lite/pcsc-lite-2.5.1.ebuild
new file mode 100644
index 000000000000..e0acc8b0b9c3
--- /dev/null
+++ b/sys-apps/pcsc-lite/pcsc-lite-2.5.1.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..15} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/ludovicrousseau.asc
+inherit meson-multilib python-single-r1 tmpfiles udev verify-sig
+
+DESCRIPTION="PC/SC Architecture smartcard middleware library"
+HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC"
+SRC_URI="
+ https://pcsclite.apdu.fr/files/${P}.tar.xz
+ verify-sig? ( https://pcsclite.apdu.fr/files/${P}.tar.xz.asc )
+"
+
+# GPL-2 is there for the init script; everything else comes from
+# upstream.
+LICENSE="BSD GPL-3+ BSD-2 ISC GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+# This is called libusb so that it doesn't fool people in thinking that
+# it is _required_ for USB support. Otherwise they'll disable udev and
+# that's going to be worse.
+IUSE="embedded libusb policykit selinux systemd +udev"
+REQUIRED_USE="^^ ( udev libusb ) ${PYTHON_REQUIRED_USE}"
+
+# No dependencies need the MULTILIB_DEPS because the libraries are actually
+# standalone, the deps are only needed for the daemon itself.
+DEPEND="
+ libusb? ( virtual/libusb:1 )
+ udev? ( virtual/libudev:= )
+ policykit? ( >=sys-auth/polkit-0.111 )
+ acct-group/openct
+ acct-group/pcscd
+ acct-user/pcscd
+ ${PYTHON_DEPS}
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-pcscd )
+"
+BDEPEND="
+ app-alternatives/lex
+ virtual/pkgconfig
+ verify-sig? ( sec-keys/openpgp-keys-ludovicrousseau )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.4.0-change-setup-spy-script-location.patch
+ "${FILESDIR}"/${PN}-2.5.1-systemd-sysusers-fixup.patch
+)
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Dusbdropdir="${EPREFIX}"/usr/$(get_libdir)/readers/usb
+ -Dipcdir=/run/pcscd
+ -Dsystemdunit=system
+ $(meson_native_use_bool embedded)
+ $(meson_native_use_bool systemd libsystemd)
+ $(meson_native_use_bool udev libudev)
+ $(meson_native_use_bool libusb)
+ $(meson_native_use_bool policykit polkit)
+ )
+
+ meson_src_configure
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ dodoc HELP SECURITY
+
+ newinitd "${FILESDIR}"/pcscd-init.7 pcscd
+ dotmpfiles "${FILESDIR}"/pcscd.conf
+
+ if use udev; then
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/pcscd-udev pcscd.sh
+
+ insinto "$(get_udevdir)"/rules.d
+ newins "${FILESDIR}"/99-pcscd-hotplug-r2.rules 99-pcscd-hotplug.rules
+ fi
+
+ python_fix_shebang "${ED}"/usr/bin/pcsc-spy
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
+ elog "the pcscd group, to avoid running as root."
+ elog
+ elog "This also means you need the newest drivers available so that the"
+ elog "devices get the proper owner."
+ elog
+ elog "Furthermore, a conf.d file is no longer installed by default, as"
+ elog "the default configuration does not require one. If you need to"
+ elog "pass further options to pcscd, create a file and set the"
+ elog "EXTRA_OPTS variable."
+ elog
+
+ if use udev; then
+ elog "Hotplug support is provided by udev rules."
+ elog "When using OpenRC you additionally need to tell it to hotplug"
+ elog "pcscd by setting this variable in /etc/rc.conf:"
+ elog
+ elog " rc_hotplug=\"pcscd\""
+ fi
+
+ tmpfiles_process pcscd.conf
+
+ use udev && udev_reload
+}
+
+pkg_postrm() {
+ use udev && udev_reload
+}