diff --git a/ciq/SPECS/kernel-clk6.12.spec b/ciq/SPECS/kernel-clk6.12.spec index 675a543f22b44..f540ae09f4bc6 100644 --- a/ciq/SPECS/kernel-clk6.12.spec +++ b/ciq/SPECS/kernel-clk6.12.spec @@ -3763,11 +3763,18 @@ touch %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?-v:+% # # This macro defines a %%preun script for a kernel package. -# %%kernel_variant_preun [-v ] -u [uki-suffix] +# %%kernel_variant_preun [-v ] -u [uki-suffix] -e +# Add kernel-install's --entry-type=type1|type2|all option (if supported) to limit removal +# to a specific boot entry type. # -%define kernel_variant_preun(v:u:) \ +%define kernel_variant_preun(v:u:e) \ %{expand:%%preun %{?-v:%{-v*}-}%{!?-u*:core}%{?-u*:uki-%{-u*}}}\ -/bin/kernel-install remove %{KVERREL}%{?-v:+%{-v*}} || exit $?\ +entry_type=""\ +%{-e: \ +/bin/kernel-install --help|grep -q -- '--entry-type=' &&\ + entry_type="--entry-type %{!?-u:type1}%{?-u:type2}" \ +}\ +/bin/kernel-install remove %{KVERREL}%{?-v:+%{-v*}} $entry_type || exit $?\ %if !%{with_automotive}\ if [ -x %{_sbindir}/weak-modules ]\ then\ @@ -3778,11 +3785,11 @@ fi\ %if %{with_up_base} && %{with_efiuki} %kernel_variant_posttrans -u virt -%kernel_variant_preun -u virt +%kernel_variant_preun -u virt -e %endif %if %{with_up_base} -%kernel_variant_preun +%kernel_variant_preun -e %kernel_variant_post %endif @@ -3793,52 +3800,52 @@ fi\ %if %{with_up} && %{with_debug} && %{with_efiuki} %kernel_variant_posttrans -v debug -u virt -%kernel_variant_preun -v debug -u virt +%kernel_variant_preun -v debug -u virt -e %endif %if %{with_up} && %{with_debug} -%kernel_variant_preun -v debug +%kernel_variant_preun -v debug -e %kernel_variant_post -v debug %endif %if %{with_arm64_16k_base} -%kernel_variant_preun -v 16k +%kernel_variant_preun -v 16k -e %kernel_variant_post -v 16k %endif %if %{with_debug} && %{with_arm64_16k} -%kernel_variant_preun -v 16k-debug +%kernel_variant_preun -v 16k-debug -e %kernel_variant_post -v 16k-debug %endif %if %{with_arm64_16k} && %{with_debug} && %{with_efiuki} %kernel_variant_posttrans -v 16k-debug -u virt -%kernel_variant_preun -v 16k-debug -u virt +%kernel_variant_preun -v 16k-debug -u virt -e %endif %if %{with_arm64_16k_base} && %{with_efiuki} %kernel_variant_posttrans -v 16k -u virt -%kernel_variant_preun -v 16k -u virt +%kernel_variant_preun -v 16k -u virt -e %endif %if %{with_arm64_64k_base} -%kernel_variant_preun -v 64k +%kernel_variant_preun -v 64k -e %kernel_variant_post -v 64k %endif %if %{with_debug} && %{with_arm64_64k} -%kernel_variant_preun -v 64k-debug +%kernel_variant_preun -v 64k-debug -e %kernel_variant_post -v 64k-debug %endif %if %{with_arm64_64k} && %{with_debug} && %{with_efiuki} %kernel_variant_posttrans -v 64k-debug -u virt -%kernel_variant_preun -v 64k-debug -u virt +%kernel_variant_preun -v 64k-debug -u virt -e %endif %if %{with_arm64_64k_base} && %{with_efiuki} %kernel_variant_posttrans -v 64k -u virt -%kernel_variant_preun -v 64k -u virt +%kernel_variant_preun -v 64k -u virt -e %endif %if %{with_realtime_base}