commit:     3cf52d4eacdde88edce23e96262d8870f65dccb8
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  1 18:58:14 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sat Aug  1 20:48:35 2020 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=3cf52d4e

genkernel: Fail if we cannot save kernel config

Now that we check in determine_real_args() if we can write into /etc/kernels
or bail out early in case we cannot but --save-config was set, we can be
more explicit and fail now in case we failed to save kernel config.

Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 genkernel | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/genkernel b/genkernel
index b601eb0..efa4360 100755
--- a/genkernel
+++ b/genkernel
@@ -263,10 +263,15 @@ then
        if isTrue "${SAVE_CONFIG}"
        then
                print_info 1 "$(get_indent 1)>> Saving config of successful 
build to '/etc/kernels/${GK_FILENAME_CONFIG}' ..."
-               [ ! -e '/etc/kernels' ] && mkdir -p /etc/kernels
-               cp "${KERNEL_OUTPUTDIR}/.config" 
"/etc/kernels/${GK_FILENAME_CONFIG}" || \
-                       print_warning 1 "Unable to copy the kernel 
configuration file; Ignoring non-fatal error ..."
-                       # Just a warning because ordinary users are not allowed 
to write in /etc
+
+               if [ ! -d '/etc/kernels' ]
+               then
+                       mkdir -p /etc/kernels \
+                               || gen_die "Failed to create '/etc/kernels'!"
+               fi
+
+               cp -aL "${KERNEL_OUTPUTDIR}/.config" 
"/etc/kernels/${GK_FILENAME_CONFIG}" \
+                       || gen_die "Failed to copy kernel configuration to 
'/etc/kernels'!"
        fi
 elif [[ -n "${KERNEL_LOCALVERSION}" && "${KERNEL_LOCALVERSION}" != "${LOV}" ]]
 then

Reply via email to