package: remote_location() takes basedir into account

Resolves: RHEL-71125
This commit is contained in:
Marek Blaha 2025-03-07 09:59:31 +01:00
parent 48402e5143
commit edd90e7183
2 changed files with 40 additions and 1 deletions

View File

@ -0,0 +1,35 @@
From 5d410dee9815d3ab23e64a48871c8b9aac717127 Mon Sep 17 00:00:00 2001
From: Marek Blaha <mblaha@redhat.com>
Date: Wed, 18 Sep 2024 09:46:20 +0200
Subject: [PATCH] package: remote_location() takes basedir into account
If the package location in the repodata contains basedir, it needs to be
taken into account when calculating the package's remote_location.
Resolves: https://github.com/rpm-software-management/dnf/issues/2130
Resolves: RHEL-71125
= changelog =
msg: Fix package location if baseurl is present in the metadata
type: bugfix
resolves: https://github.com/rpm-software-management/dnf/issues/2130
---
dnf/package.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/dnf/package.py b/dnf/package.py
index fc89cf98..5912f79c 100644
--- a/dnf/package.py
+++ b/dnf/package.py
@@ -300,6 +300,8 @@ class Package(hawkey.Package):
"""
if self._from_system or self._from_cmdline:
return None
+ if self.baseurl:
+ return os.path.join(self.baseurl, self.location.lstrip("/"))
return self.repo.remote_location(self.location, schemes)
def _is_local_pkg(self):
--
2.48.1

View File

@ -73,7 +73,7 @@ It supports RPMs, modules and comps groups & environments.
Name: dnf
Version: 4.14.0
Release: 25%{?dist}
Release: 26%{?dist}
Summary: %{pkg_summary}
# For a breakdown of the licensing, see PACKAGE-LICENSING
License: GPLv2+
@ -123,6 +123,7 @@ Patch41: 0041-bootc-Use-ostree-GObject-API-to-get-deployment-statu.patch
Patch42: 0042-bootc-Re-locking-use-ostree-admin-unlock-transient.patch
Patch43: 0043-spec-Add-dnf-bootc-subpackage.patch
Patch44: 0044-Require-libdnf-0.74.0-with-persistence-option.patch
Patch45: 0045-package-remote_location-takes-basedir-into-account.patch
BuildArch: noarch
BuildRequires: cmake
@ -425,6 +426,9 @@ popd
# bootc subpackage does not include any files
%changelog
* Fri Mar 07 2025 Marek Blaha <mblaha@redhat.com> - 4.14.0-26
- package: remote_location() takes basedir into account (RHEL-71125)
* Tue Feb 04 2025 Petr Pisar <ppisar@redhat.com> - 4.14.0-25
- Add support for transient transactions (RHEL-70917)