[oe] [meta-oe] [PATCH v2] pcsc-lite: install systemd system units
Wang Mingyu < [email protected]> Mon, 3 Aug 2026 11:14:01 +0800
| Newsgroups | org.openembedded.lists.openembedded-devel |
|---|---|
| Message-ID | <[email protected]> |
From: Wang Mingyu <[email protected]> pcsc-lite 2.5.0 defaults to installing systemd user units, which leaves the package without a system-level pcscd.service while SYSTEMD_SERVICE still enables pcscd.socket. On target systems this makes systemctl status pcscd fail, and systemctl --user start pcscd can fail because the user unit requires polkit.service from the user manager. Select upstream Meson systemdunit=system so pcscd.service and pcscd.socket are installed as system units. Keep upstream sysusers.d packaging so systemd-sysusers can create the pcscd system user required by the generated service and socket units. Signed-off-by: Wang Mingyu <[email protected]> --- meta-oe/recipes-support/pcsc-lite/pcsc-lite_2.5.1.bb | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/meta-oe/recipes-support/pcsc-lite/pcsc-lite_2.5.1.bb b/meta-oe/recipes-support/pcsc-lite/pcsc-lite_2.5.1.bb index ae20447050..bf0b45dd14 100644 --- a/meta-oe/recipes-support/pcsc-lite/pcsc-lite_2.5.1.bb +++ b/meta-oe/recipes-support/pcsc-lite/pcsc-lite_2.5.1.bb @@ -18,6 +18,7 @@ inherit meson systemd pkgconfig perlnative EXTRA_OEMESON = " \ -Dlibusb=false \ + -Dsystemdunit=system \ -Dusbdropdir=${libdir}/pcsc/drivers \ " @@ -38,7 +39,10 @@ RPROVIDES:${PN}:append:class-native = " pcsc-lite-lib-native" FILES:${PN} = "${sbindir}/pcscd \ ${datadir}/polkit-1 \ - ${nonarch_libdir}/systemd/user \ + ${systemd_system_unitdir}/pcscd.service \ + ${systemd_system_unitdir}/pcscd.socket \ + ${libdir}/sysusers.d \ + ${exec_prefix}/sysusers.d \ ${sysconfdir}/default/pcscd" FILES:${PN}-lib = "${libdir}/libpcsclite*${SOLIBS}" FILES:${PN}-dev = "${includedir} \ @@ -54,12 +58,6 @@ FILES:${PN}-spy-dev = "${libdir}/libpcscspy.la \ do_install:append() { rm -rf ${D}${datadir}/metainfo - # pcsc-lite installs pcscd-sysusers.conf into systemd's sysusersdir when - # the systemd pkg-config variable is available (${libdir}/sysusers.d), - # and falls back to ${exec_prefix}/sysusers.d otherwise. Drop both so the - # file is not left unpackaged (installed-vs-shipped QA). - rm -rf ${D}${libdir}/sysusers.d - rm -rf ${D}${exec_prefix}/sysusers.d } RPROVIDES:${PN} += "${PN}-systemd" -- 2.43.0