almalinux-release/almalinux-release.spec

197 lines
6.4 KiB
RPMSpec

%define debug_package %{nil}
%define product_family AlmaLinux
%define variant_titlecase Server
%define variant_lowercase server
%define release_name Electric Cheetah
%define contentdir almalinux
%define infra_var stock
%define base_release_version 8
%define full_release_version 8.4
%define dist_release_version 8
%define upstream_rel_long 8.4-0.6
%define upstream_rel 8.4
%define almalinux_rel 2
%define dist .el%{dist_release_version}
# define beta Beta
# The anaconda scripts in %%{_libexecdir} can create false requirements
%global __requires_exclude_from %{_libexecdir}
Name: almalinux-release
Version: %{upstream_rel}
Release: %{almalinux_rel}%{?dist}
Summary: %{product_family} release file
Group: System Environment/Base
License: GPLv2
Provides: almalinux-release = %{version}-%{release}
Provides: centos-release = %{version}-%{release}
Provides: almalinux-release(upstream) = %{upstream_rel}
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: almalinux-release-eula
Provides: centos-release-eula
Provides: redhat-release-eula
Source1: 85-display-manager.preset
Source2: 90-default.preset
Source3: 99-default-disable.preset
Source10: RPM-GPG-KEY-AlmaLinux
##Source100: rootfs-expand
Source200: EULA
Source201: GPL
##Source202: Contributors
Source300: almalinux.repo
Source301: almalinux-ha.repo
%description
%{product_family} release files
%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}%{?beta: %{beta}} (%{release_name})" > %{buildroot}/etc/almalinux-release
echo "Derived from Red Hat Enterprise Linux %{upstream_rel} (Source)" > %{buildroot}/etc/almalinux-release-upstream
ln -s almalinux-release %{buildroot}/etc/system-release
ln -s almalinux-release %{buildroot}/etc/redhat-release
ln -s almalinux-release %{buildroot}/etc/centos-release
# Create the os-release file
cat << EOF >>%{buildroot}%{_prefix}/lib/os-release
NAME="%{product_family}"
VERSION="%{full_release_version} (%{release_name})"
ID="almalinux"
ID_LIKE="rhel centos fedora"
VERSION_ID="%{full_release_version}"
PLATFORM_ID="platform:el%{base_release_version}"
PRETTY_NAME="%{product_family} %{full_release_version}%{?beta: %{beta}} (%{release_name})"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:almalinux:almalinux:%{full_release_version}:%{?beta:%(echo %{beta} | tr [A-Z] [a-z])}%{?!beta:GA}"
HOME_URL="https://almalinux.org/"
DOCUMENTATION_URL="https://wiki.almalinux.org/"
BUG_REPORT_URL="https://bugs.almalinux.org/"
ALMALINUX_MANTISBT_PROJECT="AlmaLinux-%{base_release_version}"
ALMALINUX_MANTISBT_PROJECT_VERSION="%{full_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:almalinux:almalinux:%{full_release_version}:%{?beta:%{beta}}%{?!beta:ga}" | tr [A-Z] [a-z] > %{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
# 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
mkdir -p -m 755 %{buildroot}/etc/dnf/vars
echo "%{infra_var}" > %{buildroot}/etc/dnf/vars/infra
echo "%{contentdir}" >%{buildroot}/etc/dnf/vars/contentdir
# set up the dist tag macros
install -d -m 755 %{buildroot}/etc/rpm
cat >> %{buildroot}/etc/rpm/macros.dist << EOF
# dist macros.
%%almalinux_ver %{base_release_version}
%%almalinux %{base_release_version}
%%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}/almalinux-release
ln -s almalinux-release %{buildroot}/%{_datadir}/redhat-release
install -m 644 %{SOURCE200} %{buildroot}/%{_datadir}/almalinux-release
# use unbranded docdir
mkdir -p -m 755 %{buildroot}/%{_docdir}/almalinux-release
ln -s almalinux-release %{buildroot}/%{_docdir}/redhat-release
install -m 644 %{SOURCE201} %{buildroot}/%{_docdir}/almalinux-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/
%clean
rm -rf %{buildroot}
%files
%defattr(0644,root,root,0755)
/etc/redhat-release
/etc/system-release
/etc/centos-release
##/etc/centos-release-upstream
/etc/almalinux-release
/etc/almalinux-release-upstream
/etc/dnf/
/etc/pki/rpm-gpg/RPM-GPG-KEY-AlmaLinux
%config(noreplace) /etc/yum.repos.d/almalinux.repo
%config(noreplace) /etc/yum.repos.d/almalinux-ha.repo
%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}/almalinux-release/*
%{_datadir}/redhat-release
%{_datadir}/almalinux-release/*
%{_prefix}/lib/os-release
%{_prefix}/lib/systemd/system-preset/*
%changelog
* Thu May 20 2021 Andrew Lukoshko <alukoshko@almalinux.org> - 8.4-2
- 8.4 stable release
* Fri Apr 16 2021 Andrew Lukoshko <alukoshko@almalinux.org> - 8.4-1
- 8.4 beta release
* Wed Mar 24 2021 Andrei Lukoshko <alukoshko@almalinux.org> - 8.3-4
- 8.3 stable release
* Wed Feb 10 2021 Andrei Lukoshko <alukoshko@cloudlinux.com> - 8.3-3
- Switch repos to mirrorlists and enable fastestmirror plugin
- Use full release version for ALMALINUX_MANTISBT_PROJECT_VERSION
- Add HighAvailability repo
* Wed Jan 27 2021 Anatholy Scryabin <ascryabin@cloudlinux.com> - 8.3-2
- Initial build for AlmaLinux