+fcopy -iSM /etc/apt/sources.list
+
+
+setrel() {
+
+ # if release is not set, try to determine it
+
+ if [ -n "$release" ]; then
+ return
+ fi
+ if [ ! -f $target/etc/os-release ]; then
+ return
+ fi
+
+ dists="jessie stretch buster bullseye bookworm trixie forky noble jammy focal bionic xenial trusty ecne aramo nabia etiona"
+ for d in $dists; do
+ if grep -iq $d $target/etc/os-release; then
+ release=$d
+ break
+ fi
+ done
+}
+
+# if installation was done from CD, replace useless sources.list
+setrel
+if [ -f $target/etc/apt/sources.list ] && [ -n "$release" ]; then
+ if grep -q 'file generated by fai-cd' $target/etc/apt/sources.list; then
+ echo "Create new sources.list for $release"
+ cat <<EOF > $target/etc/apt/sources.list
+deb $apt_cdn/debian $release main contrib non-free non-free-firmware
+deb $security_cdn/debian-security ${secsuite} main contrib non-free non-free-firmware
+#deb [trusted=yes] http://fai-project.org/download $release koeln
+EOF
+ fi
+ # if the package fai-server was installed, enable the project's repository
+ if dpkg-query --admindir=$target/var/lib/dpkg -W fai-server >/dev/null 2>&1; then
+ fai-sed '/fai-project.org/s/^#//' /etc/apt/sources.list
+ fi
+fi
+
+# install default sources.list for Debian based distributions
+if [ -d $target/etc/apt ] && [ ! -f $target/etc/apt/sources.list ]; then
+ fcopy -Svc DEBIAN_DEFAULT /etc/apt/sources.list
+fi
+
+# older releases do not have the non-free-firmware section
+if [ -n "$release" ] && [[ "buster bullseye" =~ "$release" ]]; then
+ sed -i -e 's/non-free-firmware//g' $target/etc/apt/sources.list
+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* $FAI_RUNDIR
+fi