From ca7df3de91ff4cb7d167fe6f130cf1bb22c3ec17 Mon Sep 17 00:00:00 2001 From: Carl George Date: Feb 12 2021 17:22:38 +0000 Subject: CentOS debranding Includes upstream pull requests: - https://github.com/rhinstaller/anaconda/pull/3014 - https://github.com/rhinstaller/anaconda/pull/3020 - https://github.com/rhinstaller/anaconda/pull/3139 --- diff --git a/SOURCES/0001-Add-CentOS-Stream-config.patch b/SOURCES/0001-Add-CentOS-Stream-config.patch new file mode 100644 index 0000000..bca69cf --- /dev/null +++ b/SOURCES/0001-Add-CentOS-Stream-config.patch @@ -0,0 +1,121 @@ +From 98dfd9388a14158646f9009324354c83be6a64ce Mon Sep 17 00:00:00 2001 +From: Pat Riehecky +Date: Mon, 23 Nov 2020 13:50:06 -0600 +Subject: [PATCH 1/3] Add CentOS Stream config + +https://github.com/rhinstaller/anaconda/pull/3014 +https://github.com/rhinstaller/anaconda/commit/150bbc179cf51226d6c1bd46279e076ff683ec03 +--- + data/product.d/centos-stream.conf | 33 +++++++++++++++++++ + data/product.d/centos.conf | 28 +--------------- + .../pyanaconda_tests/product_test.py | 9 +++-- + 3 files changed, 41 insertions(+), 29 deletions(-) + create mode 100644 data/product.d/centos-stream.conf + +diff --git a/data/product.d/centos-stream.conf b/data/product.d/centos-stream.conf +new file mode 100644 +index 0000000000..79d13392af +--- /dev/null ++++ b/data/product.d/centos-stream.conf +@@ -0,0 +1,33 @@ ++# Anaconda configuration file for CentOS Stream. ++ ++[Product] ++product_name = CentOS Stream ++ ++[Base Product] ++product_name = Red Hat Enterprise Linux ++ ++[Anaconda] ++# List of enabled Anaconda DBus modules for RHEL. ++# but without org.fedoraproject.Anaconda.Modules.Subscription ++kickstart_modules = ++ org.fedoraproject.Anaconda.Modules.Timezone ++ org.fedoraproject.Anaconda.Modules.Network ++ org.fedoraproject.Anaconda.Modules.Localization ++ org.fedoraproject.Anaconda.Modules.Security ++ org.fedoraproject.Anaconda.Modules.Users ++ org.fedoraproject.Anaconda.Modules.Payloads ++ org.fedoraproject.Anaconda.Modules.Storage ++ org.fedoraproject.Anaconda.Modules.Services ++ ++[Bootloader] ++efi_dir = centos ++ ++[User Interface] ++help_directory = /usr/share/anaconda/help/centos ++default_help_pages = ++ centos_help_placeholder.txt ++ centos_help_placeholder.xml ++ centos_help_placeholder.xml ++ ++[Payload] ++default_source = CLOSEST_MIRROR +diff --git a/data/product.d/centos.conf b/data/product.d/centos.conf +index 9490e038a9..dcf22c3f9d 100644 +--- a/data/product.d/centos.conf ++++ b/data/product.d/centos.conf +@@ -4,30 +4,4 @@ + product_name = CentOS Linux + + [Base Product] +-product_name = Red Hat Enterprise Linux +- +-[Anaconda] +-# List of enabled Anaconda DBus modules for RHEL. +-# but without org.fedoraproject.Anaconda.Modules.Subscription +-kickstart_modules = +- org.fedoraproject.Anaconda.Modules.Timezone +- org.fedoraproject.Anaconda.Modules.Network +- org.fedoraproject.Anaconda.Modules.Localization +- org.fedoraproject.Anaconda.Modules.Security +- org.fedoraproject.Anaconda.Modules.Users +- org.fedoraproject.Anaconda.Modules.Payloads +- org.fedoraproject.Anaconda.Modules.Storage +- org.fedoraproject.Anaconda.Modules.Services +- +-[Bootloader] +-efi_dir = centos +- +-[User Interface] +-help_directory = /usr/share/anaconda/help/centos +-default_help_pages = +- centos_help_placeholder.txt +- centos_help_placeholder.xml +- centos_help_placeholder.xml +- +-[Payload] +-default_source = CLOSEST_MIRROR ++product_name = CentOS Stream +diff --git a/tests/nosetests/pyanaconda_tests/product_test.py b/tests/nosetests/pyanaconda_tests/product_test.py +index 55f3e0dde7..45d532bda1 100644 +--- a/tests/nosetests/pyanaconda_tests/product_test.py ++++ b/tests/nosetests/pyanaconda_tests/product_test.py +@@ -239,9 +239,14 @@ class ProductConfigurationTestCase(unittest.TestCase): + ["rhel.conf"], + WORKSTATION_PARTITIONING + ) ++ self._check_default_product( ++ "CentOS Stream", "", ++ ["rhel.conf", "centos-stream.conf"], ++ WORKSTATION_PARTITIONING ++ ) + self._check_default_product( + "CentOS Linux", "", +- ["rhel.conf", "centos.conf"], ++ ["rhel.conf", "centos-stream.conf", "centos.conf"], + WORKSTATION_PARTITIONING + ) + self._check_default_product( +@@ -251,7 +256,7 @@ class ProductConfigurationTestCase(unittest.TestCase): + ) + self._check_default_product( + "oVirt Node Next", "", +- ["rhel.conf", "centos.conf", "ovirt.conf"], ++ ["rhel.conf", "centos-stream.conf", "centos.conf", "ovirt.conf"], + VIRTUALIZATION_PARTITIONING + ) + self._check_default_product( +-- +2.29.2 + diff --git a/SOURCES/0002-Fix-CDN-button-visibility.patch b/SOURCES/0002-Fix-CDN-button-visibility.patch new file mode 100644 index 0000000..bcf060e --- /dev/null +++ b/SOURCES/0002-Fix-CDN-button-visibility.patch @@ -0,0 +1,56 @@ +From 629664bb71f2902d3fcb2b1c1fd4335fb56ab3ed Mon Sep 17 00:00:00 2001 +From: Martin Kolman +Date: Fri, 11 Sep 2020 15:27:59 +0200 +Subject: [PATCH 2/3] Fix CDN button visibility + +Only show the Red Hat CDN button if the Subscription +module appears to be running. To achieve that, we do +the same thing as with the HMC button - the CDN +button invisible by default. And enable it only if it +looks like the Subscription module is running. + +(cherry picked from commit: aca297587ab8bdd7342fa056273bfff379bc0a0b) + +Resolves: rhbz#1903178 + +https://github.com/rhinstaller/anaconda/pull/3020 +https://github.com/M4rtinK/anaconda/commit/c29802a2be591a4cdcc91ba86b74fc4d01087b72 +--- + pyanaconda/ui/gui/spokes/installation_source.glade | 2 +- + pyanaconda/ui/gui/spokes/installation_source.py | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/pyanaconda/ui/gui/spokes/installation_source.glade b/pyanaconda/ui/gui/spokes/installation_source.glade +index a23f8be714..e53fa230ca 100644 +--- a/pyanaconda/ui/gui/spokes/installation_source.glade ++++ b/pyanaconda/ui/gui/spokes/installation_source.glade +@@ -633,9 +633,9 @@ + + + Red Hat _CDN +- True + True + False ++ True + 12 + True + 0 +diff --git a/pyanaconda/ui/gui/spokes/installation_source.py b/pyanaconda/ui/gui/spokes/installation_source.py +index 6aab9b387a..d0d4da72b9 100644 +--- a/pyanaconda/ui/gui/spokes/installation_source.py ++++ b/pyanaconda/ui/gui/spokes/installation_source.py +@@ -854,9 +854,9 @@ class SourceSpoke(NormalSpoke, GUISpokeInputCheckHandler, SourceSwitchHandler): + def _initialize(self): + threadMgr.wait(constants.THREAD_PAYLOAD) + +- # If there is no Subscriptiopn DBus module, disable the CDN radio button ++ # If there is the Subscriptiopn DBus module, make the CDN radio button visible + if is_module_available(SUBSCRIPTION): +- gtk_call_once(self._cdn_button.set_no_show_all, True) ++ gtk_call_once(self._cdn_button.set_no_show_all, False) + + # Get the current source. + source_proxy = self.payload.get_source_proxy() +-- +2.29.2 + diff --git a/SOURCES/0003-Take-dnf-substitutions-from-installer-environment-co.patch b/SOURCES/0003-Take-dnf-substitutions-from-installer-environment-co.patch new file mode 100644 index 0000000..7b07c6f --- /dev/null +++ b/SOURCES/0003-Take-dnf-substitutions-from-installer-environment-co.patch @@ -0,0 +1,30 @@ +From 7d805f7dd19dff4eff13627a1480fab364a4d337 Mon Sep 17 00:00:00 2001 +From: Radek Vykydal +Date: Wed, 3 Feb 2021 16:28:32 +0100 +Subject: [PATCH 3/3] Take dnf substitutions from installer environment + configuration + +Resolves: rhbz#1920735 + +https://github.com/rhinstaller/anaconda/pull/3139 +https://github.com/rhinstaller/anaconda/commit/4dbb10c4a3a099870e88f4421d9da95689ec3c86 +--- + pyanaconda/payload/dnf/payload.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pyanaconda/payload/dnf/payload.py b/pyanaconda/payload/dnf/payload.py +index 718feedb70..47e00a49bd 100644 +--- a/pyanaconda/payload/dnf/payload.py ++++ b/pyanaconda/payload/dnf/payload.py +@@ -668,7 +668,7 @@ class DNFPayload(Payload): + config.installroot = conf.target.system_root + config.prepend_installroot('persistdir') + +- self._base.conf.substitutions.update_from_etc(config.installroot) ++ self._base.conf.substitutions.update_from_etc("/") + + if self.data.packages.multiLib: + config.multilib_policy = "all" +-- +2.29.2 + diff --git a/SPECS/anaconda.spec b/SPECS/anaconda.spec index 21be381..ca77ac5 100644 --- a/SPECS/anaconda.spec +++ b/SPECS/anaconda.spec @@ -12,6 +12,16 @@ URL: http://fedoraproject.org/wiki/Anaconda # make dist Source0: %{name}-%{version}.tar.bz2 +# https://github.com/rhinstaller/anaconda/pull/3014 +Patch10001: 0001-Add-CentOS-Stream-config.patch + +# https://github.com/rhinstaller/anaconda/pull/3020 +Patch10002: 0002-Fix-CDN-button-visibility.patch + +# https://github.com/rhinstaller/anaconda/pull/3139 +Patch10003: 0003-Take-dnf-substitutions-from-installer-environment-co.patch + + # Versions of required components (done so we make sure the buildrequires # match the requires versions of things). @@ -265,6 +275,9 @@ runtime on NFS/HTTP/FTP servers or local disks. %prep %autosetup -p 1 +# debranding +sed -e 's/RHEL/CentOS/' -i po/*.po + %build # use actual build-time release number, not tarball creation time release number %configure ANACONDA_RELEASE=%{release}