From 53b29173a0335a701414cc0128e200312e5e73b2 Mon Sep 17 00:00:00 2001 From: David Seifert Date: Sun, 4 Sep 2022 01:54:23 +0200 Subject: sys-apps/pcsc-lite: adjust permissions for /run/pcscd/pcscd.pid Signed-off-by: David Seifert --- .../files/pcsc-lite-1.9.8-systemd-user.patch | 6 +- sys-apps/pcsc-lite/files/pcscd.conf | 1 + sys-apps/pcsc-lite/pcsc-lite-1.9.8-r1.ebuild | 106 -------------------- sys-apps/pcsc-lite/pcsc-lite-1.9.8-r2.ebuild | 109 +++++++++++++++++++++ 4 files changed, 115 insertions(+), 107 deletions(-) create mode 100644 sys-apps/pcsc-lite/files/pcscd.conf delete mode 100644 sys-apps/pcsc-lite/pcsc-lite-1.9.8-r1.ebuild create mode 100644 sys-apps/pcsc-lite/pcsc-lite-1.9.8-r2.ebuild (limited to 'sys-apps') diff --git a/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch b/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch index 4cda6999224e..4d64c5c032f0 100644 --- a/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch +++ b/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch @@ -3,7 +3,11 @@ https://bugs.gentoo.org/545390 --- a/etc/pcscd.service.in +++ b/etc/pcscd.service.in -@@ -7,6 +7,8 @@ +@@ -4,9 +4,12 @@ + Documentation=man:pcscd(8) + + [Service] ++PIDFile=/run/pcscd/pcscd.pid ExecStart=@sbindir_exp@/pcscd --foreground --auto-exit $PCSCD_ARGS ExecReload=@sbindir_exp@/pcscd --hotplug EnvironmentFile=-@sysconfdir@/default/pcscd diff --git a/sys-apps/pcsc-lite/files/pcscd.conf b/sys-apps/pcsc-lite/files/pcscd.conf new file mode 100644 index 000000000000..168c860e88c8 --- /dev/null +++ b/sys-apps/pcsc-lite/files/pcscd.conf @@ -0,0 +1 @@ +d /run/pcscd 0755 pcscd pcscd - diff --git a/sys-apps/pcsc-lite/pcsc-lite-1.9.8-r1.ebuild b/sys-apps/pcsc-lite/pcsc-lite-1.9.8-r1.ebuild deleted file mode 100644 index 2443f777b019..000000000000 --- a/sys-apps/pcsc-lite/pcsc-lite-1.9.8-r1.ebuild +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8..11} ) - -inherit python-single-r1 systemd udev multilib-minimal - -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.bz2" - -# GPL-2 is there for the init script; everything else comes from -# upstream. -LICENSE="BSD ISC MIT GPL-3+ GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~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="doc 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=" - sys-devel/flex - virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch - "${FILESDIR}"/${PN}-1.9.8-systemd-user.patch -) - -multilib_src_configure() { - ECONF_SOURCE="${S}" econf \ - --disable-maintainer-mode \ - --disable-strict \ - --enable-usbdropdir="${EPREFIX}"/usr/$(get_libdir)/readers/usb \ - --enable-ipcdir=/run/pcscd \ - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \ - $(multilib_native_use_enable doc documentation) \ - $(multilib_native_use_enable embedded) \ - $(multilib_native_use_enable systemd libsystemd) \ - $(multilib_native_use_enable udev libudev) \ - $(multilib_native_use_enable libusb) \ - $(multilib_native_use_enable policykit polkit) -} - -multilib_src_install_all() { - einstalldocs - dodoc HELP SECURITY - - newinitd "${FILESDIR}"/pcscd-init.7 pcscd - - if use udev; then - exeinto "$(get_udevdir)" - newexe "${FILESDIR}"/pcscd-udev pcscd.sh - - insinto "$(get_udevdir)"/rules.d - newins "${FILESDIR}"/99-pcscd-hotplug-r1.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 - - use udev && udev_reload -} - -pkg_postrm() { - use udev && udev_reload -} diff --git a/sys-apps/pcsc-lite/pcsc-lite-1.9.8-r2.ebuild b/sys-apps/pcsc-lite/pcsc-lite-1.9.8-r2.ebuild new file mode 100644 index 000000000000..6ec37345d133 --- /dev/null +++ b/sys-apps/pcsc-lite/pcsc-lite-1.9.8-r2.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..11} ) + +inherit python-single-r1 systemd tmpfiles udev multilib-minimal + +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.bz2" + +# GPL-2 is there for the init script; everything else comes from +# upstream. +LICENSE="BSD ISC MIT GPL-3+ GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~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="doc 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=" + sys-devel/flex + virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch + "${FILESDIR}"/${PN}-1.9.8-systemd-user.patch +) + +multilib_src_configure() { + ECONF_SOURCE="${S}" econf \ + --disable-maintainer-mode \ + --disable-strict \ + --enable-usbdropdir="${EPREFIX}"/usr/$(get_libdir)/readers/usb \ + --enable-ipcdir=/run/pcscd \ + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \ + $(multilib_native_use_enable doc documentation) \ + $(multilib_native_use_enable embedded) \ + $(multilib_native_use_enable systemd libsystemd) \ + $(multilib_native_use_enable udev libudev) \ + $(multilib_native_use_enable libusb) \ + $(multilib_native_use_enable policykit polkit) +} + +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-r1.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 +} -- cgit v1.2.3-65-gdbad