commit: fa9b944898e8b7602a88f36e8c598bc6b19e54c1 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Fri Dec 12 02:46:34 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Dec 12 02:46:34 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa9b9448
sys-apps/pcsc-lite: backport systemd fixes * Always install systemd unit file * Fix unit file Signed-off-by: Sam James <sam <AT> gentoo.org> .../files/pcsc-lite-2.4.0-systemd-fixes.patch | 97 ++++++++++++++++++++++ .../pcsc-lite-2.4.0-systemd-sysusers-fixup.patch | 11 +++ ...lite-2.4.0.ebuild => pcsc-lite-2.4.0-r1.ebuild} | 2 + 3 files changed, 110 insertions(+) diff --git a/sys-apps/pcsc-lite/files/pcsc-lite-2.4.0-systemd-fixes.patch b/sys-apps/pcsc-lite/files/pcsc-lite-2.4.0-systemd-fixes.patch new file mode 100644 index 000000000000..0d8332cfc413 --- /dev/null +++ b/sys-apps/pcsc-lite/files/pcsc-lite-2.4.0-systemd-fixes.patch @@ -0,0 +1,97 @@ +https://github.com/LudovicRousseau/PCSC/commit/504e3ba2d81d801fee45b97fbe9e7a5b0d0c24cd +https://github.com/LudovicRousseau/PCSC/commit/448dbe2aa10780775d361ad38b0dd3cd18530bec + +From 504e3ba2d81d801fee45b97fbe9e7a5b0d0c24cd Mon Sep 17 00:00:00 2001 +From: Stephan Guilloux <[email protected]> +Date: Fri, 5 Dec 2025 16:33:29 +0100 +Subject: [PATCH] systemd Fails to parse boolean value. + +My host is installed with a Rocky Linux 9.x +It should be the same with other distros. + +When PCSC is started, I can observe the following in /var/log/messages: +``` +... +Dec 05 16:22:43 Host-9A38CE systemd[1]: /usr/lib/systemd/system/pcscd.service:32: Failed to parse boolean value, ignoring: identity + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +... +``` + +This comes from the following line, in pcscd.service: +``` +RuntimeDirectoryPreserve=true +``` + +When `true` is replaced by `yes`, the error is no more seen. +By the way, the rest of pcscd.service is already using `yes`. +--- + etc/pcscd.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/etc/pcscd.service.in b/etc/pcscd.service.in +index 14ab8442..874a03dc 100644 +--- a/etc/pcscd.service.in ++++ b/etc/pcscd.service.in +@@ -10,7 +10,7 @@ ExecReload=@sbindir_exp@/pcscd --hotplug + EnvironmentFile=-@sysconfdir@/default/pcscd + User=pcscd + RuntimeDirectory=pcscd +-RuntimeDirectoryPreserve=true ++RuntimeDirectoryPreserve=yes + PIDFile=@ipcdir@/pcscd.pid + + # Paths + +From 448dbe2aa10780775d361ad38b0dd3cd18530bec Mon Sep 17 00:00:00 2001 +From: Ludovic Rousseau <[email protected]> +Date: Wed, 10 Dec 2025 15:55:29 +0100 +Subject: [PATCH] meson: install systemd files even if libsystemd is not used + +--- + meson.build | 14 ++++++++------ + 1 file changed, 8 insertions(+), 6 deletions(-) + +diff --git a/meson.build b/meson.build +index 4d4d2bf9..1b2926f4 100644 +--- a/meson.build ++++ b/meson.build +@@ -127,11 +127,19 @@ if get_option('polkit') + features += 'polkit' + endif + ++systemdunit = get_option('systemdunit') + if get_option('libsystemd') + systemd_dep = dependency('libsystemd') + pcscd_dep += systemd_dep + conf_data.set('USE_LIBSYSTEMD', true) + features += 'systemd' ++ ++ systemd = dependency('systemd') ++ systemdsystemunitdir = systemd.get_variable(pkgconfig : 'systemd' + systemdunit + 'unitdir') ++ sysusersdir = systemd.get_variable(pkgconfig : 'sysusersdir') ++else ++ systemdsystemunitdir = get_option('prefix') / 'lib' / 'systemd' / systemdunit ++ sysusersdir = get_option('prefix') / 'sysusers.d' + endif + + # architecture +@@ -291,11 +299,6 @@ configure_file(output : 'pcsclite.h', + configure_file(output : 'pcscd.h', + input : 'src/pcscd.h.in', + configuration : confgen_data) +-if get_option('libsystemd') +- systemd = dependency('systemd') +- unit = get_option('systemdunit') +- systemdsystemunitdir = systemd.get_variable(pkgconfig : 'systemd' + unit + 'unitdir') +- sysusersdir = systemd.get_variable(pkgconfig : 'sysusersdir') + configure_file(output : 'pcscd.socket', + input : 'etc/pcscd.socket.in', + install_dir : systemdsystemunitdir, +@@ -306,7 +309,6 @@ configure_file(output : 'pcscd.service', + configuration : confgen_data) + install_data('etc/pcscd-sysusers.conf', + install_dir : sysusersdir) +-endif + configure_file(output : 'pcscd.8', + input : 'doc/pcscd.8.in', + install_dir : join_paths(get_option('mandir'), 'man8'), diff --git a/sys-apps/pcsc-lite/files/pcsc-lite-2.4.0-systemd-sysusers-fixup.patch b/sys-apps/pcsc-lite/files/pcsc-lite-2.4.0-systemd-sysusers-fixup.patch new file mode 100644 index 000000000000..0504123d89e9 --- /dev/null +++ b/sys-apps/pcsc-lite/files/pcsc-lite-2.4.0-systemd-sysusers-fixup.patch @@ -0,0 +1,11 @@ +--- a/meson.build ++++ b/meson.build +@@ -139,7 +139,7 @@ if get_option('libsystemd') + 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 + + # architecture diff --git a/sys-apps/pcsc-lite/pcsc-lite-2.4.0.ebuild b/sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild similarity index 96% rename from sys-apps/pcsc-lite/pcsc-lite-2.4.0.ebuild rename to sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild index bf05706c1d1f..a259a978ee17 100644 --- a/sys-apps/pcsc-lite/pcsc-lite-2.4.0.ebuild +++ b/sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild @@ -44,6 +44,8 @@ BDEPEND=" PATCHES=( "${FILESDIR}"/${PN}-2.4.0-change-setup-spy-script-location.patch + "${FILESDIR}"/${PN}-2.4.0-systemd-fixes.patch + "${FILESDIR}"/${PN}-2.4.0-systemd-sysusers-fixup.patch ) multilib_src_configure() {
