mirror of
https://github.com/SCST-project/scst.git
synced 2026-08-27 19:37:17 +00:00
Reject unsupported kernel versions before download or patch generation. Remove 2.x paths, RHEL 5/6 and Scientific Linux repositories, and compatibility branches that cannot run with the Linux 3.10 minimum. Keep the maintained ABT_KERNELS matrix unchanged.
110 lines
3.7 KiB
Bash
110 lines
3.7 KiB
Bash
# -*- mode: shell-script -*-
|
|
# Shell functions for downloading and extracting a RHEL or RHEL clone RPM
|
|
|
|
# Arguments:
|
|
# $1: Linux distribution name
|
|
# $2: Linux distribution version (major.minor)
|
|
# $3: architecture
|
|
function get_srpm_urls() {
|
|
local arch distro releasever releasevermajor releaseverminor
|
|
|
|
distro="$1"
|
|
releasever="$2"
|
|
arch="$3"
|
|
set -- ${2//./ }
|
|
releasevermajor="$1"
|
|
releaseverminor="$2"
|
|
|
|
case "$distro" in
|
|
"CentOS"*)
|
|
case $releasever in
|
|
7*)
|
|
echo "http://vault.centos.org/${releasever}/os/Source/SPackages"
|
|
echo "http://vault.centos.org/${releasever}/updates/Source/SPackages";;
|
|
8*)
|
|
echo "http://vault.centos.org/${releasever}/BaseOS/Source/SPackages/";;
|
|
esac
|
|
;;
|
|
"AlmaLinux")
|
|
case $releasever in
|
|
[89]*|10*)
|
|
echo "https://repo.almalinux.org/vault/${releasever}/BaseOS/Source/Packages/";;
|
|
esac
|
|
;;
|
|
"RockyLinux"|"Rocky")
|
|
case $releasever in
|
|
[89]*|10*)
|
|
echo "https://dl.rockylinux.org/pub/rocky/${releasever}/BaseOS/source/tree/Packages/k/"
|
|
echo "https://dl.rockylinux.org/pub/rocky/${releasever}/BaseOS/source/tree/Packages/"
|
|
echo "https://dl.rockylinux.org/vault/rocky/${releasever}/BaseOS/source/tree/Packages/k/"
|
|
echo "https://dl.rockylinux.org/vault/rocky/${releasever}/BaseOS/source/tree/Packages/";;
|
|
esac
|
|
;;
|
|
"Oracle Linux Server"|"UEK")
|
|
echo "http://public-yum.oracle.com/repo/OracleLinux/OL${releasevermajor}/${releaseverminor}/base/${arch}/getPackageSource"
|
|
echo "http://public-yum.oracle.com/repo/OracleLinux/OL${releasevermajor}/latest/${arch}/getPackageSource"
|
|
for ((i=4;i<=8;i++)); do
|
|
echo "http://public-yum.oracle.com/repo/OracleLinux/OL${releasevermajor}/UEKR$i/${arch}/getPackageSource"
|
|
done
|
|
;;
|
|
*)
|
|
echo "Unknown type of distribution: $distro" >&2
|
|
return 1
|
|
;;
|
|
esac
|
|
}
|
|
|
|
# Arguments:
|
|
# $1: Linux distribution name
|
|
# $2: Linux distribution version (major.minor)
|
|
# $3: architecture
|
|
function get_rpm_urls() {
|
|
local arch distro releasever releasevermajor releaseverminor
|
|
|
|
distro="$1"
|
|
releasever="$2"
|
|
arch="$3"
|
|
set -- ${2//./ }
|
|
releasevermajor="$1"
|
|
releaseverminor="$2"
|
|
|
|
case "$distro" in
|
|
"CentOS"*)
|
|
case $releasever in
|
|
7*)
|
|
echo "https://mirrors.edge.kernel.org/centos/${releasever}/updates/${arch}/Packages"
|
|
echo "http://vault.centos.org/${releasever}/updates/${arch}/Packages"
|
|
echo "http://vault.centos.org/${releasever}/os/${arch}/Packages http://vault.centos.org/${releasever}/updates/${arch}/Packages";;
|
|
8*)
|
|
echo "https://mirrors.edge.kernel.org/centos/8-stream/BaseOS/${arch}/os/Packages";;
|
|
esac
|
|
;;
|
|
"AlmaLinux")
|
|
case $releasever in
|
|
[89]*|10*)
|
|
echo "https://mirror.yandex.ru/almalinux/${releasever}/BaseOS/${arch}/os/Packages/";;
|
|
esac
|
|
;;
|
|
"RockyLinux"|"Rocky")
|
|
case $releasever in
|
|
[89]*|10*)
|
|
echo "https://dl.rockylinux.org/pub/rocky/${releasever}/BaseOS/${arch}/os/Packages/k/"
|
|
echo "https://dl.rockylinux.org/pub/rocky/${releasever}/BaseOS/${arch}/os/Packages/"
|
|
echo "https://dl.rockylinux.org/vault/rocky/${releasever}/BaseOS/${arch}/os/Packages/k/"
|
|
echo "https://dl.rockylinux.org/vault/rocky/${releasever}/BaseOS/${arch}/os/Packages/";;
|
|
esac
|
|
;;
|
|
"Oracle Linux Server"|"UEK")
|
|
echo "http://public-yum.oracle.com/repo/OracleLinux/OL${releasevermajor}/${releaseverminor}/base/${arch}/getPackageSource"
|
|
echo "http://public-yum.oracle.com/repo/OracleLinux/OL${releasevermajor}/latest/${arch}/getPackageSource"
|
|
for ((i=4;i<=8;i++)); do
|
|
echo "http://public-yum.oracle.com/repo/OracleLinux/OL${releasevermajor}/UEKR$i/${arch}/getPackageSource"
|
|
done
|
|
;;
|
|
*)
|
|
echo "Unknown distribution type: $distro" >&2
|
|
return 1
|
|
;;
|
|
esac
|
|
}
|