rocky-release/SPECS/rocky-release.spec

334 lines
11 KiB
RPMSpec
Raw Normal View History

2021-04-09 03:50:23 +00:00
%define debug_package %{nil}
# Product information
%define product_family Rocky Linux
%define variant_titlecase Server
%define variant_lowercase server
# Distribution Name and Version
2021-05-25 00:36:03 +00:00
%define distro_name Rocky Linux
%define distro_code Green Obsidian
2021-04-09 03:50:23 +00:00
%define major 8
2022-03-29 16:54:26 +00:00
%define minor 6
2022-05-20 17:31:45 +00:00
%define rocky_rel 3
2021-04-09 03:50:23 +00:00
%define upstream_rel %{major}.%{minor}
2021-07-10 22:01:25 +00:00
%define rpm_license BSD-3-Clause
2021-04-09 03:50:23 +00:00
%define base_release_version %{major}
%define full_release_version %{major}
%define dist_release_version %{major}
%ifarch ppc64le
%define tuned_profile :server
%endif
# Avoids a weird anaconda problem
%global __requires_exclude_from %{_libexecdir}
2021-02-01 07:12:25 +00:00
Name: rocky-release
Version: %{major}.%{minor}
2021-05-08 17:54:40 +00:00
Release: %{rocky_rel}.el8
2021-05-25 00:36:03 +00:00
Summary: %{distro_name} release files
2021-07-10 22:01:25 +00:00
License: %{rpm_license}
2021-02-01 07:12:25 +00:00
URL: https://rockylinux.org
BuildArch: noarch
2021-04-09 03:50:23 +00:00
# What do we provide?
2021-04-09 03:52:11 +00:00
Provides: rocky-release = %{version}-%{release}
Provides: rocky-release(upstream) = %{upstream_rel}
2021-04-09 03:59:11 +00:00
Provides: redhat-release = %{version}-%{release}
Provides: system-release = %{version}-%{release}
2021-04-09 03:50:23 +00:00
Provides: system-release(releasever) = %{major}
2021-09-13 22:28:39 +00:00
Provides: centos-release = %{version}-%{release}
Provides: centos-release(upstream) = %{upstream_rel}
2021-02-01 07:12:25 +00:00
2021-04-09 03:50:23 +00:00
## Required by libdnf
Provides: base-module(platform:el%{major})
## This makes lorax/pungi/anaconda happy
2021-02-01 07:12:25 +00:00
Provides: rocky-release-eula
Provides: redhat-release-eula
2021-09-13 22:28:39 +00:00
Provides: centos-release-eula
2021-02-01 07:12:25 +00:00
2021-04-09 03:50:23 +00:00
# What are our requirements?
2021-05-28 05:29:55 +00:00
Requires: rocky-repos(%{major})
2021-02-01 07:12:25 +00:00
2021-04-09 03:50:23 +00:00
# GPG Keys
Source101: RPM-GPG-KEY-rockyofficial
Source102: RPM-GPG-KEY-rockytesting
2021-02-01 07:12:25 +00:00
2021-04-09 03:50:23 +00:00
# Release Sources
2021-02-01 07:12:25 +00:00
Source200: EULA
Source201: LICENSE
Source202: Contributors
Source203: COMMUNITY-CHARTER
2021-02-01 07:12:25 +00:00
Source300: 85-display-manager.preset
Source301: 90-default.preset
Source302: 99-default-disable.preset
2021-04-09 03:50:23 +00:00
# Repo Sources
Source1200: Rocky-BaseOS.repo
Source1201: Rocky-AppStream.repo
Source1202: Rocky-PowerTools.repo
Source1203: Rocky-Extras.repo
# Rocky Add-ons
Source1210: Rocky-HighAvailability.repo
2021-05-01 16:44:14 +00:00
Source1211: Rocky-ResilientStorage.repo
2021-05-28 05:29:55 +00:00
Source1212: Rocky-RT.repo
2021-06-30 06:07:04 +00:00
Source1213: Rocky-NFV.repo
2021-04-09 03:50:23 +00:00
# Rocky Special Stuff
Source1220: Rocky-Media.repo
2021-06-25 19:50:09 +00:00
Source1221: Rocky-Debuginfo.repo
2021-04-09 03:50:23 +00:00
Source1222: Rocky-Sources.repo
Source1223: Rocky-Devel.repo
2021-05-05 08:45:26 +00:00
Source1226: Rocky-Plus.repo
2021-05-26 15:09:34 +00:00
Source1300: rocky.1.gz
2021-04-09 03:50:23 +00:00
2021-02-01 07:12:25 +00:00
%description
2021-05-25 00:36:03 +00:00
%{distro_name} release files.
2021-02-01 07:12:25 +00:00
2021-04-09 03:50:23 +00:00
%package -n rocky-repos
2021-05-25 00:36:03 +00:00
Summary: %{distro_name} Package Repositories
2021-07-10 22:01:25 +00:00
License: %{rpm_license}
2021-04-09 03:50:23 +00:00
Provides: rocky-repos(%{major}) = %{upstream_rel}
Requires: system-release = %{upstream_rel}
Requires: rocky-gpg-keys
2021-04-09 03:59:11 +00:00
Conflicts: %{name} < 8.0
2021-04-09 03:50:23 +00:00
%description -n rocky-repos
2021-05-25 00:36:03 +00:00
%{distro_name} package repository files for yum/dnf
2021-04-09 03:50:23 +00:00
%package -n rocky-gpg-keys
Summary: Rocky RPM GPG Keys
Conflicts: %{name} < 8.0
%description -n rocky-gpg-keys
This package provides the RPM signature keys for Rocky.
%prep
echo Good.
%build
echo Good.
2021-02-01 07:12:25 +00:00
%install
# copy license and contributors doc here for %%license and %%doc macros
2021-04-25 17:24:34 +00:00
cp %{SOURCE201} %{SOURCE202} %{SOURCE203} .
2021-02-01 07:12:25 +00:00
# create /etc/system-release and /etc/redhat-release
install -d -m 0755 %{buildroot}%{_sysconfdir}
2021-05-25 00:36:03 +00:00
echo "%{distro_name} release %{version} (%{distro_code})" > %{buildroot}%{_sysconfdir}/rocky-release
2021-02-01 07:12:25 +00:00
echo "Derived from Red Hat Enterprise Linux %{version}" > %{buildroot}%{_sysconfdir}/rocky-release-upstream
ln -s rocky-release %{buildroot}%{_sysconfdir}/system-release
ln -s rocky-release %{buildroot}%{_sysconfdir}/redhat-release
2021-09-13 22:28:39 +00:00
ln -s rocky-release %{buildroot}%{_sysconfdir}/centos-release
2021-05-26 03:23:29 +00:00
mkdir -p %{buildroot}%{_mandir}/man1
2021-05-26 03:07:44 +00:00
install -p -m 0644 %{SOURCE1300} %{buildroot}%{_mandir}/man1/
2021-02-01 07:12:25 +00:00
# Create the os-release file
install -d -m 0755 %{buildroot}%{_prefix}/lib
cat > %{buildroot}%{_prefix}/lib/os-release << EOF
2021-05-25 00:36:03 +00:00
NAME="%{distro_name}"
VERSION="%{major}.%{minor} (%{distro_code})"
2021-02-01 07:12:25 +00:00
ID="rocky"
2021-09-13 22:28:39 +00:00
ID_LIKE="rhel centos fedora"
2021-05-03 09:57:38 +00:00
VERSION_ID="%{major}.%{minor}"
2021-02-01 07:12:25 +00:00
PLATFORM_ID="platform:el%{major}"
2021-05-25 00:36:03 +00:00
PRETTY_NAME="%{distro_name} %{major}.%{minor} (%{distro_code})"
ANSI_COLOR="0;32"
2021-12-11 23:59:44 +00:00
CPE_NAME="cpe:/o:rocky:rocky:%{base_release_version}:GA"
2021-02-01 07:12:25 +00:00
HOME_URL="https://rockylinux.org/"
BUG_REPORT_URL="https://bugs.rockylinux.org/"
2021-05-25 00:36:03 +00:00
ROCKY_SUPPORT_PRODUCT="%{distro_name}"
2021-04-25 07:17:20 +00:00
ROCKY_SUPPORT_PRODUCT_VERSION="%{major}"
2022-03-29 23:58:09 +00:00
REDHAT_SUPPORT_PRODUCT="%{distro_name}"
REDHAT_SUPPORT_PRODUCT_VERSION="%{major}"
2021-02-01 07:12:25 +00:00
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
2021-12-11 23:59:44 +00:00
echo "cpe:/o:rocky:rocky:%{base_release_version}:GA" > %{buildroot}%{_sysconfdir}/system-release-cpe
2021-02-01 07:12:25 +00:00
# create /etc/issue and /etc/issue.net
2021-05-20 00:06:30 +00:00
echo '\S' > %{buildroot}%{_sysconfdir}/issue
echo 'Kernel \r on an \m' >> %{buildroot}%{_sysconfdir}/issue
cp %{buildroot}%{_sysconfdir}/issue{,.net}
2021-02-01 07:12:25 +00:00
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.
2022-02-14 21:55:42 +00:00
%%__bootstrap ~bootstrap
2021-02-01 07:12:25 +00:00
%%rocky_ver %{major}
%%rocky %{major}
2021-09-13 23:05:19 +00:00
%%centos_ver %{major}
%%centos %{major}
2021-02-01 07:12:25 +00:00
%%rhel %{major}
2022-02-14 21:55:42 +00:00
%%dist %%{!?distprefix0:%%{?distprefix}}%%{expand:%%{lua:for i=0,9999 do print("%%{?distprefix" .. i .."}") end}}.el%{major}%%{?with_bootstrap:%{__bootstrap}}
2021-02-01 07:12:25 +00:00
%%el%{major} 1
EOF
2021-04-09 18:14:55 +00:00
# Data directory
2021-02-01 07:12:25 +00:00
install -d -m 0755 %{buildroot}%{_datadir}/rocky-release
ln -s rocky-release %{buildroot}%{_datadir}/redhat-release
install -p -m 0644 %{SOURCE200} %{buildroot}%{_datadir}/rocky-release/
2021-04-09 18:14:55 +00:00
# systemd presets
2021-02-01 07:12:25 +00:00
install -d -m 0755 %{buildroot}%{_prefix}/lib/systemd/system-preset/
2021-04-09 03:50:23 +00:00
install -m 0644 %{SOURCE300} %{buildroot}/%{_prefix}/lib/systemd/system-preset/
install -m 0644 %{SOURCE301} %{buildroot}/%{_prefix}/lib/systemd/system-preset/
install -m 0644 %{SOURCE302} %{buildroot}/%{_prefix}/lib/systemd/system-preset/
2021-02-01 07:12:25 +00:00
2021-04-09 18:14:55 +00:00
# dnf stuff
2021-04-09 03:50:23 +00:00
install -d -m 0755 %{buildroot}%{_sysconfdir}/dnf/vars
2021-05-01 16:44:14 +00:00
echo "pub/rocky" > %{buildroot}%{_sysconfdir}/dnf/vars/contentdir
2022-05-20 17:31:45 +00:00
echo "pub/sig" > %{buildroot}%{_sysconfdir}/dnf/vars/sigcontentdir
2021-04-09 03:50:23 +00:00
2021-04-09 18:14:55 +00:00
# Copy out GPG keys
2021-04-09 03:50:23 +00:00
install -d -m 0755 %{buildroot}%{_sysconfdir}/pki/rpm-gpg
2021-04-19 03:21:16 +00:00
install -p -m 0644 %{SOURCE101} %{buildroot}%{_sysconfdir}/pki/rpm-gpg/
install -p -m 0644 %{SOURCE102} %{buildroot}%{_sysconfdir}/pki/rpm-gpg/
2021-04-09 03:50:23 +00:00
2021-04-09 18:14:55 +00:00
# Copy our yum repos
2021-04-09 03:50:23 +00:00
install -d -m 0755 %{buildroot}%{_sysconfdir}/yum.repos.d
2021-04-19 03:21:16 +00:00
install -p -m 0644 %{SOURCE1200} %{buildroot}%{_sysconfdir}/yum.repos.d/
install -p -m 0644 %{SOURCE1201} %{buildroot}%{_sysconfdir}/yum.repos.d/
install -p -m 0644 %{SOURCE1202} %{buildroot}%{_sysconfdir}/yum.repos.d/
install -p -m 0644 %{SOURCE1203} %{buildroot}%{_sysconfdir}/yum.repos.d/
install -p -m 0644 %{SOURCE1210} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-05-01 16:44:14 +00:00
install -p -m 0644 %{SOURCE1211} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-05-28 05:29:55 +00:00
install -p -m 0644 %{SOURCE1212} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-06-30 06:07:04 +00:00
install -p -m 0644 %{SOURCE1213} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-04-19 03:21:16 +00:00
install -p -m 0644 %{SOURCE1220} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-06-25 19:50:09 +00:00
install -p -m 0644 %{SOURCE1221} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-04-19 03:21:16 +00:00
install -p -m 0644 %{SOURCE1222} %{buildroot}%{_sysconfdir}/yum.repos.d/
install -p -m 0644 %{SOURCE1223} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-05-05 08:45:26 +00:00
install -p -m 0644 %{SOURCE1226} %{buildroot}%{_sysconfdir}/yum.repos.d/
2021-02-01 07:12:25 +00:00
%files
%license LICENSE
%doc Contributors COMMUNITY-CHARTER
2021-02-01 07:12:25 +00:00
%{_sysconfdir}/redhat-release
2021-09-13 22:28:39 +00:00
%{_sysconfdir}/centos-release
2021-02-01 07:12:25 +00:00
%{_sysconfdir}/system-release
%{_sysconfdir}/rocky-release
%{_sysconfdir}/rocky-release-upstream
%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}/rocky-release
%{_prefix}/lib/os-release
%{_prefix}/lib/systemd/system-preset/*
2021-05-26 15:09:34 +00:00
%{_mandir}/man1/rocky.1.gz
2021-02-01 07:12:25 +00:00
2021-04-09 03:50:23 +00:00
%files -n rocky-repos
%license LICENSE
%config(noreplace) %{_sysconfdir}/yum.repos.d/Rocky-*.repo
%config(noreplace) %{_sysconfdir}/dnf/vars/contentdir
%files -n rocky-gpg-keys
%{_sysconfdir}/pki/rpm-gpg/
2021-02-01 07:12:25 +00:00
%changelog
2022-05-20 17:31:45 +00:00
* Fri May 20 2022 Louis Abel <label@rockylinux.org> - 8.6-3
- Add pub/sig var for dnf
2022-03-29 23:58:09 +00:00
* Tue Mar 29 2022 Louis Abel <label@rockylinux.org> - 8.6-2
2022-03-29 16:54:26 +00:00
- 8.6 prepatory release
2022-03-29 23:58:09 +00:00
- Add REDHAT_SUPPORT_PRODUCT to /etc/os-release
2022-03-29 16:54:26 +00:00
2022-02-14 21:55:42 +00:00
* Mon Feb 14 2022 Louis Abel <label@rockylinux.org> - 8.5-4
- Add bootstrap to macros to match EL9
2021-12-22 02:21:40 +00:00
* Tue Dec 21 2021 Louis Abel <label@rockylinux.org> - 8.5-3
- Add countme=1 to base repositories
2021-12-11 23:59:44 +00:00
* Sat Dec 11 2021 Louis Abel <label@rockylinux.org> - 8.5-2
- Fix CPE to match upstreamed Rocky data
* Tue Oct 05 2021 Louis Abel <label@rockylinux.org> - 8.5-1
- 8.5 prepatory release
2021-09-13 23:05:19 +00:00
* Mon Sep 13 2021 Louis Abel <label@rockylinux.org> - 8.4-35
2021-09-13 22:28:39 +00:00
- Add missing CentOS provides and symlinks
2021-09-13 23:05:19 +00:00
- Add centos macros for some builds to complete successfully without relying
on random patching
2021-09-13 22:28:39 +00:00
2021-09-09 17:20:38 +00:00
* Thu Sep 09 2021 Louis Abel <label@rockylinux.org> - 8.4-33
- Add centos as an id_like to allow current and future SIGs that rely on CentOS
to work properly.
2021-07-10 22:01:25 +00:00
* Wed Jul 07 2021 Louis Abel <label@rockylinux.org> - 8.4-32
2021-07-07 05:04:04 +00:00
- Fix URLs for Plus and NFV
2021-07-10 22:01:25 +00:00
- Use a macro for the license across sub packages
- Fix bogus date in changelog
2021-07-07 05:04:04 +00:00
2021-07-06 05:46:41 +00:00
* Mon Jul 05 2021 Louis Abel <label@rockylinux.org> - 8.4-30
- Fix URLs for debuginfo
2021-07-10 22:01:25 +00:00
* Tue Jun 29 2021 Louis Abel <label@rockylinux.org> - 8.4-29
2021-06-25 07:43:23 +00:00
- Fix URLs
2021-06-25 19:50:09 +00:00
- Added debuginfo
2021-06-30 06:07:04 +00:00
- Added NFV (future state)
2021-06-25 07:43:23 +00:00
2021-06-17 00:12:37 +00:00
* Wed Jun 16 2021 Louis Abel <label@rockylinux.org> - 8.4-25
- Fix up outstanding issues
2021-06-05 15:47:07 +00:00
* Sat Jun 05 2021 Louis Abel <label@rockylinux.org> - 8.4-24
- Change all mirrorlist urls to https
2021-05-28 05:29:55 +00:00
* Tue May 25 2021 Louis Abel <label@rockylinux.org> - 8.4-23
2021-05-25 00:36:03 +00:00
- Add a version codename to satisfy vendors
2021-05-25 01:23:37 +00:00
- Change license
2021-05-28 05:29:55 +00:00
- Fix up /etc/os-release and CPE
2021-05-26 03:07:44 +00:00
- Remove unused infra var
2021-05-28 05:29:55 +00:00
- Change base_release_version to major
2021-05-24 22:19:45 +00:00
2021-05-20 00:06:30 +00:00
* Wed May 19 2021 Louis Abel <label@rockylinux.org> - 8.4-16
- Remove annoying /etc/issue banner
2021-05-08 17:54:40 +00:00
* Sat May 08 2021 Louis Abel <label@rockylinux.org> - 8.4-15
- Release for 8.4
2021-05-05 08:45:26 +00:00
* Wed May 05 2021 Louis Abel <label@rockylinux.org> - 8.3-14
- Add RT, Plus, and NFV repo files
2021-05-03 09:57:38 +00:00
* Mon May 03 2021 Louis Abel <label@rockylinux.org> - 8.3-13
- Add minor version to /etc/os-release to resolve issues
with products that provide the "full version"
2021-05-01 16:44:14 +00:00
* Sat May 01 2021 Louis Abel <label@rockylinux.org> - 8.3-12
- Add resilient storage varient
- Fix vars
2021-04-29 02:48:40 +00:00
* Wed Apr 28 2021 Louis Abel <label@rockylinux.org> - 8.3-11
2021-04-29 01:44:13 +00:00
- Fix repo URL's where needed
- Change contentdir var
2021-04-25 07:17:20 +00:00
* Sun Apr 25 2021 Louis Abel <label@rockylinux.org> - 8.3-9
- Remove and add os-release references
2021-04-19 03:21:16 +00:00
* Sun Apr 18 2021 Louis Abel <label@rockylinux.org> - 8.3-8
- Emphasize that this is not a production ready release
- rpmlint
2021-04-15 04:05:42 +00:00
* Wed Apr 14 2021 Louis Abel <label@rockylinux.org> - 8.3-7
2021-04-15 03:20:30 +00:00
- Fix mantis links
2021-04-09 03:50:23 +00:00
* Thu Apr 08 2021 Louis Abel <label@rockylinux.org> - 8.3-5
- Combine release, repos, and keys together to simplify
2021-03-22 21:49:27 +00:00
* Mon Feb 01 2021 Louis Abel <label@rockylinux.org> - 8.3-4
2021-02-01 07:12:25 +00:00
- Initial Rocky Release 8.3 based on CentOS 8.3
2021-02-22 06:50:05 +00:00
- Keep centos rpm macro to reduce package modification burden
2021-03-22 21:49:27 +00:00
- Update /etc/issue