public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/pcsc-lite/, sys-apps/pcsc-lite/files/
Date: Sun,  1 Dec 2024 12:04:05 +0000 (UTC)	[thread overview]
Message-ID: <1733054583.ab104752fce208d3f26b4330fa13ab3272cef752.sam@gentoo> (raw)

commit:     ab104752fce208d3f26b4330fa13ab3272cef752
Author:     Christopher Byrne <salah.coronya <AT> gmail <DOT> com>
AuthorDate: Thu Jul 18 03:54:56 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Dec  1 12:03:03 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab104752

sys-apps/pcsc-lite: add 2.2.3

pcsc-lite now uses meson instead of autotools, so the ebuild has been modified
appropriately. Also patched a file getting installed in the wrong place.

Licensing problems fixed, as the newer version solves some no-longer-relevant bugs.
Closes: https://bugs.gentoo.org/684878
Closes: https://bugs.gentoo.org/912861
Closes: https://bugs.gentoo.org/871096
Closes: https://bugs.gentoo.org/618738
Closes: https://github.com/gentoo/gentoo/pull/35892
Signed-off-by: Christopher Byrne <salah.coronya <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/37600
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/pcsc-lite/Manifest                        |   1 +
 ...te-2.2.3-change-setup-spy-script-location.patch |  13 +++
 sys-apps/pcsc-lite/pcsc-lite-2.3.0.ebuild          | 110 +++++++++++++++++++++
 3 files changed, 124 insertions(+)

diff --git a/sys-apps/pcsc-lite/Manifest b/sys-apps/pcsc-lite/Manifest
index 391e8cc91436..eb76ee1fc0e9 100644
--- a/sys-apps/pcsc-lite/Manifest
+++ b/sys-apps/pcsc-lite/Manifest
@@ -1 +1,2 @@
 DIST pcsc-lite-2.0.1.tar.bz2 815103 BLAKE2B a9eea4a4da1a78fc22797b17c128889b2f7caf8c4aa02dd77f4ac79e4ec458fb0162578b5422552545cd39303750d5396f3687f8cfee7603fad8d60cb54ee1e8 SHA512 af007f00f43e8d897710580f6f27814c9e7d3ca489ff01edf2e3b979e46267915aa04d9c15f225a420fa681de936e42a1d4779d962717cf9a9f4a3d1ca31502b
+DIST pcsc-lite-2.3.0.tar.xz 209064 BLAKE2B 48fc1a513a217ff499e8da63e026ce6adcd37987c878a0dda50756cfac5cc64245c95715df40df14e29883410c3d55670432ba0c658eff84add25b76c1828b11 SHA512 194c175ba7cf4610f09c08d463edf12f63e8e6a694938049988efb10c91e15b05d91747d58013f2f35452427996e8fe2ffb3706806d17ee278dc4896eab901c0

diff --git a/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch b/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch
new file mode 100644
index 000000000000..035c49b653a7
--- /dev/null
+++ b/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index acb51ddf..0c7b3a8f 100644
+--- a/meson.build
++++ b/meson.build
+@@ -202,7 +202,7 @@ install_data('src/spy/pcsc-spy',
+   install_dir : get_option('bindir'))
+ 
+ install_data('src/spy/setup_spy.sh',
+-  install_dir : 'share/doc/pcsc-lite')
++  install_dir : get_option('datadir') / 'doc' / meson.project_name()+'-'+meson.project_version())
+ 
+ run_command('pod2man',
+   ['--date=2024-01-01', 'src/spy/pcsc-spy.pod', 'pcsc-spy.1'],

diff --git a/sys-apps/pcsc-lite/pcsc-lite-2.3.0.ebuild b/sys-apps/pcsc-lite/pcsc-lite-2.3.0.ebuild
new file mode 100644
index 000000000000..5b9b77db7340
--- /dev/null
+++ b/sys-apps/pcsc-lite/pcsc-lite-2.3.0.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson-multilib python-single-r1 tmpfiles udev
+
+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"
+
+# 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 ~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="
+	app-alternatives/lex
+	virtual/pkgconfig"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch
+	"${FILESDIR}"/${PN}-1.9.8-systemd-user.patch
+	"${FILESDIR}"/${PN}-2.2.3-change-setup-spy-script-location.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
+}


             reply	other threads:[~2024-12-01 12:04 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-01 12:04 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-06-02 10:24 [gentoo-commits] repo/gentoo:master commit in: sys-apps/pcsc-lite/, sys-apps/pcsc-lite/files/ David Seifert
2022-02-03  7:07 Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1733054583.ab104752fce208d3f26b4330fa13ab3272cef752.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox