From 8654c4537d4b11dd77b65cc55d6e68b17e5f11d74af43d142df5e45235fdde9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 19:31:23 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main polkit revision 1f6c5d67fe39fedb65de61b4427c4b1c --- .gitattributes | 23 + baselibs.conf | 4 + polkit-121.tar.gz | 3 + polkit-121.tar.gz.sign | 11 + polkit-actions-in-etc.patch | 227 +++++++++ polkit-adjust-libexec-path.patch | 22 + polkit-fix-pam-prefix.patch | 33 ++ polkit-gettext.patch | 57 +++ polkit-keyinit.patch | 9 + polkit-no-wheel-group.patch | 9 + polkit.changes | 827 +++++++++++++++++++++++++++++++ polkit.keyring | 656 ++++++++++++++++++++++++ polkit.spec | 303 +++++++++++ system-user-polkitd.conf | 2 + 14 files changed, 2186 insertions(+) create mode 100644 .gitattributes create mode 100644 baselibs.conf create mode 100644 polkit-121.tar.gz create mode 100644 polkit-121.tar.gz.sign create mode 100644 polkit-actions-in-etc.patch create mode 100644 polkit-adjust-libexec-path.patch create mode 100644 polkit-fix-pam-prefix.patch create mode 100644 polkit-gettext.patch create mode 100644 polkit-keyinit.patch create mode 100644 polkit-no-wheel-group.patch create mode 100644 polkit.changes create mode 100644 polkit.keyring create mode 100644 polkit.spec create mode 100644 system-user-polkitd.conf diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..2cbef96 --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,4 @@ +libpolkit-agent-1-0 + obsoletes "libpolkit0- < " +libpolkit-gobject-1-0 + obsoletes "libpolkit0- < " diff --git a/polkit-121.tar.gz b/polkit-121.tar.gz new file mode 100644 index 0000000..18f8d45 --- /dev/null +++ b/polkit-121.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dc7ae341a797c994a5a36da21963f0c5c8e3e5a1780ccc2a5f52e7be01affaa +size 743287 diff --git a/polkit-121.tar.gz.sign b/polkit-121.tar.gz.sign new file mode 100644 index 0000000..159cd65 --- /dev/null +++ b/polkit-121.tar.gz.sign @@ -0,0 +1,11 @@ +-----BEGIN PGP SIGNATURE----- + +iQEzBAABCAAdFiEEf/t9a9gxR9dChOMXjOswMP/c4lgFAmLMIyMACgkQjOswMP/c +4ljnPggAirGfeho8FcKzvi8V7Gya8tHUf0eGqdlJUr8owSHx0FjTzBSATHxhFtFZ +pMPXXUkM0myKgqFQntL9ZYtM7l9MnCdS2rvEPkUg+uoJ4uJuuorsxkxaFdBOXFn9 +xUSgLIpsVIVVTDLaChgbRvgZQXLO27fz3PVchLlqLIfyyiKvxBCftx+4EXZzQgor +HA0qpWFTdH1LxhhHrZibkNxBwI6uQum20fDzRiyIu5oUtRyZqRt+lBuimzFHrCLz +AOGZJANTxNVpZmpXEJqM/N93133852S2UJtCbgp4zmcnAWeBJSD5NodbVq65JzAs +4ZjD5iN/MumSAnQyKBknisT5UH5vwg== +=mLHt +-----END PGP SIGNATURE----- diff --git a/polkit-actions-in-etc.patch b/polkit-actions-in-etc.patch new file mode 100644 index 0000000..eee5d3a --- /dev/null +++ b/polkit-actions-in-etc.patch @@ -0,0 +1,227 @@ +diff --git a/docs/man/polkit.xml b/docs/man/polkit.xml +index 90715a5..10dd217 100644 +--- a/docs/man/polkit.xml ++++ b/docs/man/polkit.xml +@@ -104,6 +104,7 @@ System Context | | + +------------------+ | + ^ | + | +--------------------------------------+ ++ | | /etc/polkit-1/actions/*.policy | + | | /usr/share/polkit-1/actions/*.policy | + | +--------------------------------------+ + | +diff --git a/src/polkitbackend/polkitbackendactionpool.c b/src/polkitbackend/polkitbackendactionpool.c +index 3894fe9..17652e6 100644 +--- a/src/polkitbackend/polkitbackendactionpool.c ++++ b/src/polkitbackend/polkitbackendactionpool.c +@@ -91,8 +91,10 @@ typedef struct + { + /* directory with .policy files, e.g. /usr/share/polkit-1/actions */ + GFile *directory; ++ GFile *directory_alt; + + GFileMonitor *dir_monitor; ++ GFileMonitor *dir_monitor_alt; + + /* maps from action_id to a ParsedAction struct */ + GHashTable *parsed_actions; +@@ -109,6 +111,8 @@ enum + { + PROP_0, + PROP_DIRECTORY, ++ /* TODO combine into PROP_DIRECTORIES? */ ++ PROP_DIRECTORY_ALT, + }; + + #define POLKIT_BACKEND_ACTION_POOL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), POLKIT_BACKEND_TYPE_ACTION_POOL, PolkitBackendActionPoolPrivate)) +@@ -153,9 +157,15 @@ polkit_backend_action_pool_finalize (GObject *object) + if (priv->directory != NULL) + g_object_unref (priv->directory); + ++ if (priv->directory_alt != NULL) ++ g_object_unref (priv->directory_alt); ++ + if (priv->dir_monitor != NULL) + g_object_unref (priv->dir_monitor); + ++ if (priv->dir_monitor_alt != NULL) ++ g_object_unref (priv->dir_monitor_alt); ++ + if (priv->parsed_actions != NULL) + g_hash_table_unref (priv->parsed_actions); + +@@ -183,6 +193,10 @@ polkit_backend_action_pool_get_property (GObject *object, + g_value_set_object (value, priv->directory); + break; + ++ case PROP_DIRECTORY_ALT: ++ g_value_set_object (value, priv->directory_alt); ++ break; ++ + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; +@@ -274,6 +288,28 @@ polkit_backend_action_pool_set_property (GObject *object, + } + break; + ++ case PROP_DIRECTORY_ALT: ++ priv->directory_alt = g_value_dup_object (value); ++ ++ error = NULL; ++ priv->dir_monitor_alt = g_file_monitor_directory (priv->directory_alt, ++ G_FILE_MONITOR_NONE, ++ NULL, ++ &error); ++ if (priv->dir_monitor_alt == NULL) ++ { ++ g_warning ("Error monitoring actions alt directory: %s", error->message); ++ g_error_free (error); ++ } ++ else ++ { ++ g_signal_connect (priv->dir_monitor_alt, ++ "changed", ++ (GCallback) dir_monitor_changed, ++ pool); ++ } ++ break; ++ + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; +@@ -308,6 +344,18 @@ polkit_backend_action_pool_class_init (PolkitBackendActionPoolClass *klass) + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); + ++ g_object_class_install_property (gobject_class, ++ PROP_DIRECTORY_ALT, ++ g_param_spec_object ("directoryalt", ++ "DirectoryAlt", ++ "Alternative directory to load action description files from", ++ G_TYPE_FILE, ++ G_PARAM_READWRITE | ++ G_PARAM_CONSTRUCT_ONLY | ++ G_PARAM_STATIC_NAME | ++ G_PARAM_STATIC_NICK | ++ G_PARAM_STATIC_BLURB)); ++ + /** + * PolkitBackendActionPool::changed: + * @action_pool: A #PolkitBackendActionPool. +@@ -334,12 +382,13 @@ polkit_backend_action_pool_class_init (PolkitBackendActionPoolClass *klass) + * Returns: A #PolkitBackendActionPool. Free with g_object_unref(). + **/ + PolkitBackendActionPool * +-polkit_backend_action_pool_new (GFile *directory) ++polkit_backend_action_pool_new (GFile *directory, GFile *directory_alt) + { + PolkitBackendActionPool *pool; + + pool = POLKIT_BACKEND_ACTION_POOL (g_object_new (POLKIT_BACKEND_TYPE_ACTION_POOL, + "directory", directory, ++ "directoryalt", directory_alt, + NULL)); + + return pool; +@@ -505,12 +554,14 @@ ensure_all_files (PolkitBackendActionPool *pool) + { + PolkitBackendActionPoolPrivate *priv; + GFileEnumerator *e; ++ GFileEnumerator *e_alt; + GFileInfo *file_info; + GError *error; + + priv = POLKIT_BACKEND_ACTION_POOL_GET_PRIVATE (pool); + + e = NULL; ++ e_alt = NULL; + + if (priv->has_loaded_all_files) + goto out; +@@ -548,12 +599,48 @@ ensure_all_files (PolkitBackendActionPool *pool) + + } /* for all files */ + ++ /* TODO priority for files in /etc */ ++ ++ e_alt = g_file_enumerate_children (priv->directory_alt, ++ "standard::name", ++ G_FILE_QUERY_INFO_NONE, ++ NULL, ++ &error); ++ if (error != NULL) ++ { ++ g_warning ("Error enumerating files: %s", error->message); ++ goto out; ++ } ++ ++ while ((file_info = g_file_enumerator_next_file (e_alt, NULL, &error)) != NULL) ++ { ++ const gchar *name; ++ ++ name = g_file_info_get_name (file_info); ++ /* only consider files with the right suffix */ ++ if (g_str_has_suffix (name, ".policy")) ++ { ++ GFile *file; ++ ++ file = g_file_get_child (priv->directory_alt, name); ++ ++ ensure_file (pool, file); ++ ++ g_object_unref (file); ++ } ++ ++ g_object_unref (file_info); ++ ++ } /* for all files */ ++ + priv->has_loaded_all_files = TRUE; + + out: + + if (e != NULL) + g_object_unref (e); ++ if (e_alt != NULL) ++ g_object_unref (e_alt); + } + + /* ---------------------------------------------------------------------------------------------------- */ +diff --git a/src/polkitbackend/polkitbackendactionpool.h b/src/polkitbackend/polkitbackendactionpool.h +index e992eea..9ccb526 100644 +--- a/src/polkitbackend/polkitbackendactionpool.h ++++ b/src/polkitbackend/polkitbackendactionpool.h +@@ -64,7 +64,7 @@ struct _PolkitBackendActionPoolClass + }; + + GType polkit_backend_action_pool_get_type (void) G_GNUC_CONST; +-PolkitBackendActionPool *polkit_backend_action_pool_new (GFile *directory); ++PolkitBackendActionPool *polkit_backend_action_pool_new (GFile *directory, GFile *directory_alt); + GList *polkit_backend_action_pool_get_all_actions (PolkitBackendActionPool *pool, + const gchar *locale); + +diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c +index 1cfc88e..a975cac 100644 +--- a/src/polkitbackend/polkitbackendinteractiveauthority.c ++++ b/src/polkitbackend/polkitbackendinteractiveauthority.c +@@ -292,6 +292,7 @@ polkit_backend_interactive_authority_init (PolkitBackendInteractiveAuthority *au + { + PolkitBackendInteractiveAuthorityPrivate *priv; + GFile *directory; ++ GFile *directory_alt; + GError *error; + + /* Force registering error domain */ +@@ -300,8 +301,10 @@ polkit_backend_interactive_authority_init (PolkitBackendInteractiveAuthority *au + priv = POLKIT_BACKEND_INTERACTIVE_AUTHORITY_GET_PRIVATE (authority); + + directory = g_file_new_for_path (PACKAGE_DATA_DIR "/polkit-1/actions"); +- priv->action_pool = polkit_backend_action_pool_new (directory); ++ directory_alt = g_file_new_for_path (PACKAGE_SYSCONF_DIR "/polkit-1/actions"); ++ priv->action_pool = polkit_backend_action_pool_new (directory, directory_alt); + g_object_unref (directory); ++ g_object_unref (directory_alt); + g_signal_connect (priv->action_pool, + "changed", + (GCallback) action_pool_changed, diff --git a/polkit-adjust-libexec-path.patch b/polkit-adjust-libexec-path.patch new file mode 100644 index 0000000..038432f --- /dev/null +++ b/polkit-adjust-libexec-path.patch @@ -0,0 +1,22 @@ +--- a/src/polkitagent/polkitagentsession.c ++++ b/src/polkitagent/polkitagentsession.c +@@ -596,7 +596,7 @@ polkit_agent_session_initiate (PolkitAge + goto error; + } + +- helper_argv[0] = PACKAGE_PREFIX "/lib/polkit-1/polkit-agent-helper-1"; ++ helper_argv[0] = PACKAGE_PREFIX "/libexec/polkit-1/polkit-agent-helper-1"; + helper_argv[1] = passwd->pw_name; + helper_argv[2] = NULL; + +--- a/meson.build ++++ b/meson.build +@@ -28,7 +28,7 @@ pk_sysconfdir = get_option('sysconfdir') + pk_pkgdatadir = pk_datadir / pk_api_name + pk_pkgincludedir = pk_includedir / pk_api_name + # note that this is always 'lib', not lib64 or lib/x86_64-linux-gnu +-pk_libprivdir = 'lib' / pk_api_name ++pk_libprivdir = 'libexec' / pk_api_name + pk_pkgsysconfdir = pk_sysconfdir / pk_api_name + + pk_actiondir = pk_api_name / 'actions' diff --git a/polkit-fix-pam-prefix.patch b/polkit-fix-pam-prefix.patch new file mode 100644 index 0000000..10d6850 --- /dev/null +++ b/polkit-fix-pam-prefix.patch @@ -0,0 +1,33 @@ +https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/131 +build: Honour pam_prefix meson option + +Make the use of pam_prefix worth its while since, at the moment, its value +is not being used. Instead, a hard-coded path is being deployed when it +shouldn't anymore. + +The pam_prefix Meson option was designed to allow us to choose where pam +configuration files should end up. But at the moment it is not being used at +all where it should be. + +--- a/meson.build ++++ b/meson.build +@@ -241,7 +241,7 @@ if enable_pam + + pam_prefix = get_option('pam_prefix') + if pam_prefix == '' +- pam_prefix = pk_sysconfdir ++ pam_prefix = pk_sysconfdir / 'pam.d' + else + message('PAM files will be installed in prefix ' + pam_prefix) + endif +--- a/data/meson.build ++++ b/data/meson.build +@@ -22,7 +22,7 @@ if enable_pam + output: '@BASENAME@', + configuration: pam_conf, + install: true, +- install_dir: pk_sysconfdir / 'pam.d', ++ install_dir: pam_prefix, + ) + endif + diff --git a/polkit-gettext.patch b/polkit-gettext.patch new file mode 100644 index 0000000..e9d00de --- /dev/null +++ b/polkit-gettext.patch @@ -0,0 +1,57 @@ +From fea7159b7cc50deb7298b2858e125fb623012549 Mon Sep 17 00:00:00 2001 +From: Ludwig Nussel +Date: Tue, 13 Jun 2017 18:28:28 +0200 +Subject: [PATCH] Use gettext as fallback for translations + +Upstream polkit action files do not necessarily contain translations for +all languages a distribution supports. And even if all translations are +contained in the head branch, distributions sometimes need to ship older +versions of packages. In order to allow retrofitting translations and +shipping language packs for polkit actions without having to patch and +rebuild packages gettext could be used as fallback. That way only +additional .mo files have to be installed. +So this patch makes polkit call into gettext with the domain +'polkit-action-distro-translations' if an xml doesn't contain +translations for the requested language. +--- + src/polkitbackend/polkitbackendactionpool.c | 17 +++++++++++++++-- + 1 file changed, 15 insertions(+), 2 deletions(-) + +diff --git a/src/polkitbackend/polkitbackendactionpool.c b/src/polkitbackend/polkitbackendactionpool.c +index 3894fe9..9252788 100644 +--- a/src/polkitbackend/polkitbackendactionpool.c ++++ b/src/polkitbackend/polkitbackendactionpool.c +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -1132,8 +1133,20 @@ _localize (GHashTable *translations, + if (result != NULL) + goto out; + +- /* fall back to untranslated */ +- result = untranslated; ++ /* try distro provided language bundle via gettext */ ++ ++ /* Set LANG and locale so g_dgettext() + friends work below */ ++ if (setlocale (LC_ALL, lang) == NULL) ++ { ++ g_printerr ("Invalid locale '%s'\n", lang); ++ } ++ g_setenv ("LANG", lang, TRUE); ++ ++ result = g_dgettext ("polkit-action-distro-translations", untranslated); ++ ++ /* Back to C! */ ++ setlocale (LC_ALL, "C"); ++ g_setenv ("LANG", "C", TRUE); + + out: + return result; +-- +2.12.2 + diff --git a/polkit-keyinit.patch b/polkit-keyinit.patch new file mode 100644 index 0000000..db00553 --- /dev/null +++ b/polkit-keyinit.patch @@ -0,0 +1,9 @@ +Index: polkit-0.116/data/polkit-1.in +=================================================================== +--- polkit-0.116.orig/data/polkit-1.in ++++ polkit-0.116/data/polkit-1.in +@@ -4,3 +4,4 @@ auth include @PAM_FILE_INCLUD + account include @PAM_FILE_INCLUDE_ACCOUNT@ + password include @PAM_FILE_INCLUDE_PASSWORD@ + session include @PAM_FILE_INCLUDE_SESSION@ ++session optional pam_keyinit.so revoke [force] diff --git a/polkit-no-wheel-group.patch b/polkit-no-wheel-group.patch new file mode 100644 index 0000000..39ac166 --- /dev/null +++ b/polkit-no-wheel-group.patch @@ -0,0 +1,9 @@ +--- a/src/polkitbackend/50-default.rules ++++ b/src/polkitbackend/50-default.rules +@@ -8,5 +8,5 @@ + // about configuring polkit. + + polkit.addAdminRule(function(action, subject) { +- return ["unix-group:wheel"]; ++ return ["unix-user:0"]; + }); diff --git a/polkit.changes b/polkit.changes new file mode 100644 index 0000000..3a02a7e --- /dev/null +++ b/polkit.changes @@ -0,0 +1,827 @@ +------------------------------------------------------------------- +Wed Mar 29 13:37:25 UTC 2023 - Johannes Segitz + +- Change permissions for rules folders (bsc#1209282) + +------------------------------------------------------------------- +Wed Nov 09 07:39:53 CET 2022 - aschnell@suse.com + +- read actions also from /etc/polkit-1/actions (jsc#PED-1405) + added polkit-actions-in-etc.patch + +------------------------------------------------------------------- +Thu Sep 15 13:26:34 UTC 2022 - Marcus Meissner + +- obsolete libpolkit0 also from baselibs. + +------------------------------------------------------------------- +Tue Aug 9 06:11:08 UTC 2022 - Luciano Santos + +- Update to version 121: + + Addition of duktape as a JS engine backend. + + Other small fixes and improvements. For more details, visit: + gitlab.freedesktop.org/polkit/polkit/-/blob/121/NEWS.md + + Updated translations. +- Drop merged-upstream patches: + + CVE-2021-4034-pkexec-fix.patch; + + 0001-CVE-2021-4115-GHSL-2021-077-fix.patch; + + duktape-support.patch; + + pkexec.patch. +- Replace Intltool with Gettext as a build requirement following + the migration from last release (0.120). +- Add Meson as a build requirement while dropping Libtool and + replace all Autotools macros with Meson ones. And pass the + following options to Meson: session_tracking=libsystemd-login; + systemdsystemunitdir=%{_unitdir}; os_type=suse; + pam_module_dir=%{_pam_moduledir}; pam_prefix=%{_pam_vendordir}; + examples=true; tests=true; gtk_doc=true; man=true and + js_engine=duktape. +- Drop no longer needed Libtool as a build requirement, following + Autotools replacement. +- Add explicit pkgconfig module build requirements for glib-2.0 and + gobject-2.0 that are searched by the build scripts. They were + already being pulled by their siblings [pkgconfig(gio-2.0) and + pkgconfig(gio-unix-2.0)]. +- Drop conditional macro, which was wrapping "BuildArch: noarch" + for the doc subpackage, based on long gone EOLed (open)SUSE + release (11.2). +- Add missing 'Requires(post): permissions' for the pkexec + subpackage. +- Add python3-dbus-python and python3-python-dbusmock as build + requirements in order to run test in the check section. +- Add polkit-fix-pam-prefix.patch to use the value of pam_prefix + Meson option, like it was designed to, rather than hard-coded + path for pam configuration files. +- Remove unneeded executable bit from 50-default.rules file. + +------------------------------------------------------------------- +Mon Aug 8 07:28:25 UTC 2022 - Thorsten Kukuk + +- Use %_pam_vendordir + +------------------------------------------------------------------- +Wed Aug 3 12:03:30 UTC 2022 - Marcus Meissner + +- add split-provides for polkit:/usr/bin/pkexec. (bsc#1202070) + +------------------------------------------------------------------- +Mon Jul 18 09:38:28 UTC 2022 - Marcus Meissner + +- split out pkexec into seperate package to make system hardening + easier (to avoid installing it jsc#PED-132 jsc#PED-148). + +------------------------------------------------------------------- +Tue Feb 22 10:48:15 UTC 2022 - Marcus Meissner + +- Fixed denial of service via file descriptor leak (bsc#1195542 CVE-2021-4115) + 0001-CVE-2021-4115-GHSL-2021-077-fix.patch + +------------------------------------------------------------------- +Wed Jan 26 11:44:35 UTC 2022 - Fabian Vogt + +- Switch from mozjs to duktape: + * Add duktape-support.patch + +------------------------------------------------------------------- +Tue Jan 25 18:15:16 UTC 2022 - Marcus Meissner + +- Fixed pkexec Local Privilege Escalation aka pwnkit (CVE-2021-4034 bsc#1194568) + CVE-2021-4034-pkexec-fix.patch + +------------------------------------------------------------------- +Mon Dec 6 10:27:20 UTC 2021 - Dirk Müller + +- update to 0.120: + * transition from Intltool to gettext + * several tarball, meson and pipeline fixups + * Portuguese translation + * Romanian translation + * meson build system added + * CVE-2021-3560 mitigation + * properties in text listener + * typos fixups + * Update Hungarian translation +- drop CVE-2021-3560.patch (upstream) + +------------------------------------------------------------------- +Wed Oct 20 15:12:07 UTC 2021 - Marcus Meissner + +- fork libpolkit0 package into libpolkit-agent-1-0 and libpolkit-gobject-1-0 + as mandated. bsc#1191781 + +------------------------------------------------------------------- +Sun Jul 18 12:16:13 UTC 2021 - Callum Farmer + +- Change to using systemd-sysusers +- Remove unneeded shadow dependency, no longer required due to + systemd-sysusers +- Fix 50-default.rules file-parent-ownership-mismatch warning +- Remove --with-pic, no effect with --disable-static + +------------------------------------------------------------------- +Wed Jul 7 08:15:04 UTC 2021 - Stefan Schubert + +- Fix verifyscript: the path to the binary was wrongly defined as + %{_libexecdir}/lib. + +------------------------------------------------------------------- +Thu May 27 11:52:44 UTC 2021 - Marcus Meissner + +- CVE-2021-3560: fixed a local privilege escalation using polkit_system_bus_name_get_creds_sync() + (bsc#1186497) + CVE-2021-3560.patch + +------------------------------------------------------------------- +Thu Mar 11 22:21:07 UTC 2021 - Thorsten Kukuk + +- Move /etc/dbus-1/system.d to /usr/share/dbus-1/system.d, the + first location is only for admin changes +- Move pam configuration to /usr/etc/pam.d + +------------------------------------------------------------------- +Mon Jan 4 09:51:04 UTC 2021 - Matthias Gerstner + +move to libexec dir is still not complete: + +- add polkit-adjust-libexec-path.patch: There is another hard coded reference + of lib/ in the code that this patch addresses. +- also adjust invocation of %set_permissions and %verify_permissions to new + libexec dir location. + +------------------------------------------------------------------- +Tue Dec 29 08:39:01 UTC 2020 - Matthias Gerstner + +- also set libprivdir during build, otherwhise systemd and D-Bus service files + contain the wrong path and we'll get runtime errors. + +------------------------------------------------------------------- +Mon Dec 28 12:26:34 UTC 2020 - Matthias Gerstner + +- Install private binaries into libexec instead of into lib. For this an + override of the custom libprivdir variable is necessary, because upstream + explicitly moved away from libexecdir via upstram commit + 6fbcc6cd839680fcefd81c4a43676e7c031c9859. + +------------------------------------------------------------------- +Fri Oct 23 08:19:06 UTC 2020 - Bjørn Lie + +- Update to version 0.118: + + Updated dependency to mozjs78. + + Tarball fixes. +- Replace pkgconfig(mozjs-68) for pkgconfig(mozjs-78) + BuildRequires following upstreams port. + +------------------------------------------------------------------- +Fri Jul 31 11:39:38 UTC 2020 - Bjørn Lie + +- Update to version 0.117: + + Activated Gitlab CI. + + Updated dependency to mozjs68. + + Memory management fixes. + + Updated translations. +- Replace pkgconfig(mozjs-60) for pkgconfig(mozjs-68) + BuildRequires following upstreams port. + +------------------------------------------------------------------- +Fri Nov 29 10:36:53 UTC 2019 - Bjørn Lie + +- Fix usage of libexecdir instead of prefix/lib where applicable. + +------------------------------------------------------------------- +Tue Oct 8 12:41:44 UTC 2019 - Marcus Meissner + +- polkit-keyinit.patch: add pam_keyinit to the polkit configuration (bsc#1144053) + +------------------------------------------------------------------- +Wed May 29 07:57:26 UTC 2019 - Bjørn Lie + +- Update to version 0.116: + + Leaking zombie child processes. + + Possible resource leak found by static analyzer. + + Output messages tuneup. + + Sanity fixes. + + pkttyagent tty echo disabled on SIGINT. + + HACKING: add link to Code of Conduct. + + polkitbackend: comment typos fix. + + configure.ac: fix detection of systemd with cgroups v2. + + CVE-2018-19788 High UIDs overflow fix. + + CVE-2019-6133 Slowfork vulnerability fix. + + Allow unset process-uid. + + Port the JS authority to mozjs-60. + + Use JS_EncodeStringToUTF8. + + Updated translations. +- Replace pkgconfig(mozjs-52) with pkgconfig(mozjs-60) + BuildRequires following upstreams changes. +- Drop patches fixed upstream: + + polkit-fix-possible-resource-leak.patch + + polkit-fix-leaking-zombie-child-processes.patch + + polkit-CVE-2018-19788.patch +- Refresh patches with quilt. + +------------------------------------------------------------------- +Fri May 10 14:44:20 UTC 2019 - Dominique Leuenberger + +- Use systemd_ordering instead of systemd_requires: strictly + speaking, polkit does not require systemd to be present. Just + that when we install on a system with systemd (e.g outside + containers) we would want systemd to be present before + installing polkit. Help also reduce a cycle without special hacks + in systemd.spec. + +------------------------------------------------------------------- +Fri Apr 26 11:06:05 UTC 2019 - mvetter@suse.com + +- bsc#1130588: Require shadow instead of old pwdutils +- User proper Requires(pre)/Requires(post) for permissions and + shadow + +------------------------------------------------------------------- +Thu Dec 20 17:29:58 UTC 2018 - meissner@suse.com + +- polkit-CVE-2018-19788.patch: Fixed handling of UIDs over MAX_UINT + (bsc#1118277 CVE-2018-19788) + +------------------------------------------------------------------- +Fri Aug 17 07:56:08 UTC 2018 - bjorn.lie@gmail.com + +- Add polkit-fix-possible-resource-leak.patch: Fix possible + resource leak found by static analyzer. +- Add polkit-fix-leaking-zombie-child-processes.patch: polkitd: fix + zombie not reaped when js spawned process timed out (fdo#106021). + +------------------------------------------------------------------- +Wed Jul 11 10:48:37 UTC 2018 - meissner@suse.com + +- Update to version 0.115: + - Fix CVE-2018-1116: Trusting client-supplied UID (bsc#1099031) + - jsauthority: pass "%s" format string to remaining report function + (obsoletes polkit-jsauthority-pass-format-string.patch) + +------------------------------------------------------------------- +Mon Apr 9 22:38:39 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 0.114: + + Port to mozjs 52, the latest version of the firefox JavaScript + engine. + + Add gettext support for policy files. + + Fixes for various memory leaks. + + Updated translations. +- Update keyring with Ray Strode public key. +- Drop with_systemd define and all conditionals and + polkit-no-systemd.patch and ConsoleKit BuildRequires, we only + support systemd now. +- Drop upstream fixed polkit-itstools.patch. +- Rebase pkexec.patch with quilt. +- Add gcc-c++ and pkgconfig(mozjs-52) BuildRequires: New + dependencies. +- Drop conditional pkgconfig(mozjs-17.0) and pkgconfig(mozjs185): + no longer supported. +- Drop autoconf and automake BuildRequires: They are implicit via + libtool BuildRequires. +- Replace glib2-devel and gobject-introspection-devel with their + pkgconfig counterparts: pkgconfig(gio-unix-2.0), + pkgconfig(gmodule-2.0) and pkgconfig(gobject-introspection-1.0). +- Add polkit-jsauthority-pass-format-string.patch: jsauthority: + pass "%s" format string to remaining report function, patch from + upstream git, adding missed commit (bgo#105865). +- Drop polkit-revert-session-magic.patch: Upstream systemd bug is + since a long time fixed (gh#systemd#58) (boo#954139). + +------------------------------------------------------------------- +Thu Mar 1 11:23:00 UTC 2018 - schwab@suse.de + +- pkexec.patch: pkexec: allow --version and --help even if not setuid + +------------------------------------------------------------------- +Wed Feb 28 16:38:33 UTC 2018 - dimstar@opensuse.org + +- Modernize spec-file by calling spec-cleaner + +------------------------------------------------------------------- +Tue Aug 15 12:20:52 UTC 2017 - dimstar@opensuse.org + +- Add polkit-itstools.patch: Add gettext support for .policy files. + +------------------------------------------------------------------- +Tue Jun 13 15:25:58 UTC 2017 - lnussel@suse.de + +- Use gettext as fallback to get potential distro translations for + polkit actions. Similar mechnism as used for desktop file + translations. That way it's possible to use weblate to add + additional translations that are not provided by upstream + (polkit-gettext.patch). + +------------------------------------------------------------------- +Wed Jun 8 11:13:43 UTC 2016 - fbui@suse.com + +- Use pkgconfig() instead of requiring systemd package names directly. + +------------------------------------------------------------------- +Tue Jun 7 15:25:00 UTC 2016 - fbui@suse.com + +- systemd.pc is shipped by systemd main package (bsc#983167) + Strangely polkit wants systemd.pc to detect that the target system + is running systemd even if its configured to build systemd support... + +------------------------------------------------------------------- +Thu Nov 26 16:26:09 UTC 2015 - meissner@suse.com + +- polkit-revert-session-magic.patch: revert a session detection change + that could lead to sessions not being detected as active due to + a systemd bug. bsc#954139 + +------------------------------------------------------------------- +Thu Aug 6 21:26:18 UTC 2015 - antoine.belvire@laposte.net + +- Update to 0.113: + * Fix CVE-2015-4625 + * Fix CVE-2015-3256 + * Fix CVE-2015-3255 + * Fix CVE-2015-3218 + * On systemd-213 and later, the “active” state is shared across + all sessions of an user, instead of being tracked separately + * pkexec: when not given a program to execute, runs the users’ + shell by default +- Remove polkit-no-kded-leak.patch (upstreamed) + +------------------------------------------------------------------- +Mon Jan 12 13:21:20 UTC 2015 - tchvatal@suse.com + +- Try to fix kded leaking due to powerdevil exposing this issue in + polkit: (bsc#912889) + * polkit-no-kded-leak.patch + +------------------------------------------------------------------- +Tue Dec 9 16:23:50 UTC 2014 - meissner@suse.com + +- Added gpg signature and keyring with David Zeuthen and Miloslav Trmac + ids. + +------------------------------------------------------------------- +Fri Sep 27 08:16:34 UTC 2013 - toms@opensuse.org + +- Fixed URL + +------------------------------------------------------------------- +Thu Sep 19 01:13:08 UTC 2013 - hrvoje.senjan@gmail.com + +- Update to 0.112 + + polkitunixprocess: Deprecate racy APIs + + pkcheck: Support --process=pid,start-time,uid syntax too + (CVE-2013-4288) + + Use GOnce for interface type registration + + Add czech translation po file to distribution + + Update the czech once more with newest pot file + +------------------------------------------------------------------- +Fri Jul 5 11:50:44 UTC 2013 - dimstar@opensuse.org + +- On openSUSE 13.1+, switch from mozjs185 to mozjs-17.0 by: + + Conditionally BuildRequire pkgconfig(mozjs-17.0). +- Drop libmozjs185-1_0 Recommends: the library is actually required + and auto-detected as such by rpm (from 0.111 changes: "The + JavaScript interpreter is now mandatory"). + +------------------------------------------------------------------- +Fri Jun 14 20:34:39 UTC 2013 - hrvoje.senjan@gmail.com + +- Update to 0.111 + + Both js185 and mozjs17 versions of SpiderMonkey are supported + + The JavaScript interpreter is now mandatory + + Fixed various memory leaks + + Respect SUID_CFLAGS and SUID_LDFLAGS + + Set process environment from pam_getenvlist() + + Fix the build with automake 1.13 +- Drop polkit-suid_flags.patch and automake-113.patch, those + patches are included in this release + +------------------------------------------------------------------- +Thu Apr 11 01:17:21 UTC 2013 - hrvoje.senjan@gmail.com + +- Add automake-113.patch, fixes build with automake-1.13 + +------------------------------------------------------------------- +Mon Feb 18 19:47:33 UTC 2013 - gber@opensuse.org + +- Recommend libmozjs185-1_0 which is dlopen'ed and required for JS + rules + +------------------------------------------------------------------- +Mon Jan 14 15:51:20 UTC 2013 - hrvoje.senjan@gmail.com + +- Update to 0.110 + + Set XAUTHORITY environment variable if is unset + + Use mutex and condition variables properly + + Build fixes. +- Changes from version 0.109: + + Include gmodule-2.0 to avoid linker errors + + Don't require libmozjs185 devel packages for polkit rules + to work +- Drop polkit-link-gmodule.patch and polkit-libmozjs.patch, those + are merged upstream + +------------------------------------------------------------------- +Wed Jan 9 14:08:57 UTC 2013 - saschpe@suse.de + +- Only mark the following files as %config, not %config(noreplace): + + %{_sysconfdir}/dbus-1/system.d/org.freedesktop.PolicyKit1.conf + + %{_sysconfdir}/pam.d/polkit-1 + + %{_sysconfdir}/polkit-1/rules.d/50-default.rules + PolicyKit's own config files should only be changed for good reason + and we want to prefer openSUSE's defaults (you still get an .rpmsafe + file) + +------------------------------------------------------------------- +Mon Dec 10 07:45:47 UTC 2012 - dimstar@opensuse.org + +- Add polkit-libmozjs.patch: dlopen libmozjs185.so.1.0 instead of + libmozjs185.so, which is packaged in the -devel package + (bnc#793562) + +------------------------------------------------------------------- +Thu Nov 15 21:31:19 UTC 2012 - dimstar@opensuse.org + +- Update to version 0.108: + + PolkitAgent: Avoid crashing if initializing the server object + fails + + Fall back to authenticating as uid 0 if the list of admin + identities is empty + + Dynamically load libmozjs185.so and cope with it not being + available + + docs: mention the audience for authorization rules + + build: Fix .gir generation for parallel make +- Only conditionally Require ConsoleKit when with_systemd is 0: + systemd support obsoletes ConsoleKit. +- Add polkit-link-gmodule.patch: Link against gmodule-2.0. +- Change libpolkit0 to require polkit >= %version instead of the + exact version. This will ease upgrade problems should there ever + be a soname bump of libpolkit0. + +------------------------------------------------------------------- +Wed Nov 14 09:26:14 UTC 2012 - dimstar@opensuse.org + +- Enable systemd inetegration (change with_systemd to 1): As an + agreed target for 12.3, systemd integration will be enabled. + +------------------------------------------------------------------- +Thu Nov 8 21:34:15 UTC 2012 - aj@suse.de + +- Add pwdutils to prereq for groupadd and useradd. + +------------------------------------------------------------------- +Thu Sep 27 07:55:23 UTC 2012 - vuntz@opensuse.org + +- Add polkit-no-systemd.patch: this patch, only applied when not + building systemd support, removes the systemd service reference + from the dbus .service file. This is needed as the systemd + .service file does not get installed in that case and dbus gets + confused because it expects it. +- Make %{_datadir}/polkit-1/rules.d and + %{_sysconfdir}/polkit-1/rules.d owned by user polkitd, as those + directories have 0700 as permissions. +- Those two changes should fix polkit so it can start. + Fix bnc#782395. + +------------------------------------------------------------------- +Tue Sep 25 09:05:02 UTC 2012 - vuntz@opensuse.org + +- Use %{_localstatedir}/lib/polkit for $HOME of polkit user, + instead of %{_libexecdir}/polkit-1. The directory is manually + created in %install. + +------------------------------------------------------------------- +Fri Sep 14 18:20:06 UTC 2012 - vuntz@opensuse.org + +- Update to version 0.107: + + Try harder to look up the right localization + + Introduce a polkit.Result enumeration for authorization rules + + pkexec: add support for argv1 annotation and mention + shebang-wrappers + + doc: update guidance on situations where there is no polkit + authority +- Changes from version 0.106: + + Major change: switch from .pkla files (keyfile-format) to + .rules files (JavaScript) + + Nuke polkitbackend library, localauthority backend and + extension system + + Run polkitd as an unprivileged user + + Add a systemd .service file + + Several other code changes. + + Updated documentation. +- Changes from version 0.105: + + Add pkttyagent(1) helper + + Make it possible to influence agent registration with an a{sv} + parameter + + Several other code changes. +- Add pkgconfig(mozjs185) BuildRequires: new dependency for the + authority backend. +- Rebase polkit-no-wheel-group.patch: the admin configuration is + now in a .rules file. +- Rebase polkit-suid_flags.patch. +- Explicitly pass --enable-libsystemd-login or + --disable-libsystemd-login, depending on whether we build systemd + support. +- Add a %pre script to create the polkitd group and user, as + polkitd now run as an unprivileged user. + +------------------------------------------------------------------- +Wed Aug 22 15:52:30 UTC 2012 - meissner@suse.com + +- also use -z now for binary hardening + +------------------------------------------------------------------- +Wed Jun 13 20:54:29 CEST 2012 - vuntz@opensuse.org + +- Package /etc/polkit-1/localauthority and its subdirectories. They + were forgotten because they were empty, but people might need + them to put .pkla files. + +------------------------------------------------------------------- +Fri Feb 24 12:11:04 UTC 2012 - vuntz@opensuse.org + +- Change the way we pass -fpie/-pie: + + Drop polkit-pie.patch: this was not upstreamable. + + Add polkit-suid_flags.patch: respect SUID_CFLAGS/SUID_LDFLAGS + when building the suid binaries (pkexec and + polkit-agent-helper-1). + + Add autoconf, automake and libtool BuildRequires, and call + autoreconf, for the new patch. + + Set SUID_CFLAGS to -fPIE and SUID_LDFLAGS to -pie in %build. + + Pass --with-pic to configure instead of changing CFLAGS to + contain -fPIC. + +------------------------------------------------------------------- +Tue Feb 7 14:39:43 UTC 2012 - dlovasko@suse.com + +- fixed bnc#743145 - added -fpie/-pie flags to compilation and linking of polkit-agent-helper and pkexec + +------------------------------------------------------------------- +Mon Jan 9 09:33:30 UTC 2012 - vuntz@opensuse.org + +- Split typelib file into typelib-1_0-Polkit-1_0 subpackage. +- Add typelib-1_0-Polkit-1_0 Requires to devel subpackage. +- Add explicit libpolkit0 Requires to devel subpackage: it was + missing before. +- Remove explicit glib2-devel Requires from devel subpackage: it + will automatically be added the pkgconfig() way. +- Improve summary of libpolkit0 subpackage. + +------------------------------------------------------------------- +Wed Jan 4 22:03:54 UTC 2012 - crrodriguez@opensuse.org + +- A quick test reveals that the systemd backend does not + integrate very well with packages yet, revert. + +------------------------------------------------------------------- +Wed Jan 4 21:02:38 UTC 2012 - crrodriguez@opensuse.org + +- Previous update missed systemd-devel in buildrequires + without it no systemd support is built + +------------------------------------------------------------------- +Wed Jan 4 13:52:09 UTC 2012 - vuntz@opensuse.org + +- Update to version 0.104: + + Add optional systemd support + + Add netgroup support (fdo#43610) + + Add unit tests (fdo#43608) +- Changes from version 0.103: + + Mistype in DBus object: PoliycKit1 -> PolicyKit1 + + Add support for the org.freedesktop.policykit.imply annotation + + Add --no-debug option and use this for D-Bus activation + + Add org.freedesktop.policykit.owner annotation (fdo#41025) + + Default to AdminIdentities=unix-group:wheel for local authority +- Drop patches that were taken from upstream: + + 0001-Add-support-for-the-org.freedesktop.policykit.imply-a.diff + + 0002-Add-no-debug-option-and-use-this-for-D-Bus-activation.diff + + 0003-Bug-41025-Add-org.freedesktop.policykit.owner-annotat.diff +- Add polkit-no-wheel-group.patch: do not allow the wheel group as + admin identity, and revert to only accept the root user for this. + +------------------------------------------------------------------- +Wed Nov 2 10:30:03 UTC 2011 - lnussel@suse.de + +- pick some patches from git to add support for + org.freedesktop.policykit.imply, disable debug spam and allow + unprivileged users to query authorizations (bnc#698250) + +------------------------------------------------------------------- +Fri Sep 2 10:42:54 UTC 2011 - vuntz@opensuse.org + +- Update to version 0.102: + + pkexec: + - fdo#38769: Support running X11 apps + - Avoid time-of-check-to-time-of-use problems with parent + process + + Fix backend crash if a .policy file does not specify + + Fix multi-line pam prompt handling + + Don't show diagnostic messages intended for the administrator + to the end user + + PolkitUnixProcess: + - Clarify that the real uid is returned, not the effective one + - Record the uid of the process + + Backend: Use polkit_unix_process_get_uid() to get the owner of + a process + + Introspection fixes: + - Add --c-include to the gir files + - Specify exported pkg-config files in GIRs + + Build fix. +- Drop polkit-CVE-2011-1485-1.patch, polkit-CVE-2011-1485-2.patch, + polkit-CVE-2011-1485-3.patch, polkit-CVE-2011-1485-4.patch: fixed + upstream. +- Remove service usage, following the new consensus on Factory + packaging. + +------------------------------------------------------------------- +Wed Aug 10 12:20:39 UTC 2011 - dimstar@opensuse.org + +- BuildIgnore ruby, which is being dragged in via indirect + dependencies by gtk-doc for one of the helpers, which we do not + need during the build of polkit. Not dragging ruby in resolves a + build-cycle. + +------------------------------------------------------------------- +Thu May 5 19:35:05 CEST 2011 - vuntz@opensuse.org + +- Use %set_permissions instead of deprecated %run_permissions in + %post. +- Add permissions PreReq, which was missing before. + +------------------------------------------------------------------- +Tue Apr 26 21:19:32 CEST 2011 - kay.sievers@novell.com + +- use LGPLv2.1+ in spec file + +------------------------------------------------------------------- +Tue Apr 26 18:24:01 CEST 2011 - kay.sievers@novell.com + +- stat race condition (CVE-2011-1485) (bnc#688788) + +------------------------------------------------------------------- +Wed Apr 6 15:40:51 UTC 2011 - fcrozat@novell.com + +- Remove PolkitAgent-1.0.typelib from main package, it is in + library package. + +------------------------------------------------------------------- +Wed Mar 9 13:54:11 UTC 2011 - coolo@novell.com + +- update to 0.101: + * tons of bug fixes, see NEWS + +------------------------------------------------------------------- +Wed Nov 10 15:04:36 UTC 2010 - coolo@novell.com + +- fix file list + +------------------------------------------------------------------- +Thu Sep 16 09:34:50 CEST 2010 - vuntz@opensuse.org + +- Update to version 0.99: + + Remove duplicate definitions of enumeration types + + Fix (correct) GCC warning about possibly-uninitialized variable + + Fix another GCC uninitialized variable warning + + fdo#29816: Install polkitagentenumtypes.h +- Drop polkit-install-missing-header.patch: fixed upstream. + +------------------------------------------------------------------- +Thu Aug 26 10:04:44 CEST 2010 - vuntz@opensuse.org + +- Update to version 0.98: + + Fix scanning of unix-process subjects + + Add textual authentication agent and use it in pkexec(1) + + Fix ConsoleKit interaction bug + + pkexec: add --disable-internal-agent option + + pkcheck: add --enable-internal-agent option + + Fix wording in pkexec(1) man page + + Various doc cleanups +- Changes from version 0.97: + + Port to GDBus + + Add shadow authentication support + + Remove Lock Down functionality + + fdo#26982: pkexec information disclosure vulnerability + + Make polkitd accept --replace and gracefully handle SIGINT + + Implement polkit_temporary_authorization_new_for_gvariant() + + Make NameOwnerChanged a private impl detail of the interactive + authority + + Add a GPermission implementation + + PolkitAuthority: Implement failable initialization + + PolkitAuthority: Add g_return_if_fail() checks + + Add g_return_if_fail() to all public API entry points + + Use polkit_authority_get_sync() instead of deprecated + polkit_authority_get + + PolkitBackend: Don't export unneeded convenience API + + Update GI annotations + + Don't dist org.freedesktop.ConsoleKit.xml. + + Properly reference headers + + fdo#29051: Configuration reload on every query +- Drop pkexec-information-disclosure.patch: fixed upstream. +- Add polkit-install-missing-header.patch to install a header that + should get installed. +- Remove eggdbus-devel BuildRequires. +- Build with introspection support: add gobject-introspection + BuildRequires and pass --enable-introspection to configure. +- Fix groups of all packages to be valid groups. + +------------------------------------------------------------------- +Mon Jun 28 06:38:35 UTC 2010 - jengelh@medozas.de + +- use %_smp_mflags + +------------------------------------------------------------------- +Fri Apr 9 19:14:09 CEST 2010 - kay.sievers@novell.com + +- fix pkexec information disclosure + (fdo#26982, CVE-2010-0750, bnc#593959) + +------------------------------------------------------------------- +Mon Jan 18 14:20:11 CET 2010 - dmueller@suse.de + +- add baselibs.conf + +------------------------------------------------------------------- +Mon Jan 18 12:56:02 CET 2010 - kay.sievers@novell.com + +- new upstream release 0.96 + - Bug 25367 — Also read local authority configuration data from /etc + - Run the open_session part of the PAM stack in pkexec(1) + - Bug 25594 – System logging + - Properly handle return value from getpwnam_r() + - Fix error message when no authentication agent is available + - Make pkexec(1) validate environment variables + - Make pkexec(1) use the syslogging facilities + - Save original cwd in pkexec(1) since it will change during the life-time + - Complain on stderr, not stdout + - Don't log authorization checks + +------------------------------------------------------------------- +Wed Jan 6 18:22:23 CET 2010 - dmueller@suse.de + +- update to 0.95: + The major change this release is that the lockdown feature has + been cleaned up in a way so it isn't specific to the local + authority. See the NEWS files for more details. + +------------------------------------------------------------------- +Wed Dec 16 10:44:34 CET 2009 - jengelh@medozas.de + +- Package documentation as noarch + +------------------------------------------------------------------- +Wed Aug 19 23:22:44 CEST 2009 - vuntz@novell.com + +- Add Requires on polkit to libpolkit0: all applications using + libpolkit0 will really need polkit to be installed to work + properly. + +------------------------------------------------------------------- +Thu Aug 13 04:31:38 CEST 2009 - kay.sievers@novell.com + +- new upstream release 0.94 + - Allow unprivileged callers to check authorizations + - Don't spawn man(1) from a setuid program + - Add polkit.retains_authorization_after_challenge to authz result + - Ensure all fds except stdin/stdout/stderr are closed after exec(2) + - Be more careful when determining process start time + - Remove temporary authorization when the subject it applies to vanishes + - Generate GI gir and typelibs for libpolkit-gobject-1 +- drop patches which are in the release now +- disable introspection + +------------------------------------------------------------------- +Tue Aug 11 21:23:49 CEST 2009 - kay.sievers@novell.com + +- add upstream patches: + polkit-close-stdfds.patch + polkit-no-man-spawn.patch + polkit-proc-stat-parse-fix.patch +- drop rpmlint patch + +------------------------------------------------------------------- +Thu Aug 6 17:36:16 CEST 2009 - meissner@suse.de + +- check for the right binary in verify_permisisons + +------------------------------------------------------------------- +Thu Jul 30 17:32:41 CEST 2009 - coolo@novell.com + +- disable suid bit for now to get software build on top +- split out libraries to follow shared library policy + +------------------------------------------------------------------- +Tue Jul 21 03:20:55 CEST 2009 - kay.sievers@novell.com + +- update to version 0.93 + +------------------------------------------------------------------- +Sun Jul 19 15:31:44 CEST 2009 - kay.sievers@novell.com + +- initial import of polkit 0.92 + diff --git a/polkit.keyring b/polkit.keyring new file mode 100644 index 0000000..b56ce1f --- /dev/null +++ b/polkit.keyring @@ -0,0 +1,656 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2.0.19 (GNU/Linux) + +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 +s6j0oqWpxG9hQMRbCrVnVoF9wDYkPa359joTcat4pfHm4TlMiuIC+hdZRIiroXEE +1rEN5+KRZq5DoStftPM6BhGV/gEIRrxE8VO8OT5RYDpmXkRYU8YSKiAjewTYViQG +nUWtjUFsE6rueD4qTH3h3JBIJwytw8chmKLQvJ6q6t3Yhmtc9s9OYyJpIgu/P2o6 +9WrHZqu5FeAUncRnDWZDcTp7EjdzN5Vf1BNzQ1Hxko2UFaWmMkp2w8M3m+iMIws+ +pOoJYssUiL3sWT3i+W3t0cpBCxrpKllyYU0IK/2ySdHcBDoUJbT5Un3O9jnb9Gz6 +KSlUj0jVaa4KbNtQfgoCjIzdoRIjnjEDC6wggBYD4gGmXmBjHx9lpPRZv19R4rLP +vYIv60qW5MjtoHObuPJg2aKJmMzO5xsCDughFeOMTH5ZFc1asE7U9W7INdMIzqZz +wqtE4sENU4W9Xru6mQfjVQh3XQapnFfdbT5xR5LA7NWsME9ywinfNRblR13tboIA +5tvsUAqXaiZ1hhlYyf+zNCefG3c4LAGEymBQVBqkUGjBJYDGmySvxOgth9HTyNPG +ARAAAQEAAAAAAAAAAAAAAAD/2P/gABBKRklGAAEBAAABAAEAAP/bAEMACAYGBwYF +CAcHBwkJCAoMFA0MCwsMGRITDxQdGh8eHRocHCAkLicgIiwjHBwoNyksMDE0NDQf +Jzk9ODI8LjM0Mv/bAEMBCQkJDAsMGA0NGDIhHCEyMjIyMjIyMjIyMjIyMjIyMjIy +MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMv/AABEIAJMAegMBIgACEQED +EQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQD +BQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoW +FxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5 +eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU +1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAA +AQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2Fx +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 +90w= +=4JY0 +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2 + +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 +GhkqM9xxGDgEZrs+RQaMaWVpx+CDUB2HHlqkb4Chpxp/jTIUYasXe8KQDhU9F33g +fK9qGzlCi6UX+RS038fh2OMq8VF/t+iYVG1CE/48NXK53if0uBbvNAzZU/TNbOWf +2xHtoPRAZksaQimrLfrLyfN2agkFoHHcckjYSoKhmASA/EeRvMaleOC+o8NBKI8u +9NPXoegKhEB0VNPgHGTi7kOe3oHZmxkufptFqX+nbOmRz+5/Bj+htE+qI/Dq6Km9 +ABHsmZE7m+CzHsbXenUceyvCGapFsJSyxou/5tZmiQIcBBABAgAGBQJT6SewAAoJ +EG7cfkpivEoVkMMP/jo3FBu9Z1IhhZD+e5lRE/vpRGoCOZwnwEvrVyUUSXwWQ+Ms +p+we8eEchhnRyCW/YBChRGA1LOr1S9VlFSb26ZBtRnI8rWwWpFKFGTRVON0wzOnX +1sqKzi388lenzsBT2q2Yurlb7ZJkQm+Spt4wyyLPY61dZt2XbTuuL7lslfwwCvNz +zzUmBrOXNkosCK1Dgqz79CIX+gj8HI8J/nu9esc+6khtJwKp5TcoGJz7LtqaBQrz +PWOldxCDD2nnMJTnNWPrhL8LbN+yUZl4g4SS4TNE6XY/aio8ugZCVdCsZssZwNCS +QBN/+vyt4IKTBtvjWLmrrl3D7iG025yx66Cov8cOMdkN9K/eOPj6eJjhfeH7qWal +RQhn0KKjwvfx3Q2py34YOCUEDFCZ1UUYIPjliCALORj+oYOcQjgn5jDQfYrY7cca +u3A+IEHUkIVfYIvMscJrOpsLhDE3LEwiGdrJP0JVcwqEh4Cizo5cc6tkv3nli0Vu +uEo9LBGwQzXYFaPCbHsr/ynUbiWL8ydJAnpTCYSVq6gXRmPtRx63+yLIOk/4cuJ3 +tWBVHRkqn/5Q0HI7D10wBUcqVwkta8qAgN25F7IqV+/ZufDZdF+5N0f0hc9QJMGX +TKjTdYcXCrIhcIqHOL6ts88sRGsSMRBGe4Vb90X78t8VJofhk0lo7hmR67oiiQIc +BBABAgAGBQJUDwKdAAoJEPaFUazsAhFFv64P/1ZkrUlcPpU8brIMMAMQWNr5E5kt +JFkFWdeIJ2JVh8a+EnpDR9WiGpb2h8NbrSxSJmq9pOLXCG1bDM1CLqQvIosTyvoJ +sbU+mWctbBumrYay7YLhs5Bqkndq62TSHP00KT8s7LENCwQf+h8X+fBPARNcFWxL +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 +QhjSwn7gMC27Yl+lK30= +=Tq/o +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBFnWPoIBEAC6dMJpbIoR3WWUi3tts/2x6W70yjk1wO8Q94LrHvKLfYq6hYXB +92gxp4RgiRXXoWu+Wh3teoFUUz8cGg7TdiBdJzICfaYq9pOx7W9JFH5mAV8grylD +t8uzwo1WkkT8/mF5CGpm1aCIKoVjxMaUsFNlPU5nv0+CKK0c/BJi/AKcqMfuCF9G +SupPWQqI20PmwNy/xuAkNjIjbep5ZkiF4et4j4elwj3Y++or1kASJ6tWMydbsW9U +aRyOCqJf4stDNtJAsj+8/KH5w6mlydgo0SZimrzOp6nhrJV9d/RFN6i2CkftavwW +wm0tsotkAFsqxXmgJNQQwA4/71f7Vj2BGVR7nDLFAM0I8u3bHToDu+c75JbaADym +45bsn73TtcJyo7RidZhkFx8V3f6EEpWEaBqn8di47VL8E81eG3iw/g7xWqGVA2Nm +9Mk0rGO7jkhNLxGfKvXXpm9yCG7ILYPRiFqtVtsR46t1e6bQZDxsHIIxL/SJATYA +4EpUyJWgygin3XryNPQyd4tqmpGx2DE5z5V7pgoT5mFIMePYi8qptp/i3X3UZMIx +CgdmAV/qGJmb7i5u/e4aB/K0ZQgMcQ14uywK9TzeHCuYfNk23Z8qYa8mV/wGUy1S +y/qFnQ3yjKQV/CC4dFXbNpN0Wqvs9zXXEEA2UsF1A88e3uHHyIc4NAVEuQARAQAB +tB9SYXkgU3Ryb2RlIDxoYWxmbGluZUBnbWFpbC5jb20+iQI4BBMBCAAsBQJZ1j6C +CRDptRpmWCnWVQIbAwUJHhM4AAIZAQQLBwkDBRUICgIDBBYAAQIAAIeKD/4kiC3G +oJNQ9pOyYvkRT0hYigV/w4Xfw5Q9m8xqkYFaXN+AP7unTZpt6qp+m1Fg/1xEwWSF +MApbX/qvtKxQOV312PvG5Jl7di9fOTMzCsYrsD+yAfwJM5Mzc2MineXsmGdpTs12 +ZO9pGfRJ9nEmOgAKpRfFKPQohBbM/RLCbycd4IGTUKt3hRi/UzUcKUBYNHL7s5te +TPR7VjtR3l7+WrGPAh5E0IsQnQ/NUDQRzwuY58dyqqAb4aVQeOiLVr3+N/8YKgQv +0HjwbyD2A9k1/jMBHeNFd79PjIE6Y7lLERBHo+5L1J1PV8jR+UMloPDVCM+/Rie5 +2KvQFlDOkIDjNC96C8n9hnR6rbffJUzOcRkTgvVGWCpB3b4JSOEezR0rhqBCPtf7 +a9GTgxtFpGsi6//Sz5F4aDRUhaX31a6syQWuBlv0lpgG7Ufhc5kGUkK/eUXnH+kj ++56uA/xkEKS2e4ybGGM65uUw39XCKrfRypYX1NFyKCahFxaUO0nL3tlR2ey+UqfR +gOs3UC+M0+4E+gjuYVurBdMra9X+eEghg33ihsc+AtMinyt6N5KNrr0OxXAbiYHp +BRj6cwzKqCDSyMSZyiYrR4ywDTvDpiQJAtqeV7JS5m+3kerk1wIYsRAD+IRVl6QN +fQ1cMwrStb8FrO8/AdOjGdifMHSviSvy0v2v2rQiUmF5IFN0cm9kZSA8aGFsZmxp +bmVAaGFsZmxpbmUub3JnPokCNQQTAQgAKQUCWdY+ggkQ6bUaZlgp1lUCGwMFCR4T +OAAECwcJAwUVCAoCAwQWAAECAAAH3A/+KsmoXZ9Ph6p6xqNCYyNLfdsn5NRAbsY9 +spOCo4fSYaMRcypzPX3wQyyn18zM5BxS4rBItjH3HcXM2r2Y0puFwAa39e1NJh+e +ZtsqXqM0gBOVAvqsCkgAW/VIpk7NiyrvOm8H/WtadyTI1FzNtpA/Nvyvw5awGREp +B7iVeYtQwwgTnvu+tzoQAInVM9NFbm2UMiJYN7hiMx2gAzNLkRmoUvA6f4LxURmL +QgxTHsaQqFNLInzOOhpBWbeqdtt3SA+E9viCmkh+eCODrbhfY4f9Sc2H3LhlfFK7 ++gfIjvUtlE782e4QTpkEsf/r6MSjkTORLseX81ZMRacZqRMe1Uj2Jc4qFOFoNw8K +vAVbbWW7ORc9U9I9c4SeIPtcV8qgHgS/3g+7FIZCkhqqg0eCAkwFrQ8Kzg0j/uAd +MFi36CSBSOn/5m9emwUZkqq4Ysr0trq4hstWoo+a01UAkU9ZiS4BrJSd09bZvEHI +yVTTeK5QxzkXhMgC2QtHQ8bRWXEQWgbSS6fMMPEcYXz/UQ/aGqOOByNRq1eV8bHo +BoYa/WqioYdKn1/EvL0h3rgHD3DEfR0MblwP/85JyoOVjwuMGtREkLufCO2gqKXT +fa8pw3E+/c+1u84ADuQu88cqeC67iVBfd7D/Gl/iCZ9yDIq+JAnXSxBX6gR59cbL +v7KWe5MRHsm5Ag0EWdY+ggEQAKTfBemonnLCu3hJJHcfxsUqrw7P31c2VSVGOSTy +IT0pC9svDwhfCmYj+nABS0BVrQJN43FyExDtBKOo/GRMnlVTURbw1QOkAts6H+Gr +OWb7AzdlJSKq658oEBClukXY1EjlvzQnSeM3PmTLTuHmtO3yLmxtNAzfYIsGkGH7 +AJ65MWM+k+HMToPeYH3uZRiRa4n33izBWYg+43JnvErv5t7gl6TOSBQfH4IDmy8P +Di9fznd9LehYtBX0E4410+X5N8jyQ6sDDdG7daQa2m4pTyYkQYwMrI/n6zEYBdSX +Nn6wfXkYfr/1eCZGvUuR7pEKO/Mph8QK5VczV83uz/hKeA9euUClHav52hUhXqen +wRsEc34xLcdh+Uq3CoDJUcetEFmhionQU8KYtM+ypxL+r1xcI1Ugy2PrTEc6PJUc +vv4wP97ns7P7acLVbWRhHU+/FHsR3cZr+Ukh7kAFUOjSJySg0N2d9LV5gM17MN3/ +N0eESQ6xRuJx15R3iXvAtKwhHeGcOOyqUTqZO0VSNOvAQcStheFY/JQjPTHUl5jw +gsHkT53ui0O5acy7DkcaOFgatLJlOVTYNPhQ0SJjxD3k8/c7imTL7fFZilFw2hNK +IxHKE8tpJ3/Do9B07F21/rEAxnwIJyrI7GbDhurl6UztfVMVkuATo7j3Aeb88weD +mBrPABEBAAGJAjUEGAEIACkFAlnWPoIJEOm1GmZYKdZVAhsMBQkeEzgABAsHCQMF +FQgKAgMEFgABAgAAnasP/1pDCfMvR6mjbG44kzEpu8M8H3v5WmRGea1AXC2qRkZT +ICXZT1Cyo6AubaPcom+JeTu9uL1A7zHVJsLLYIPFiElI0jrIli885pGty8gXmImR +9k4h8Nhs7o3gMkpsOHUvGmu+g+oJyOPsLYwtRRWZaJFrcYrfnwWS3mpXYNPLMtdT +vWGDutsTkXAgBzpGcjDhdVEsL1xXi3ZL7IgWI0jJkjBrxlc/YLo/Kfx5LNwtmRvL +7wX1lOwSpDdCUw7NVTa8gy9cm3YvF+JWZz8vWcjU8OoOUhDNKWfuRJ7Xn4yd98l0 +Ri/WNWIL7o+qmzL+xqm9eE8nkwI/8qNLf/2nDPAFhr6p2PtknoSF7atg5f2Zbfkz +G/J00DwSFbpUfFvsI48EaCepxtbjx6LpDiTlkGbdqtLYlkH/HcyO3UJcTsw/AZyZ +Nrne6oaTuS3Om3tcQUw/hwhBmnebCKHHKineQ06jedB0P5FMfh9qZmrAP7V5zFrd +VaX/nvFl+nHjF0NioKz06CgB1ceKo09tHnHvgsGyFVKOKkC3YhDhlG5SQQODYk4k +uhMPUaUfZX3DaEtMtjV+6jNnfP3jFEJHYAvQpCLQEC/Jk3odKgrw/UNJY2wewFXR +xswOcJBwoxssbQmiBaFp13Frzhjwjwqer+npV6FuOLjRsnMd7h9EgiGYGqH385w0 +=DnDa +-----END PGP PUBLIC KEY BLOCK----- + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: SKS 1.1.6 +Comment: Hostname: fks.pgpkeys.eu + +mQENBFtkaE8BCADL6NFIHYl5RDKRyDm2/igDWiveVFWzUZGJeBBkAcpZcstJK0mDxwWbcOwE ++XvMUux4HwZCymZb+5SctrHyQvS629BTbynfZv5JOIAKl1Hg24yklBGYJ1LX/4H140Y2cGTN +3xymGisSYMNF11Cngsw1qND8NJ6fqadHafn8s1gvphFkCs8LpoJgTBrLEUQZpnpSRcIP+/UR +2R/ErCkwE9erPHfksj+B+hGD6PKqeLPSvLq5F9L+axnMgH784QQADn3BaM2ZePtC+gbUYgsY +ra6jwsEsjZmd/nauVex2rB3MaRgiwTg6+cmDXgd5a0w2CPMFlQiWiamb7/UfCxsFRgs3ABEB +AAG0J0phbiBSeWJhciAoUmVkIEhhdCkgPGpyeWJhckByZWRoYXQuY29tPokBOAQTAQIAIgUC +W2RoTwIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQjOswMP/c4lha5wf8C7+FoCIU +NE83GgnG4Vp7jJFgn1B8ea7Jvya0X37kHWBUueQv7F0M+3qUtVQNHDSIfehysiAtNncWh58V +n9JWohzvWTGnZ1bY8IeU/MxCrBrWaxqsjsWOPq1smtnIas7LLkn44oOlyOXDVOp/JOk4QxoO +gf6GIERpit/0dBNjFSkeL037ocB/f6WekG4MpYtp/U4gy3MAWhBKXxJUTgJFRSiLtGEdnUGW +wG8ZbulGRRO79rWg9ThvpPEEqZG/2bm4kWMlaaaDsJ9lbPA4rN0uU0ny3/2COwqKtpwrLvRE +duRcVG9vpnCl5zkFtNc00p2RRBrQJ/PLq2OdSrGMf0skhbkBDQRbZGhPAQgAxaVnvy+O0sUR +/P1e7CAQKg7jSXFoUIHVpT/F7Q2t3hs2I3wmQTAy92CVWDXJDDpN93VR6IJQzws0F7IV9+Js +xl4Hu6ELyaOpMD0QVb09s9C0s2nz88rn6WMoy0wuVJcB0h8aNzUBjRsgi94XTH44tlcVZj4q +/GbQaJy8kBNu5V6sAQg64h5xuU4tow8tkzL78bNOLeYXyEYOO+Dlt/879oxQca+dTHXr13NV +wKFqcduBIcsQZd5JnQFeXo+8XWpmeS/wwX0RW+J0mSYWvjP/fMeE7BIftbbolqr+HwwppVNP +ouFDPq/9bKmQs7USen6rOJ6uIqMhPkopgXXOle3EEQARAQABiQEfBBgBAgAJBQJbZGhPAhsM +AAoJEIzrMDD/3OJYmlMH/0NTd/lZ0jh0djRYlRcz0OIT9B/2gYmNoekEsciEliPS3WEN+M2s +kZM/L/lLFCbD4dOqlXqb84Yvch9iC/VzCEYCEs8Kz647H2mBnyHxxOKtgrXJpWhZoRzs9pzb +AVCEkl5+PjFRwhn7Nwpm/EG+02VgR9JC1ZdX28iN3a3axbLuI9RIZznRRL5Jr5ePMJ0nRvWY +HX4K+Wt5UhHuo1Kaj9Yn0UcTCj7WKznRjNtL6S4N4mS8OJwi8jZ8Rvb3GFCViEaVz/+ZNBaW +HGJO/6RB1aNr3SlD155eTM6H6v2lsNn4gpc7T3GL9AzEsuUef5mqo1EsO+OJeBrQv8vVybJx +GJ8= +=QrX7 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/polkit.spec b/polkit.spec new file mode 100644 index 0000000..b00fe54 --- /dev/null +++ b/polkit.spec @@ -0,0 +1,303 @@ +# +# spec file for package polkit +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define _polkit_rulesdir %{_datadir}/polkit-1/rules.d +%define glib_br_version 2.30.0 +%define run_tests 1 + +Name: polkit +Version: 121 +Release: 0 +Summary: PolicyKit Authorization Framework +License: LGPL-2.1-or-later +Group: System/Libraries +URL: https://www.freedesktop.org/wiki/Software/polkit/ +Source0: https://www.freedesktop.org/software/polkit/releases/%{name}-%{version}.tar.gz +Source1: https://www.freedesktop.org/software/polkit/releases/%{name}-%{version}.tar.gz.sign +Source2: %{name}.keyring +Source3: system-user-polkitd.conf +Source99: baselibs.conf + +# Upstream First - Policy: +# Never add any patches to this package without the upstream commit id +# in the patch. Any patches added here without a very good reason to make +# an exception will be silently removed with the next version update. + +# PATCH-FIX-OPENSUSE polkit-no-wheel-group.patch vuntz@opensuse.org -- In openSUSE, there's no special meaning for the wheel group, so we shouldn't allow it to be admin +Patch0: polkit-no-wheel-group.patch +# PATCH-FIX-OPENSUSE polkit-gettext.patch lnussel@suse.de -- allow fallback to gettext for polkit action translations +# polkit-use-gettext-as-fallback.patch +Patch1: polkit-gettext.patch +# PATCH-FIX-OPENSUSE polkit-keyinit.patch meissner@ -- bsc#1144053 Please add "pam_keyinit.so" to the /etc/pam.d/polkit-1 configuration file +Patch3: polkit-keyinit.patch +# PATCH-FIX-OPENSUSE polkit-adjust-libexec-path.patch -- Adjust path to polkit-agent-helper-1 (bsc#1180474) +Patch4: polkit-adjust-libexec-path.patch +# PATCH-FIX-UPSTREAM polkit-fix-pam-prefix.patch luc14n0@opensuse.org -- Make +# intended use of pam_prefix meson option rather than hard-coded path +Patch5: polkit-fix-pam-prefix.patch +# Read actions also from /etc/polkit-1/actions +Patch6: polkit-actions-in-etc.patch + +BuildRequires: gcc-c++ +BuildRequires: gettext +BuildRequires: gtk-doc +BuildRequires: libexpat-devel +BuildRequires: meson >= 0.50 +BuildRequires: pam-devel +BuildRequires: pkgconfig +BuildRequires: systemd-rpm-macros +BuildRequires: sysuser-tools +BuildRequires: pkgconfig(duktape) >= 2.2.0 +BuildRequires: pkgconfig(gio-unix-2.0) >= %{glib_br_version} +BuildRequires: pkgconfig(glib-2.0) >= %{glib_br_version} +BuildRequires: pkgconfig(gmodule-2.0) >= %{glib_br_version} +BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.6.2 +BuildRequires: pkgconfig(libsystemd) +BuildRequires: pkgconfig(systemd) +%if 0%{?run_tests} +################################################################# +# python3-dbus-python and python3-python-dbusmock are needed for +# test-polkitbackendjsauthority test: +BuildRequires: python3-dbus-python +BuildRequires: python3-python-dbusmock +################################################################# +%endif +# gtk-doc drags indirectyly ruby in for one of the helpers. This in turn causes a build cycle. +#!BuildIgnore: ruby + +Requires: dbus-1 +Requires: libpolkit-agent-1-0 = %{version}-%{release} +Requires: libpolkit-gobject-1-0 = %{version}-%{release} +Requires(post): permissions +%sysusers_requires +%systemd_ordering + +%description +PolicyKit is a toolkit for defining and handling authorizations. +It is used for allowing unprivileged processes to speak to privileged +processes. + +%package devel +Summary: Development files for PolicyKit +Group: Development/Libraries/C and C++ +Requires: %{name} = %{version}-%{release} +Requires: libpolkit-agent-1-0 = %{version} +Requires: libpolkit-gobject-1-0 = %{version} +Requires: pkgconfig +Requires: typelib-1_0-Polkit-1_0 = %{version} + +%description devel +Development files for PolicyKit Authorization Framework. + +%package -n pkexec +Summary: Pkexec component of polkit +Group: System/Libraries +Requires: %{name} = %{version}-%{release} +Requires(post): permissions +Provides: polkit:/usr/bin/pkexec + +%description -n pkexec +This package contains the pkexec setuid root binary part of polkit. + +%package doc +Summary: Development documentation for PolicyKit +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description doc +Development documentation for PolicyKit Authorization Framework. + +%package -n libpolkit-agent-1-0 +Summary: PolicyKit Authorization Framework -- Agent Library +Group: System/Libraries +Requires: %{name} >= %{version} +Obsoletes: libpolkit0 < %{version}-%{release} + +%description -n libpolkit-agent-1-0 +PolicyKit is a toolkit for defining and handling authorizations. +It is used for allowing unprivileged processes to speak to privileged +processes. + +This package contains the agent library only. + +%package -n libpolkit-gobject-1-0 +Summary: PolicyKit Authorization Framework -- GObject Library +Group: System/Libraries +Requires: %{name} >= %{version} +Obsoletes: libpolkit0 < %{version}-%{release} + +%description -n libpolkit-gobject-1-0 +PolicyKit is a toolkit for defining and handling authorizations. +It is used for allowing unprivileged processes to speak to privileged +processes. + +This package contains the gobject library only. + +%package -n typelib-1_0-Polkit-1_0 +Summary: PolicyKit Authorization Framework -- Introspection bindings +Group: System/Libraries + +%description -n typelib-1_0-Polkit-1_0 +PolicyKit is a toolkit for defining and handling authorizations. +It is used for allowing unprivileged processes to speak to privileged +processes. + +This package provides the GObject Introspection bindings for PolicyKit. + +%prep +%autosetup -p1 -n polkit-v.%{version} + +%build +%meson \ + -D session_tracking=libsystemd-login \ + -D systemdsystemunitdir="%{_unitdir}" \ + -D os_type=suse \ + -D pam_module_dir="%{_pam_moduledir}" \ + -D pam_prefix="%{_pam_vendordir}" \ + -D examples=true \ + -D tests=true \ + -D gtk_doc=true \ + -D man=true \ + -D js_engine=duktape \ + %{nil} +%meson_build +%sysusers_generate_pre %{SOURCE3} polkit system-user-polkitd.conf + +%if 0%{?run_tests} +%check +%meson_test +%endif + +%install +# install explicitly into libexec. upstream has some unflexible logic for +# this executable at the moment, but there is a PR# open to fix this: +# https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/63 +# once this has been resolved upstream and we update to a new release we can +# remove this and also patch4 above. +# +# Additional note: Upstream turned down the MR above, preferring to stick to +# using ${prefix}/lib/polkit-1 and non-distro-configurable. +%meson_install +%find_lang polkit-1 + +# create $HOME for polkit user +install -d %{buildroot}%{_localstatedir}/lib/polkit + +# We use /usr/share as prefix for the rules.d directory +mv %{buildroot}%{_sysconfdir}/polkit-1/rules.d/50-default.rules \ + %{buildroot}%{_polkit_rulesdir}/50-default.rules + +# Install the polkitd user creation file: +mkdir -p %{buildroot}%{_sysusersdir} +install -m0644 %{SOURCE3} %{buildroot}%{_sysusersdir}/ + +# create actions dir in /etc +mkdir %{buildroot}/%{_sysconfdir}/polkit-1/actions + +%pre -f polkit.pre +%service_add_pre polkit.service + +%preun +%service_del_preun polkit.service + +%postun +%service_del_postun polkit.service + +%post -n pkexec +%set_permissions %{_bindir}/pkexec + +%post +%set_permissions %{_libexecdir}/polkit-1/polkit-agent-helper-1 +%service_add_post polkit.service + +%verifyscript -n pkexec +%verify_permissions -e %{_bindir}/pkexec + +%verifyscript +%verify_permissions -e %{_libexecdir}/polkit-1/polkit-agent-helper-1 + +%post -n libpolkit-agent-1-0 -p /sbin/ldconfig +%postun -n libpolkit-agent-1-0 -p /sbin/ldconfig +%post -n libpolkit-gobject-1-0 -p /sbin/ldconfig +%postun -n libpolkit-gobject-1-0 -p /sbin/ldconfig + +%files -n libpolkit-agent-1-0 +%{_libdir}/libpolkit-agent-1.so.* + +%files -n libpolkit-gobject-1-0 +%{_libdir}/libpolkit-gobject-1.so.* + +%files -n typelib-1_0-Polkit-1_0 +%{_libdir}/girepository-1.0/Polkit-1.0.typelib +%{_libdir}/girepository-1.0/PolkitAgent-1.0.typelib + +%files -f polkit-1.lang +%doc NEWS.md README.md +%license COPYING + +%{_mandir}/man1/pkaction.1%{?ext_man} +%{_mandir}/man1/pkcheck.1%{?ext_man} +%{_mandir}/man1/pkttyagent.1%{?ext_man} +%{_mandir}/man8/polkitd.8%{?ext_man} +%{_mandir}/man8/polkit.8%{?ext_man} +%dir %{_datadir}/dbus-1 +%dir %{_datadir}/dbus-1/system-services +%{_datadir}/dbus-1/system-services/org.freedesktop.PolicyKit1.service +%dir %{_datadir}/dbus-1/system.d +%{_datadir}/dbus-1/system.d/org.freedesktop.PolicyKit1.conf +%dir %{_datadir}/polkit-1 +%{_datadir}/polkit-1/policyconfig-1.dtd +%dir %{_datadir}/polkit-1/actions +%{_datadir}/polkit-1/actions/org.freedesktop.policykit.policy +%attr(0750,root,polkitd) %dir %{_polkit_rulesdir} +%attr(0640,root,polkitd) %{_polkit_rulesdir}/50-default.rules +%{_pam_vendordir}/polkit-1 +%dir %{_sysconfdir}/polkit-1 +%attr(0750,root,polkitd) %dir %{_sysconfdir}/polkit-1/rules.d +%dir %{_sysconfdir}/polkit-1/actions +%{_bindir}/pkaction +%{_bindir}/pkcheck +%{_bindir}/pkttyagent +%dir %{_libexecdir}/polkit-1 +%{_libexecdir}/polkit-1/polkitd +%verify(not mode) %attr(4755,root,root) %{_libexecdir}/polkit-1/polkit-agent-helper-1 +# $HOME for polkit user +%dir %{_localstatedir}/lib/polkit +%{_sysusersdir}/system-user-polkitd.conf +%{_unitdir}/polkit.service + +%files devel +%{_libdir}/libpolkit-agent-1.so +%{_libdir}/libpolkit-gobject-1.so +%{_libdir}/pkgconfig/polkit-agent-1.pc +%{_libdir}/pkgconfig/polkit-gobject-1.pc +%{_includedir}/polkit-1/ +%{_bindir}/pk-example-frobnicate +%{_datadir}/gir-1.0/*.gir +%{_datadir}/polkit-1/actions/org.freedesktop.policykit.examples.pkexec.policy +%{_datadir}/gettext/its/polkit.its +%{_datadir}/gettext/its/polkit.loc + +%files -n pkexec +%{_mandir}/man1/pkexec.1%{?ext_man} +%verify(not mode) %attr(4755,root,root) %{_bindir}/pkexec + +%files doc +%doc %{_datadir}/gtk-doc/html/polkit-1/ + +%changelog diff --git a/system-user-polkitd.conf b/system-user-polkitd.conf new file mode 100644 index 0000000..59ba3ba --- /dev/null +++ b/system-user-polkitd.conf @@ -0,0 +1,2 @@ +#Type Name ID GECOS Home directory Shell +u polkitd - "User for polkitd" /var/lib/polkit -