Merge branch 'upstream', fai 5.4
[automated-distro-installer] / fai / config / scripts / LAST / 50-misc
index 2a8f2f129a6b47faa295b2f34ed6507595317d2d..459b4de92aef13687a67174cbe2e927dda5a8fca 100755 (executable)
@@ -15,14 +15,13 @@ else
     fi
   fi
 
-  # # commented because it does false possitive
-  # usedm=$(dmsetup ls | egrep -v '^live-rw|^live-base|^No devices found' | wc -l)
-  # if [ $usedm -ne 0 ]; then
-  #   if [ ! -d $target/etc/lvm ]; then
-  #       echo ERROR: Found lvm devices, but the lvm2 package was not installed
-  #       error=1
-  #   fi
-  # fi
+  usedm=$(dmsetup ls 2>/dev/null | egrep -v '^live-rw|^live-base|^No devices found' | wc -l)
+  if [ $usedm -ne 0 ]; then
+    if [ ! -d $target/etc/lvm ]; then
+       echo ERROR: Found lvm devices, but the lvm2 package was not installed
+       error=1
+    fi
+  fi
 fi
 
 # remove backup files from cfengine, but only if cfengine is installed
@@ -53,7 +52,10 @@ fi
 
 if [ $FAI_ACTION = "install" ]; then
     lskernels=$(echo $target/boot/vmlinu*)
-    [ -f ${lskernels%% *} ] || echo "ERROR: No kernel was installed. Have a look at shell.log" >&2
+    if [ ! -f ${lskernels%% *} ]; then
+       echo "ERROR: No kernel was installed. Have a look at shell.log" >&2
+       error=1
+    fi
 fi
 
 # copy sources.list
@@ -71,24 +73,28 @@ setrel() {
        return
     fi
 
-    dists="jessie stretch xenial trusty"
+    dists="jessie stretch buster xenial trusty"
     for d in $dists; do
        if grep -iq $d $target/etc/os-release; then
            release=$d
            break
        fi
     done
-    echo "\$release set to $release"
 }
 
 # if installation was done from CD, replace useless sources.list
 setrel
 if [ -f $target/etc/apt/sources.list -a -n "$release" ]; then
     grep -q 'file generated by fai-cd' $target/etc/apt/sources.list && cat <<EOF > $target/etc/apt/sources.list
-deb http://httpredir.debian.org/debian $release main contrib non-free
-deb http://httpredir.debian.org/debian-security $release/updates main contrib non-free
+deb $apt_cdn/debian $release main contrib non-free
+deb $apt_cdn/debian-security $release/updates main contrib non-free
 deb [trusted=yes] http://fai-project.org/download $release koeln
 EOF
 fi
 
+# for ARM architecture, we may need the kernel and initrd to boot or flash the device
+if ifclass ARM64; then
+    cp -pv $target/boot/vmlinuz* $target/boot/initrd* $LOGDIR
+fi
+
 exit $error