diff --git a/NEWS b/NEWS
index dd6f21dc33..c317c20fbd 100644
--- a/NEWS
+++ b/NEWS
@@ -116,6 +116,12 @@ CHANGES WITH 258 in spe:
kernels that lacked support for it, hence the prefix serves no
purpose anymore.
+ * The default keyring for systemd-importd and related tools, shipped
+ in /usr/lib/systemd/, has been renamed from import-pubring.gpg to
+ import-pubring.pgp, as it is supported by other PGP tools as well as
+ GPG. The local keyring /etc/systemd/import-pubring.gpg is still parsed
+ if present, to preserve backward compatibility.
+
Announcements of Future Feature Removals:
* Support for System V service scripts is deprecated and will be
diff --git a/man/importctl.xml b/man/importctl.xml
index f67565bc05..c1021e60ba 100644
--- a/man/importctl.xml
+++ b/man/importctl.xml
@@ -125,8 +125,8 @@
, the sha checksum file is first verified with the detached GPG
signature of .sha256 or SHA256SUMS. The public key for
this verification step needs to be available in
- /usr/lib/systemd/import-pubring.gpg or
- /etc/systemd/import-pubring.gpg.
+ /usr/lib/systemd/import-pubring.pgp or
+ /etc/systemd/import-pubring.pgp.
If is specified the image will be downloaded and stored in
a read-only subvolume/directory in the image directory that is named after the specified URL and its
diff --git a/man/sysupdate.d.xml b/man/sysupdate.d.xml
index 9a32c8c734..13dcd09775 100644
--- a/man/sysupdate.d.xml
+++ b/man/sysupdate.d.xml
@@ -481,8 +481,8 @@
downloaded resources (specifically: validate the GPG signatures for downloaded
SHA256SUMS manifest files, via their detached signature files
SHA256SUMS.gpg in combination with the system keyring
- /usr/lib/systemd/import-pubring.gpg or
- /etc/systemd/import-pubring.gpg).
+ /usr/lib/systemd/import-pubring.pgp or
+ /etc/systemd/import-pubring.pgp).
This option is essential to provide integrity guarantees for downloaded resources and thus
should be left enabled, outside of test environments.
diff --git a/meson.build b/meson.build
index 3f5ddccd12..a468cf1ea1 100644
--- a/meson.build
+++ b/meson.build
@@ -320,9 +320,10 @@ conf.set_quoted('USER_CONFIG_UNIT_DIR', pkgsysconfdir / 'u
conf.set_quoted('USER_DATA_UNIT_DIR', userunitdir)
conf.set_quoted('USER_ENV_GENERATOR_DIR', userenvgeneratordir)
conf.set_quoted('USER_GENERATOR_DIR', usergeneratordir)
-conf.set_quoted('USER_KEYRING_PATH', pkgsysconfdir / 'import-pubring.gpg')
+conf.set_quoted('USER_KEYRING_PATH', pkgsysconfdir / 'import-pubring.pgp')
+conf.set_quoted('USER_KEYRING_PATH_LEGACY', pkgsysconfdir / 'import-pubring.gpg')
conf.set_quoted('USER_PRESET_DIR', userpresetdir)
-conf.set_quoted('VENDOR_KEYRING_PATH', libexecdir / 'import-pubring.gpg')
+conf.set_quoted('VENDOR_KEYRING_PATH', libexecdir / 'import-pubring.pgp')
conf.set('ANSI_OK_COLOR', 'ANSI_' + get_option('ok-color').underscorify().to_upper())
conf.set10('ENABLE_URLIFY', get_option('urlify'))
diff --git a/mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf b/mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf
index ed4ca80d11..f40a7c3739 100644
--- a/mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf
+++ b/mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf
@@ -9,5 +9,5 @@ Environment=
GIT_URL=https://salsa.debian.org/systemd-team/systemd.git
GIT_SUBDIR=debian
GIT_BRANCH=debian/master
- GIT_COMMIT=01b5b96a2f85594c2c8caf5d10048a4ec41f9d89
+ GIT_COMMIT=84966b99cdfc7ea3ee35163ad224775d9be90055
PKG_SUBDIR=debian
diff --git a/mkosi/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot b/mkosi/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot
index ea1acb62f5..ac7202c1d0 100755
--- a/mkosi/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot
+++ b/mkosi/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot
@@ -19,9 +19,9 @@ TS="${SOURCE_DATE_EPOCH:-$(date +%s)}"
# disable manpage compression as the files cannot be found. Fix the issue by removing the compression
# extension.
#
-# TODO: remove manual cgroups-agent patch when the upstream spec is updated
+# TODO: remove manual cgroups-agent and pubring patches when the upstream spec is updated
while read -r filelist; do
- sed 's/\.gz$//; /systemd-cgroups-agent/d' "$filelist" >"/tmp/$(basename "$filelist")"
+ sed 's/\.gz$//; /systemd-cgroups-agent/d; s/import-pubring.gpg/import-pubring.pgp/' "$filelist" >"/tmp/$(basename "$filelist")"
mount --bind "/tmp/$(basename "$filelist")" "$filelist"
done < <(find "pkg/$PKG_SUBDIR${GIT_SUBDIR:+/$GIT_SUBDIR}" -name "files.*")
@@ -117,15 +117,6 @@ build() {
EXIT_STATUS=$?
- # TODO: Remove when the opensuse spec cleans these up itself (https://build.opensuse.org/request/show/1251175).
- rm -f \
- systemd.lang \
- debugfiles.list \
- debuglinks.list \
- debugsourcefiles.list \
- debugsources.list \
- elfbins.list
-
# Make sure we don't reconfigure twice.
MKOSI_MESON_OPTIONS="${MKOSI_MESON_OPTIONS//"--wipe"/}"
diff --git a/src/import/import-pubring.gpg b/src/import/import-pubring.pgp
similarity index 90%
rename from src/import/import-pubring.gpg
rename to src/import/import-pubring.pgp
index 8c6d2ebea6..433c9b8efd 100644
Binary files a/src/import/import-pubring.gpg and b/src/import/import-pubring.pgp differ
diff --git a/src/import/meson.build b/src/import/meson.build
index a2bb54992b..e1670da817 100644
--- a/src/import/meson.build
+++ b/src/import/meson.build
@@ -109,6 +109,6 @@ install_data('org.freedesktop.import1.service',
install_data('org.freedesktop.import1.policy',
install_dir : polkitpolicydir)
-install_data('import-pubring.gpg',
+install_data('import-pubring.pgp',
install_dir : libexecdir)
# TODO: shouldn't this be in pkgdatadir?
diff --git a/src/import/pull-common.c b/src/import/pull-common.c
index 67ed640a6f..40248eee3d 100644
--- a/src/import/pull-common.c
+++ b/src/import/pull-common.c
@@ -458,6 +458,8 @@ static int verify_gpg(
* otherwise. */
if (access(USER_KEYRING_PATH, F_OK) >= 0)
cmd[k++] = "--keyring=" USER_KEYRING_PATH;
+ else if (access(USER_KEYRING_PATH_LEGACY, F_OK) >= 0)
+ cmd[k++] = "--keyring=" USER_KEYRING_PATH_LEGACY;
else
cmd[k++] = "--keyring=" VENDOR_KEYRING_PATH;