diff --git a/files/add-almalinux9-support.sh b/files/add-almalinux9-support.sh index 834e1e9..7d3fb6e 100644 --- a/files/add-almalinux9-support.sh +++ b/files/add-almalinux9-support.sh @@ -37,8 +37,11 @@ find ./shared -type f -exec sed -i \ # silently falls through to the generic `else` branch of those rules (e.g. # configure_custom_crypto_policy_cis drops NO-SSHWEAKCIPHERS/NO-SSHWEAKMACS/ # NO-WEAKMAC/NO-RPMSHA1, weakening the CIS crypto remediation vs the rhel9 base). -find ./linux_os -type d -name ensure_redhat_gpgkey_installed -prune -o -type f -exec sed -i \ - -e '/if product in/ s/"rhel9"/"rhel9", "almalinux9"/g' {} \; +find ./linux_os ./shared -type d -name ensure_redhat_gpgkey_installed -prune -o -type f -exec sed -i \ + -e '/if product in/ s/"rhel9"/"rhel9", "almalinux9"/g' \ + -e "/if product in/ s/'rhel9'/'rhel9', 'almalinux9'/g" \ + -e '/if product not in/ s/"rhel9"/"rhel9", "almalinux9"/g' \ + -e "/if product not in/ s/'rhel9'/'rhel9', 'almalinux9'/g" {} \; find ./linux_os ./shared -type d -name ensure_redhat_gpgkey_installed -prune -o -type f -exec sed -i -E \ -e 's/product == (["'\''])rhel9\1/(product == \1rhel9\1 or product == \1almalinux9\1)/g' {} \; @@ -81,18 +84,10 @@ if [ -d products/almalinux9/overlays ]; then products/almalinux9/overlays/* fi -if [ -d products/almalinux9/controls ]; then - for ctl in $(find products/almalinux9/controls/ -type f -name '*rhel9*'); do - mv "$ctl" "$(echo "$ctl" | sed 's/rhel9/almalinux9/g')" - done - find products/almalinux9/controls -type f -exec sed -i \ - -e 's/Red Hat Enterprise Linux/AlmaLinux OS/g' \ - -e 's/RHEL9/ALMALINUX9/g' \ - -e 's/RHEL-9/ALMALINUX-9/g' \ - -e '/^id:/s/rhel9/almalinux9/g' \ - -e '/^product:/s/rhel9/almalinux9/g' \ - -e 's/ensure_redhat_gpgkey_installed/ensure_almalinux_gpgkey_installed/g' {} \; -fi +# Upstream CaC ships a maintained controls/cis_almalinux9.yml at the top level. +# The product-level copy (mechanically renamed from rhel9) would override it and +# lose AlmaLinux-specific adjustments, so remove it. +rm -fr products/almalinux9/controls sed -i \ -e 's/rhel9/almalinux9/' \