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;