summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended
diff options
context:
space:
mode:
authorMartin Hundeb?ll <martin@geanix.com>2023-11-27 13:45:57 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-12-02 17:14:17 +0000
commit778fcc8d2e6eb1bd2c88a6abb14dbd6666720205 (patch)
tree780adcddd7cf45196be8f600dc358f4fe2521169 /meta/recipes-extended
parent3753997d6ec19e8cd082f9a602ebe4a7c1308c36 (diff)
downloadopenembedded-core-contrib-778fcc8d2e6eb1bd2c88a6abb14dbd6666720205.tar.gz
libpam: split /etc/environment into pam-plugin-env package
Since systemd-v255, pam-plugin-umask is pulled in by by the logind package config for systemd. This causes /etc/environment to be installed as part of libpam-runtime. In our case, this broke do_rootfs for our image, because /etc/environment is already provided by another (custom) recipe. Fix this by making the /etc/environment file part of the pam-plugin-env package, which isn't automatically pulled in by systemd-logind. It also happens to be the where it should be, as the file is installed as part of the pam_env plugin. Signed-off-by: Martin Hundebøll <martin@geanix.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended')
-rw-r--r--meta/recipes-extended/pam/libpam_1.5.3.bb7
1 files changed, 6 insertions, 1 deletions
diff --git a/meta/recipes-extended/pam/libpam_1.5.3.bb b/meta/recipes-extended/pam/libpam_1.5.3.bb
index 7af3ea99d1..809d927f55 100644
--- a/meta/recipes-extended/pam/libpam_1.5.3.bb
+++ b/meta/recipes-extended/pam/libpam_1.5.3.bb
@@ -57,6 +57,11 @@ FILES:${PN}-dev += "${base_libdir}/security/*.la ${base_libdir}/*.la ${base_libd
FILES:${PN}-runtime = "${sysconfdir} ${sbindir} ${systemd_system_unitdir}"
FILES:${PN}-xtests = "${datadir}/Linux-PAM/xtests"
+# libpam installs /etc/environment for use with the pam_env plugin. Make sure it is
+# packaged with the pam-plugin-env package to avoid breaking installations which
+# install that file via other packages
+FILES:pam-plugin-env = "${sysconfdir}/environment"
+
PACKAGES_DYNAMIC += "^${MLPREFIX}pam-plugin-.*"
def get_multilib_bit(d):
@@ -113,7 +118,7 @@ python populate_packages:prepend () {
pam_pkgname = mlprefix + 'pam-plugin%s'
do_split_packages(d, pam_libdir, r'^pam(.*)\.so$', pam_pkgname,
- 'PAM plugin for %s', hook=pam_plugin_hook, extra_depends='')
+ 'PAM plugin for %s', hook=pam_plugin_hook, extra_depends='', prepend=True)
do_split_packages(d, pam_filterdir, r'^(.*)$', 'pam-filter-%s', 'PAM filter for %s', extra_depends='')
}