sbc-images/includes/post/rpm-repos-enable.ksi
2023-09-13 06:59:56 +05:30

52 lines
2.8 KiB
Plaintext

%post --erroronfail
set -x
# Setup networking temporarily
[ -f /etc/resolv.conf ] || echo "nameserver 1.1.1.1" > /etc/resolv.conf
# This repository is a given since it provides 'uboot-images-armv8' and
# 'uboot-tools', which are **required**.
dnf config-manager --assumeyes --add-repo "https://download.rockylinux.org/pub/sig/$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')/altarch/$(uname -m)/altarch-common"
if ! dnf repolist --enabled | grep "download.rockylinux.org_pub_sig_$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')_altarch_$(uname -m)_altarch-common" > /dev/null; then
dnf config-manager --set-enabled "download.rockylinux.org_pub_sig_$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')_altarch_$(uname -m)_altarch-common" || exit 1
fi
if dnf list installed | grep @epel > /dev/null || dnf list installed | grep epel-release > /dev/null; then
# Install the epel-release package since we don't know if a package was
# installed from EPEL or only the epel-release package was installed.
# Either way, the user definitely wants EPEL enabled, so just do that
# anyways.
dnf install --assumeyes epel-release
if ! dnf repolist --enabled | grep crb > /dev/null; then
dnf config-manager --set-enabled crb || exit 1
fi
if ! dnf repolist --enabled | grep epel > /dev/null; then
dnf config-manager --set-enabled epel || exit 1
fi
fi
# This is my (Pratham Patel) COPR that I use to provide 'kernel-stable-tfg' and
# 'kernel-lts-tfg' packages. I intend to keep it up-to-date so this is enabled
# so that users can get updates whenever upstream bumps versions.
dnf copr enable --assumeyes prathampatel/kernel-tfg "rhel-$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')-$(uname -m)"
if ! dnf repolist --enabled | grep 'copr:copr.fedorainfracloud.org:prathampatel:kernel-tfg' > /dev/null; then
dnf config-manager --set-enabled 'copr:copr.fedorainfracloud.org:prathampatel:kernel-tfg' || exit 1
fi
if dnf list installed | grep "kernel-next-tfg\|kernel-rc-tfg" > /dev/null; then
# The user has installed a package that provides either kernel-next or
# kernel-rc which comes from the the 'prathampatel/kernel-testing-tfg'
# COPR repository. Since that is used, enable it so updates reach the user.
dnf copr enable --assumeyes prathampatel/kernel-testing-tfg "rhel-$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')-$(uname -m)"
if ! dnf repolist --enabled | grep 'copr:copr.fedorainfracloud.org:prathampatel:kernel-testing-tfg' > /dev/null; then
dnf config-manager --set-enabled 'copr:copr.fedorainfracloud.org:prathampatel:kernel-testing-tfg' || exit 1
fi
fi
# Remove the temporary 'resolv.conf' file
rm -v -f /etc/resolv.conf
%end