commit: a8a86dfb03b98f37ac0e3463396dc3be5801055c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 4 02:14:28 2026 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 4 02:21:38 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8a86dfb
sys-apps/pcsc-lite: add 2.4.1
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-apps/pcsc-lite/Manifest | 2 +
sys-apps/pcsc-lite/pcsc-lite-2.4.1.ebuild | 117 ++++++++++++++++++++++++++++++
2 files changed, 119 insertions(+)
diff --git a/sys-apps/pcsc-lite/Manifest b/sys-apps/pcsc-lite/Manifest
index c9c7094f8b16..cb5c29950b7f 100644
--- a/sys-apps/pcsc-lite/Manifest
+++ b/sys-apps/pcsc-lite/Manifest
@@ -1 +1,3 @@
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
diff --git a/sys-apps/pcsc-lite/pcsc-lite-2.4.1.ebuild
b/sys-apps/pcsc-lite/pcsc-lite-2.4.1.ebuild
new file mode 100644
index 000000000000..57149a23351e
--- /dev/null
+++ b/sys-apps/pcsc-lite/pcsc-lite-2.4.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..13} )
+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.4.0-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
+}