diff --git a/flatpak-pass-token-to-flatpak-image-source-new-remote.patch b/flatpak-pass-token-to-flatpak-image-source-new-remote.patch new file mode 100644 index 0000000..57df20a --- /dev/null +++ b/flatpak-pass-token-to-flatpak-image-source-new-remote.patch @@ -0,0 +1,94 @@ +commit f0bc60dc0b34669e64d48e723a5e84c0b90b281d +Author: Owen W. Taylor +Date: Wed Feb 5 12:29:43 2025 -0500 + + Pass token to flatpak_image_source_new_remote() + + Since flatpak_image_source_new_remote() already tries to load files + from the registry, having a separate flatpak_image_source_set_token() + doesn't work - when the token is set, it's already too late to + be passed along with the initial requests. + +diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c +index 26ec176f..a00fe7fa 100644 +--- a/common/flatpak-dir.c ++++ b/common/flatpak-dir.c +@@ -1225,12 +1225,10 @@ flatpak_remote_state_new_image_source (FlatpakRemoteState *self, + if (registry_uri == NULL) + return NULL; + +- image_source = flatpak_image_source_new_remote (registry_uri, oci_repository, digest, NULL, error); ++ image_source = flatpak_image_source_new_remote (registry_uri, oci_repository, digest, token, NULL, error); + if (image_source == NULL) + return NULL; + +- flatpak_image_source_set_token (image_source, token); +- + return g_steal_pointer (&image_source); + } + +@@ -6473,6 +6471,9 @@ flatpak_dir_mirror_oci (FlatpakDir *self, + else + image_source = flatpak_remote_state_fetch_image_source (state, self, ref, opt_rev, token, cancellable, error); + ++ if (!image_source) ++ return FALSE; ++ + flatpak_progress_start_oci_pull (progress); + + g_info ("Mirroring OCI image %s", flatpak_image_source_get_digest (image_source)); +diff --git a/common/flatpak-image-source-private.h b/common/flatpak-image-source-private.h +index 597a8174..5f9604d8 100644 +--- a/common/flatpak-image-source-private.h ++++ b/common/flatpak-image-source-private.h +@@ -45,14 +45,13 @@ FlatpakImageSource *flatpak_image_source_new_local (GFile *file, + FlatpakImageSource *flatpak_image_source_new_remote (const char *uri, + const char *oci_repository, + const char *digest, ++ const char *token, + GCancellable *cancellable, + GError **error); + FlatpakImageSource *flatpak_image_source_new_for_location (const char *location, + GCancellable *cancellable, + GError **error); + +-void flatpak_image_source_set_token (FlatpakImageSource *self, +- const char *token); + void flatpak_image_source_set_delta_url (FlatpakImageSource *self, + const char *delta_url); + +diff --git a/common/flatpak-image-source.c b/common/flatpak-image-source.c +index a31f1084..1fc0eeb0 100644 +--- a/common/flatpak-image-source.c ++++ b/common/flatpak-image-source.c +@@ -180,6 +180,7 @@ FlatpakImageSource * + flatpak_image_source_new_remote (const char *uri, + const char *oci_repository, + const char *digest, ++ const char *token, + GCancellable *cancellable, + GError **error) + { +@@ -189,6 +190,8 @@ flatpak_image_source_new_remote (const char *uri, + if (!registry) + return NULL; + ++ flatpak_oci_registry_set_token (registry, token); ++ + return flatpak_image_source_new (registry, oci_repository, digest, cancellable, error); + } + +@@ -327,13 +330,6 @@ flatpak_image_source_new_for_location (const char *location, + } + } + +-void +-flatpak_image_source_set_token (FlatpakImageSource *self, +- const char *token) +-{ +- flatpak_oci_registry_set_token (self->registry, token); +-} +- + void + flatpak_image_source_set_delta_url (FlatpakImageSource *self, + const char *delta_url) diff --git a/flatpak.spec b/flatpak.spec index b4c5877..5e144e9 100644 --- a/flatpak.spec +++ b/flatpak.spec @@ -12,7 +12,7 @@ Name: flatpak Version: 1.16.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Application deployment framework for desktop apps License: LGPL-2.1-or-later @@ -44,6 +44,9 @@ Patch3: flatpak-add-support-for-preinstalling-flatpaks.patch # https://github.com/flatpak/flatpak/pull/6083 Patch4: flatpak-enable-collection-ids-for-oci-remotes.patch +# Fix crash and installatcion of OCI images +Patch5: flatpak-pass-token-to-flatpak-image-source-new-remote.patch + # ostree not on i686 for RHEL 10 # https://github.com/containers/composefs/pull/229#issuecomment-1838735764 %if 0%{?rhel} >= 10 @@ -312,6 +315,10 @@ fi %changelog +* Wed Feb 05 2025 Jan Grulich - 1.16.0-5 +- Fix crash and installatcion of OCI images + Resolves: RHEL-76958 + * Thu Jan 23 2025 Zdenek Pytela - 1.16.0-4 - Rebuild with selinux-policy-40.13.23-1 Resolves: RHEL-36741