From dbfef8aa4fb48e63bb878e40c7e3fbce391a366f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 5 Feb 2025 15:25:43 +0100 Subject: [PATCH] Add persistence configuration option Resolves: RHEL-78034 --- 0007-Add-persistence-config-option.patch | 60 ++++++++++++++++++++++++ libdnf.spec | 6 ++- 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 0007-Add-persistence-config-option.patch diff --git a/0007-Add-persistence-config-option.patch b/0007-Add-persistence-config-option.patch new file mode 100644 index 0000000..7ba0f2e --- /dev/null +++ b/0007-Add-persistence-config-option.patch @@ -0,0 +1,60 @@ +From 86804b72c39a47df2cdbf422c93318739773aec9 Mon Sep 17 00:00:00 2001 +From: Evan Goode +Date: Thu, 7 Nov 2024 02:34:37 +0000 +Subject: [PATCH] Add `persistence` config option +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream commit: 18a7db66bfc2cf228bdbb484fa92504c2eaefdc6 +Resolves: https://issues.redhat.com/browse/RHEL-78034 + +Signed-off-by: Petr Písař +--- + libdnf/conf/ConfigMain.cpp | 3 +++ + libdnf/conf/ConfigMain.hpp | 1 + + 2 files changed, 4 insertions(+) + +diff --git a/libdnf/conf/ConfigMain.cpp b/libdnf/conf/ConfigMain.cpp +index 3f12762a..b58b2f47 100644 +--- a/libdnf/conf/ConfigMain.cpp ++++ b/libdnf/conf/ConfigMain.cpp +@@ -284,6 +284,7 @@ class ConfigMain::Impl { + OptionString comment{nullptr}; + OptionBool downloadonly{false}; // runtime only option + OptionBool ignorearch{false}; ++ OptionEnum persistence{"auto", {"auto", "persist", "transient"}}; + OptionString module_platform_id{nullptr}; + OptionBool module_stream_switch{false}; + OptionBool module_obsoletes{false}; +@@ -458,6 +459,7 @@ ConfigMain::Impl::Impl(Config & owner) + owner.optBinds().add("user_agent", user_agent); + owner.optBinds().add("countme", countme); + owner.optBinds().add("protect_running_kernel", protect_running_kernel); ++ owner.optBinds().add("persistence", persistence); + + // Repo main config + +@@ -613,6 +615,7 @@ OptionPath & ConfigMain::destdir() { return pImpl->destdir; } + OptionString & ConfigMain::comment() { return pImpl->comment; } + OptionBool & ConfigMain::downloadonly() { return pImpl->downloadonly; } + OptionBool & ConfigMain::ignorearch() { return pImpl->ignorearch; } ++OptionEnum & ConfigMain::persistence() { return pImpl->persistence; } + + OptionString & ConfigMain::module_platform_id() { return pImpl->module_platform_id; } + OptionBool & ConfigMain::module_stream_switch() { return pImpl->module_stream_switch; } +diff --git a/libdnf/conf/ConfigMain.hpp b/libdnf/conf/ConfigMain.hpp +index c63c9a82..af6496f3 100644 +--- a/libdnf/conf/ConfigMain.hpp ++++ b/libdnf/conf/ConfigMain.hpp +@@ -125,6 +125,7 @@ public: + OptionString & comment(); + OptionBool & downloadonly(); + OptionBool & ignorearch(); ++ OptionEnum & persistence(); + + OptionString & module_platform_id(); + OptionBool & module_stream_switch(); +-- +2.48.1 + diff --git a/libdnf.spec b/libdnf.spec index 5222553..d22ba8e 100644 --- a/libdnf.spec +++ b/libdnf.spec @@ -56,7 +56,7 @@ Name: libdnf Version: %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Library providing simplified C and Python API to libsolv License: LGPL-2.1-or-later URL: https://github.com/rpm-software-management/libdnf @@ -67,6 +67,7 @@ Patch3: 0003-MergedTransaction-Fix-invalid-memory-access-when-dro.patch Patch4: 0004-Set-pool-flag-to-fix-pool_addfileprovides_queue-with.patch Patch5: 0005-ConfigParser-fix-use-out-of-scope-leaks.patch Patch6: 0006-Add-tests-for-shell-style-variable-expansion.patch +Patch7: 0007-Add-persistence-config-option.patch BuildRequires: cmake BuildRequires: gcc @@ -310,6 +311,9 @@ popd %endif %changelog +* Wed Feb 05 2025 Petr Pisar - 0.73.1-7 +- Add persistence configuration option (RHEL-78034) + * Tue Oct 29 2024 Troy Dawson - 0.73.1-6 - Bump release for October 2024 mass rebuild: Resolves: RHEL-64018