diff --git a/SPECS/centos-stream-hyperscale-spin-release.spec b/SPECS/centos-stream-hyperscale-spin-release.spec new file mode 100644 index 0000000..353b2da --- /dev/null +++ b/SPECS/centos-stream-hyperscale-spin-release.spec @@ -0,0 +1,150 @@ +%global distro CentOS Stream +%global variant Hyperscale +%global variant_lc lc_distro %(echo %{variant} | tr "A-Z" "a-z") +%global major 8 + +Name: centos-stream-hyperscale-spin-release +Version: %{major} +Release: 1%{?dist} +Summary: %{distro} %{variant} release files +License: GPLv2 +URL: https://centos.org +BuildArch: noarch + +Provides: centos-release = %{version}-%{release} + +# conflicts with vanilla centos-stream-release +Conflicts: centos-stream-release + +# required for a lorax run (to generate install media) +Requires: centos-stream-repos +# yes, this is actually a repos package :/ +Requires: centos-release-hyperscale-spin +Provides: centos-release-eula +Provides: redhat-release-eula + +# upgrade path from old release packages +Obsoletes: centos-release < 8.2-3 +Obsoletes: centos-release-stream < 8.3-4 +Obsoletes: centos-repos < 8.2-3 +Obsoletes: centos-userland-release < 8.2-3 + +# upgrade path from CentOS Linux +Obsoletes: centos-linux-release < 8.6 + +# upgrade path from RHEL +Obsoletes: redhat-release < 9 + +# required by epel-release +Provides: redhat-release = %{version}-%{release} + +# required by dnf +# https://github.com/rpm-software-management/dnf/blob/4.2.23/dnf/const.py.in#L26 +Provides: system-release = %{version}-%{release} +Provides: system-release(releasever) = %{major} + +# required by libdnf +# https://github.com/rpm-software-management/libdnf/blob/0.48.0/libdnf/module/ModulePackage.cpp#L472 +Provides: base-module(platform:el%{major}) + +Source200: EULA +Source201: LICENSE +Source202: Contributors + +Source300: 85-display-manager.preset +Source301: 90-default.preset +Source302: 99-default-disable.preset + + +%description +%{distro} release files. + + +%install +# copy license and contributors doc here for %%license and %%doc macros +cp %{SOURCE201} %{SOURCE202} . + +# create /etc/system-release and /etc/redhat-release +install -d -m 0755 %{buildroot}%{_sysconfdir} +echo "%{distro} release %{major}" > %{buildroot}%{_sysconfdir}/centos-release +ln -s centos-release %{buildroot}%{_sysconfdir}/system-release +ln -s centos-release %{buildroot}%{_sysconfdir}/redhat-release + +# Create the os-release file +install -d -m 0755 %{buildroot}%{_prefix}/lib +cat > %{buildroot}%{_prefix}/lib/os-release << EOF +NAME="%{distro}" +VERSION="%{major}" +ID="centos" +ID_LIKE="rhel fedora" +VERSION_ID="%{major}" +PLATFORM_ID="platform:el%{major}" +PRETTY_NAME="%{distro} %{major}" +ANSI_COLOR="0;31" +CPE_NAME="cpe:/o:centos:centos:%{major}" +HOME_URL="https://centos.org/" +BUG_REPORT_URL="https://bugzilla.redhat.com/" +REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux %{major}" +REDHAT_SUPPORT_PRODUCT_VERSION="%{distro}" +VARIANT="%{variant}" +VARIANT_ID="%{variant_lc}" +EOF + +# Create the symlink for /etc/os-release +ln -s ../usr/lib/os-release %{buildroot}%{_sysconfdir}/os-release + +# write cpe to /etc/system/release-cpe +echo "cpe:/o:centos:centos:%{major}" > %{buildroot}%{_sysconfdir}/system-release-cpe + +# create /etc/issue and /etc/issue.net +echo '\S' > %{buildroot}%{_sysconfdir}/issue +echo 'Kernel \r on an \m' >> %{buildroot}%{_sysconfdir}/issue +cp %{buildroot}%{_sysconfdir}/issue{,.net} +echo >> %{buildroot}%{_sysconfdir}/issue + +# set up the dist tag macros +install -d -m 0755 %{buildroot}%{_sysconfdir}/rpm +cat > %{buildroot}%{_sysconfdir}/rpm/macros.dist << EOF +# dist macros. + +%%centos_ver %{major} +%%centos %{major} +%%rhel %{major} +%%dist .el%{major} +%%el%{major} 1 +%%centos_hs 1 +EOF + +# use unbranded datadir +install -d -m 0755 %{buildroot}%{_datadir}/centos-release +ln -s centos-release %{buildroot}%{_datadir}/redhat-release +install -p -m 0644 %{SOURCE200} %{buildroot}%{_datadir}/centos-release/ + +# copy systemd presets +install -d -m 0755 %{buildroot}%{_prefix}/lib/systemd/system-preset/ +install -p -m 0644 %{_sourcedir}/*.preset %{buildroot}%{_prefix}/lib/systemd/system-preset/ + + +%files +%license LICENSE +%doc Contributors +%{_sysconfdir}/redhat-release +%{_sysconfdir}/system-release +%{_sysconfdir}/centos-release +%config(noreplace) %{_sysconfdir}/os-release +%config %{_sysconfdir}/system-release-cpe +%config(noreplace) %{_sysconfdir}/issue +%config(noreplace) %{_sysconfdir}/issue.net +%{_sysconfdir}/rpm/macros.dist +%{_datadir}/redhat-release +%{_datadir}/centos-release +%{_prefix}/lib/os-release +%{_prefix}/lib/systemd/system-preset/* +%ifarch %{arm} aarch64 +%attr(0755,root,root) %{_bindir}/rootfs-expand +%endif + + +%changelog +* Mon May 17 2021 Neal Gompa - 8-1 +- Initial spin release package based on centos-stream-release diff --git a/SPECS/centos-stream-release.spec b/SPECS/centos-stream-release.spec deleted file mode 100644 index 353b2da..0000000 --- a/SPECS/centos-stream-release.spec +++ /dev/null @@ -1,150 +0,0 @@ -%global distro CentOS Stream -%global variant Hyperscale -%global variant_lc lc_distro %(echo %{variant} | tr "A-Z" "a-z") -%global major 8 - -Name: centos-stream-hyperscale-spin-release -Version: %{major} -Release: 1%{?dist} -Summary: %{distro} %{variant} release files -License: GPLv2 -URL: https://centos.org -BuildArch: noarch - -Provides: centos-release = %{version}-%{release} - -# conflicts with vanilla centos-stream-release -Conflicts: centos-stream-release - -# required for a lorax run (to generate install media) -Requires: centos-stream-repos -# yes, this is actually a repos package :/ -Requires: centos-release-hyperscale-spin -Provides: centos-release-eula -Provides: redhat-release-eula - -# upgrade path from old release packages -Obsoletes: centos-release < 8.2-3 -Obsoletes: centos-release-stream < 8.3-4 -Obsoletes: centos-repos < 8.2-3 -Obsoletes: centos-userland-release < 8.2-3 - -# upgrade path from CentOS Linux -Obsoletes: centos-linux-release < 8.6 - -# upgrade path from RHEL -Obsoletes: redhat-release < 9 - -# required by epel-release -Provides: redhat-release = %{version}-%{release} - -# required by dnf -# https://github.com/rpm-software-management/dnf/blob/4.2.23/dnf/const.py.in#L26 -Provides: system-release = %{version}-%{release} -Provides: system-release(releasever) = %{major} - -# required by libdnf -# https://github.com/rpm-software-management/libdnf/blob/0.48.0/libdnf/module/ModulePackage.cpp#L472 -Provides: base-module(platform:el%{major}) - -Source200: EULA -Source201: LICENSE -Source202: Contributors - -Source300: 85-display-manager.preset -Source301: 90-default.preset -Source302: 99-default-disable.preset - - -%description -%{distro} release files. - - -%install -# copy license and contributors doc here for %%license and %%doc macros -cp %{SOURCE201} %{SOURCE202} . - -# create /etc/system-release and /etc/redhat-release -install -d -m 0755 %{buildroot}%{_sysconfdir} -echo "%{distro} release %{major}" > %{buildroot}%{_sysconfdir}/centos-release -ln -s centos-release %{buildroot}%{_sysconfdir}/system-release -ln -s centos-release %{buildroot}%{_sysconfdir}/redhat-release - -# Create the os-release file -install -d -m 0755 %{buildroot}%{_prefix}/lib -cat > %{buildroot}%{_prefix}/lib/os-release << EOF -NAME="%{distro}" -VERSION="%{major}" -ID="centos" -ID_LIKE="rhel fedora" -VERSION_ID="%{major}" -PLATFORM_ID="platform:el%{major}" -PRETTY_NAME="%{distro} %{major}" -ANSI_COLOR="0;31" -CPE_NAME="cpe:/o:centos:centos:%{major}" -HOME_URL="https://centos.org/" -BUG_REPORT_URL="https://bugzilla.redhat.com/" -REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux %{major}" -REDHAT_SUPPORT_PRODUCT_VERSION="%{distro}" -VARIANT="%{variant}" -VARIANT_ID="%{variant_lc}" -EOF - -# Create the symlink for /etc/os-release -ln -s ../usr/lib/os-release %{buildroot}%{_sysconfdir}/os-release - -# write cpe to /etc/system/release-cpe -echo "cpe:/o:centos:centos:%{major}" > %{buildroot}%{_sysconfdir}/system-release-cpe - -# create /etc/issue and /etc/issue.net -echo '\S' > %{buildroot}%{_sysconfdir}/issue -echo 'Kernel \r on an \m' >> %{buildroot}%{_sysconfdir}/issue -cp %{buildroot}%{_sysconfdir}/issue{,.net} -echo >> %{buildroot}%{_sysconfdir}/issue - -# set up the dist tag macros -install -d -m 0755 %{buildroot}%{_sysconfdir}/rpm -cat > %{buildroot}%{_sysconfdir}/rpm/macros.dist << EOF -# dist macros. - -%%centos_ver %{major} -%%centos %{major} -%%rhel %{major} -%%dist .el%{major} -%%el%{major} 1 -%%centos_hs 1 -EOF - -# use unbranded datadir -install -d -m 0755 %{buildroot}%{_datadir}/centos-release -ln -s centos-release %{buildroot}%{_datadir}/redhat-release -install -p -m 0644 %{SOURCE200} %{buildroot}%{_datadir}/centos-release/ - -# copy systemd presets -install -d -m 0755 %{buildroot}%{_prefix}/lib/systemd/system-preset/ -install -p -m 0644 %{_sourcedir}/*.preset %{buildroot}%{_prefix}/lib/systemd/system-preset/ - - -%files -%license LICENSE -%doc Contributors -%{_sysconfdir}/redhat-release -%{_sysconfdir}/system-release -%{_sysconfdir}/centos-release -%config(noreplace) %{_sysconfdir}/os-release -%config %{_sysconfdir}/system-release-cpe -%config(noreplace) %{_sysconfdir}/issue -%config(noreplace) %{_sysconfdir}/issue.net -%{_sysconfdir}/rpm/macros.dist -%{_datadir}/redhat-release -%{_datadir}/centos-release -%{_prefix}/lib/os-release -%{_prefix}/lib/systemd/system-preset/* -%ifarch %{arm} aarch64 -%attr(0755,root,root) %{_bindir}/rootfs-expand -%endif - - -%changelog -* Mon May 17 2021 Neal Gompa - 8-1 -- Initial spin release package based on centos-stream-release