%define debug_package %{nil} %define product_family CentOS Linux %define variant_titlecase Server %define variant_lowercase server %ifarch %{arm} %define release_name AltArch %define contentdir altarch %else %define release_name Core %define contentdir centos %endif %ifarch ppc64le %define tuned_profile :server %endif %define infra_var stock %define base_release_version 8 %define full_release_version 8 %define dist_release_version 8 %define upstream_rel_long 8.2-0 %define upstream_rel 8.2 %define centos_rel 2.2004 #define beta Beta %define dist .el%{dist_release_version} # The anaconda scripts in %%{_libexecdir} can create false requirements %global __requires_exclude_from %{_libexecdir} Name: centos-release Version: %{upstream_rel} Release: %{centos_rel}.0.1%{?dist} Summary: %{product_family} release file Group: System Environment/Base License: GPLv2 %ifnarch %{arm} %define pkg_name %{name} %else %define pkg_name centos-userland-release %package -n %{pkg_name} Summary: %{product_family} release file %endif Provides: centos-release = %{version}-%{release} Provides: centos-release(upstream) = %{upstream_rel} Provides: redhat-release = %{upstream_rel_long} Provides: system-release = %{upstream_rel_long} Provides: system-release(releasever) = %{base_release_version} Provides: base-module(platform:el%{base_release_version}) Provides: centos-release-eula Provides: redhat-release-eula Requires: centos-gpg-keys = %{version}-%{release} Requires: centos-repos >= %{version}-%{release} Source1: 85-display-manager.preset Source2: 90-default.preset Source3: 99-default-disable.preset Source10: RPM-GPG-KEY-centosofficial Source11: RPM-GPG-KEY-centostesting Source100: rootfs-expand Source200: EULA Source201: GPL Source202: Contributors Source300: CentOS-Base.repo Source301: CentOS-CR.repo Source302: CentOS-Debuginfo.repo Source303: CentOS-Extras.repo Source304: CentOS-fasttrack.repo Source305: CentOS-Media.repo Source306: CentOS-Sources.repo Source307: CentOS-Vault.repo Source308: CentOS-AppStream.repo Source309: CentOS-PowerTools.repo Source310: CentOS-centosplus.repo Source311: CentOS-HA.repo Source312: CentOS-Devel.repo %ifarch %{arm} %description -n %{pkg_name} %{product_family} release files %endif %description %{product_family} release files %package -n centos-repos Summary: %{product_family} package repositories Group: System Environment/Base Provides: centos-repos(%{base_release_version}) = %{upstream_rel} Requires: system-release = %{upstream_rel} Requires: centos-gpg-keys = %{version}-%{release} Conflicts: %{name} < 8.0-0.1905.0.10 %description -n centos-repos %{product_family} package repository files for yum and dnf %package -n centos-gpg-keys Summary: %{product_family} RPM keys Group: System Environment/Base Conflicts: %{name} < 8.0-0.1905.0.10 BuildArch: noarch %description -n centos-gpg-keys %{product_family} RPM signature keys %prep echo OK %build echo OK %install rm -rf %{buildroot} # create skeleton mkdir -p %{buildroot}/etc mkdir -p %{buildroot}%{_prefix}/lib # create /etc/system-release and /etc/redhat-release echo "%{product_family} release %{full_release_version}.%{centos_rel} (%{release_name}) " > %{buildroot}/etc/centos-release echo "Derived from Red Hat Enterprise Linux %{upstream_rel} (Source)" > %{buildroot}/etc/centos-release-upstream ln -s centos-release %{buildroot}/etc/system-release ln -s centos-release %{buildroot}/etc/redhat-release # Create the os-release file cat << EOF >>%{buildroot}%{_prefix}/lib/os-release NAME="%{product_family}" VERSION="%{full_release_version} (%{release_name})" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="%{full_release_version}" PLATFORM_ID="platform:el%{base_release_version}" PRETTY_NAME="%{product_family} %{full_release_version} (%{release_name})" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:%{base_release_version}%{?tuned_profile}" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-%{base_release_version}" CENTOS_MANTISBT_PROJECT_VERSION="%{base_release_version}" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="%{base_release_version}" 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:%{base_release_version}" > %{buildroot}/etc/system-release-cpe # create /etc/issue and /etc/issue.net echo '\S' > %{buildroot}/etc/issue echo 'Kernel \r on an \m' >> %{buildroot}/etc/issue cp %{buildroot}/etc/issue %{buildroot}/etc/issue.net echo >> %{buildroot}/etc/issue # copy GPG keys mkdir -p -m 755 %{buildroot}/etc/pki/rpm-gpg install -m 644 %{SOURCE10} %{buildroot}/etc/pki/rpm-gpg install -m 644 %{SOURCE11} %{buildroot}/etc/pki/rpm-gpg # copy yum repos mkdir -p -m 755 %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE300} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE301} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE302} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE303} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE304} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE305} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE306} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE307} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE308} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE309} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE310} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE311} %{buildroot}/etc/yum.repos.d install -m 644 %{SOURCE312} %{buildroot}/etc/yum.repos.d mkdir -p -m 755 %{buildroot}/etc/dnf/vars echo "%{infra_var}" > %{buildroot}/etc/dnf/vars/infra echo "%{contentdir}" >%{buildroot}/etc/dnf/vars/contentdir %ifarch %{arm} echo %{base_release_version} > %{buildroot}/etc/dnf/vars/releasever %endif # set up the dist tag macros install -d -m 755 %{buildroot}/etc/rpm cat >> %{buildroot}/etc/rpm/macros.dist << EOF # dist macros. %%centos_ver %{base_release_version} %%centos %{base_release_version} %%rhel %{base_release_version} %%dist .el%{base_release_version} %%el%{base_release_version} 1 EOF # use unbranded datadir mkdir -p -m 755 %{buildroot}/%{_datadir}/centos-release ln -s centos-release %{buildroot}/%{_datadir}/redhat-release install -m 644 %{SOURCE200} %{buildroot}/%{_datadir}/centos-release # use unbranded docdir mkdir -p -m 755 %{buildroot}/%{_docdir}/centos-release ln -s centos-release %{buildroot}/%{_docdir}/redhat-release install -m 644 %{SOURCE201} %{buildroot}/%{_docdir}/centos-release install -m 644 %{SOURCE202} %{buildroot}/%{_docdir}/centos-release # copy systemd presets mkdir -p %{buildroot}/%{_prefix}/lib/systemd/system-preset/ install -m 0644 %{SOURCE1} %{buildroot}/%{_prefix}/lib/systemd/system-preset/ install -m 0644 %{SOURCE2} %{buildroot}/%{_prefix}/lib/systemd/system-preset/ install -m 0644 %{SOURCE3} %{buildroot}/%{_prefix}/lib/systemd/system-preset/ %ifarch %{arm} aarch64 # Install armhfp/aarch64 specific tools install -D -m 0755 %{SOURCE100} %{buildroot}%{_bindir}/rootfs-expand %endif %clean rm -rf %{buildroot} %files -n %{pkg_name} %defattr(0644,root,root,0755) /etc/redhat-release /etc/system-release /etc/centos-release /etc/centos-release-upstream %config(noreplace) /etc/os-release %config /etc/system-release-cpe %config(noreplace) /etc/issue %config(noreplace) /etc/issue.net /etc/rpm/macros.dist %{_docdir}/redhat-release %{_docdir}/centos-release/* %{_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 %files -n centos-repos %config(noreplace) /etc/yum.repos.d/* %config(noreplace) /etc/dnf/vars/* %files -n centos-gpg-keys /etc/pki/rpm-gpg/ %changelog * Fri May 15 2020 Pablo Greco - 8-2.0.1 - Relax dependency for centos-repos - Remove update_boot, it was never used in 8 - Add rootfs_expand to aarch64 - Bump release for 8.2 * Thu Mar 12 2020 bstinson@centosproject.org - 8-1.0.9 - Add the Devel repo to centos-release - Install os-release(5) content to /usr/lib and have /etc/os-release be a symlink (ngompa)pr#9 * Thu Jan 02 2020 Brian Stinson - 8-1.0.8 - Add base module platform Provides so DNF can auto-discover modular platform (ngompa)pr#6 - Switched CR repo to mirrorlist to spread the load (arrfab)pr#5 * Thu Dec 19 2019 bstinson@centosproject.org - 8-1.0.7 - Typo fixes - Disable the HA repo by default * Wed Dec 18 2019 Pablo Greco - 8-1.el8 - Fix requires in armhfp * Tue Dec 17 2019 bstinson@centosproject.org - 8-1.el8 - Add the HighAvailability repository * Wed Aug 14 2019 Neal Gompa 8-1.el8 - Split repositories and GPG keys out into subpackages * Sat Aug 10 2019 Fabian Arrotin 8-0.el8 - modified baseurl paths, even if disabled * Sat Aug 10 2019 Fabian Arrotin 8-0.el8 - Enabled Extras by default. - Fixed sources paths for BaseOS/AppStream * Sat Aug 10 2019 Brian Stinson 8-0.el7 - Update Debuginfo and fasttrack to use releasever - Fix CentOS-media.repo to include appstream * Wed May 8 2019 Pablo Greco 8-0.el7 - Initial setup for CentOS-8