summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended
diff options
context:
space:
mode:
authorYoann Congal <yoann.congal@smile.fr>2024-09-05 14:52:20 +0200
committerKhem Raj <raj.khem@gmail.com>2024-09-05 08:20:29 -0700
commit9bdff5feb60994d4ed3a0123b9977c6c6643a242 (patch)
tree3c5fc6a6d0947c2c7f910ed1eaa0f54b0834401e /meta-oe/recipes-extended
parent2a3d4be9994ec68f2d94f8a7dd7da77c1675dfe6 (diff)
downloadmeta-openembedded-9bdff5feb60994d4ed3a0123b9977c6c6643a242.tar.gz
polkit: Switch PAM files to common-*
Add a new OS option to polkit meson: "openembedded" and use this to set PAM include to common-* which matches OE-Core libpam. This also may fix a non-reproducibility since polkit meson system tried to detect the host (compiling) OS and changed PAM config from the detected value. Fixes: https://github.com/openembedded/meta-openembedded/issues/860 Signed-off-by: Yoann Congal <yoann.congal@smile.fr> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-extended')
-rw-r--r--meta-oe/recipes-extended/polkit/files/meson-build-Support-openembedded-OS-for-PAM-config.patch48
-rw-r--r--meta-oe/recipes-extended/polkit/polkit_125.bb8
2 files changed, 55 insertions, 1 deletions
diff --git a/meta-oe/recipes-extended/polkit/files/meson-build-Support-openembedded-OS-for-PAM-config.patch b/meta-oe/recipes-extended/polkit/files/meson-build-Support-openembedded-OS-for-PAM-config.patch
new file mode 100644
index 0000000000..cc396dfa3b
--- /dev/null
+++ b/meta-oe/recipes-extended/polkit/files/meson-build-Support-openembedded-OS-for-PAM-config.patch
@@ -0,0 +1,48 @@
1From 7c89b88f0f81ad220d08d69d212c14c6eeefb647 Mon Sep 17 00:00:00 2001
2From: Yoann Congal <yoann.congal@smile.fr>
3Date: Tue, 3 Sep 2024 12:17:42 +0200
4Subject: [PATCH] meson.build: Support "openembedded" OS for PAM config
5
6In Openembedded, same as Suse/Solaris: PAM files are common-*:
7* PAM_FILE_INCLUDE_AUTH: common-auth
8* PAM_FILE_INCLUDE_ACCOUNT: common-account
9* PAM_FILE_INCLUDE_PASSWORD: common-password
10* PAM_FILE_INCLUDE_SESSION: common-session
11See OE-Core libpam recipe.
12
13NB: This is also the same config as Debian but its not mentioned in the
14code.
15
16Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
17Upstream-Status: Submitted [https://github.com/polkit-org/polkit/pull/497]
18---
19 meson.build | 2 +-
20 meson_options.txt | 2 +-
21 2 files changed, 2 insertions(+), 2 deletions(-)
22
23diff --git a/meson.build b/meson.build
24index 302c189..a55f2d6 100644
25--- a/meson.build
26+++ b/meson.build
27@@ -311,7 +311,7 @@ endif
28
29 pam_include = get_option('pam_include')
30 if pam_include == ''
31- if ['suse', 'solaris'].contains(os_type)
32+ if ['suse', 'solaris', 'openembedded'].contains(os_type)
33 pam_conf = {
34 'PAM_FILE_INCLUDE_AUTH': 'common-auth',
35 'PAM_FILE_INCLUDE_ACCOUNT': 'common-account',
36diff --git a/meson_options.txt b/meson_options.txt
37index c2e4a6c..14d7a50 100644
38--- a/meson_options.txt
39+++ b/meson_options.txt
40@@ -6,7 +6,7 @@ option('polkitd_user', type: 'string', value: 'polkitd', description: 'User for
41 option('polkitd_uid', type: 'string', value: '-', description: 'Fixed UID for user running polkitd (polkitd)')
42
43 option('authfw', type: 'combo', choices: ['pam', 'shadow', 'bsdauth'], value: 'pam', description: 'Authentication framework (pam/shadow)')
44-option('os_type', type: 'combo', choices: ['redhat', 'suse', 'gentoo', 'pardus', 'solaris', 'netbsd', 'lfs', ''], value: '', description: 'distribution or OS')
45+option('os_type', type: 'combo', choices: ['redhat', 'suse', 'gentoo', 'pardus', 'solaris', 'netbsd', 'lfs', 'openembedded', ''], value: '', description: 'distribution or OS')
46
47 option('pam_include', type: 'string', value: '', description: 'pam file to include')
48 option('pam_module_dir', type: 'string', value: '', description: 'directory to install PAM security module')
diff --git a/meta-oe/recipes-extended/polkit/polkit_125.bb b/meta-oe/recipes-extended/polkit/polkit_125.bb
index fe1ee467c3..2405ed6034 100644
--- a/meta-oe/recipes-extended/polkit/polkit_125.bb
+++ b/meta-oe/recipes-extended/polkit/polkit_125.bb
@@ -5,7 +5,9 @@ LICENSE = "LGPL-2.0-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb" 5LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb"
6BUGTRACKER = "https://github.com/polkit-org/polkit/issues" 6BUGTRACKER = "https://github.com/polkit-org/polkit/issues"
7 7
8SRC_URI = "git://github.com/polkit-org/polkit.git;protocol=https;branch=main" 8SRC_URI = "git://github.com/polkit-org/polkit.git;protocol=https;branch=main \
9 file://meson-build-Support-openembedded-OS-for-PAM-config.patch \
10 "
9 11
10S = "${WORKDIR}/git" 12S = "${WORKDIR}/git"
11SRCREV = "112752c12da812a163dac67d7f675b60de8f7d7b" 13SRCREV = "112752c12da812a163dac67d7f675b60de8f7d7b"
@@ -16,6 +18,10 @@ inherit meson pkgconfig useradd systemd gettext gobject-introspection features_c
16 18
17REQUIRED_DISTRO_FEATURES = "polkit" 19REQUIRED_DISTRO_FEATURES = "polkit"
18 20
21# Prevent meson.build to try to autodetect host OS (which could lead to
22# non-reproducibility)
23EXTRA_OEMESON = "-Dos_type=openembedded"
24
19PACKAGECONFIG = " \ 25PACKAGECONFIG = " \
20 ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \ 26 ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \
21 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 'consolekit', d)} \ 27 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 'consolekit', d)} \