-## Choose only on of the possible target types
-# image=disk.img
-# squash=rootfs.squash
iso=live-cd.iso
-## Image size in MB. Needs to be able to hold all software.
-# imagesize=3072
-
-## Additional packages
-packages=alsa-utils,aqemu,debian-installer-launcher,debootstrap,dnsutils,dosfstools,exfat-fuse,exfat-utils,firefox-esr,firefox-esr-l10n-de,git,gparted,gwenview,make,man-db,manpages-de,mousepad,ncat,network-manager-gnome,ntfs-3g,okular,pavucontrol,pulseaudio,qemu-kvm,qemu-system-gui,qemu-utils,rdesktop,ssh,synaptic,telnet,tmux,vlc
-packages+=linux-image-4.19.0-11-amd64
+packages=aqemu,debian-installer-launcher,debootstrap,dnsutils,dosfstools,exfat-fuse,exfat-utils,firefox-esr,firefox-esr-l10n-de,git,gparted,gwenview,make,man-db,manpages-de,mousepad,ncat,network-manager-gnome,ntfs-3g,okular,pavucontrol,pulseaudio,pulseaudio-module-bluetooth,qemu-kvm,qemu-system-gui,qemu-utils,ssh,synaptic,telnet,tmux,vlc,xinput
+packages+=linux-image-amd64
packages+=firmware-atheros,firmware-brcm80211,firmware-iwlwifi,firmware-misc-nonfree
# packages+=firmware-ipw2x00
-## Debian release, so far only stretch has been tested
-release=buster
-
-## Comma separated list of config modules from modules/ directory
-modules=nodm,xfce,live,approx
+release=bullseye
define SOURCES :=
deb http://cdn.debian.net/debian ${release} main non-free
endef
-## Hostname for the generated machine
+modules=nodm,xfce,live,approx
hostname=live
-
-## Root password will be salted and encrypted in image
rootpass=root
-
-## The corresponding .pub file for the given rootkey will be applied as
-## SSH login file for the root user.
-## If the pub file is not found, a new key pair will be generated
# rootkey=image_ssh
-
-## Comma separated list of users to be set up.
-## User logins will start out with an empty password
-## If the live module is in use, users will also be added to the sudo group
-# users=adam,steve
users=live
-
-## Wifi configuration, if a Wifi password is given, WPA encryption will be used
-## without the password, the system will try to connect to an open wifi
-#wifi=berlin.freifunk.net
# wifi=MyWiFi
# wifipass=P4ssW0rD
-
-## Timezone as offered by Debians tzdata selection
timezone=Europe/Berlin
-
-## Comma separated list of locales, first one will become default locale
locales=de_DE.UTF-8 #,en_US.UTF-8
-
keyboard=de
-
-## If nodm is installed, you can choose a user to login automatically
-## If no user is given here, then nodm will default to root
nodm_user=live
-
-## In nodm, use full screen chromium web browser as session
-# webui=http://localhost/
-
-## When using NIS modules the directory server should be given
-# nis_server=nismaster
-
-## If the approxmodule is enabled, then one (and only one) apt-source
-## can be choosen to install packages from
-## See modules/approx.mk if you need more flexibility
approx=http://localhost:9000/debian
-.PHONY: _live_initrd _favorites _bootmount
-_config: _live_initrd _favorites
-_isosquash: _bootmount
+.PHONY: _live_initrd
+_config: _live_initrd
_live_initrd: cfg_root _live_modules
# printf '%s\n' "isofs" "squashfs" "ata_generic" "usb_storage" "sr_mod" "mmc_block" >>"$${CFGROOT}/etc/initramfs-tools/modules"
sed -i 's;^MODULES=.*$$;MODULES=most;' "$${CFGROOT}/etc/initramfs-tools/initramfs.conf"
+.PHONY: _favorites
+_config: _favorites
+_favorites: _xfce
+ printf 'favorites=debian-installer-launcher.desktop,libreoffice-startcenter.desktop,firefox-esr.desktop,xfce4-terminal.desktop,org.kde.dolphin.desktop,mousepad.desktop,synaptic.desktop,aqemu.desktop,gparted.desktop' \
+ >"$${CFGROOT}/etc/xdg/xfce4/panel/whiskermenu-10.rc"
-_config: cfg_root/usr/share/kxmlgui5/dolphin/dolphinui.rc
-_config: cfg_root/usr/local/bin/gksu
-
-cfg_root/usr/share/kxmlgui5/dolphin/dolphinui.rc: cfg_root _xfce
- mkdir -p "$(dir $@)"
- printf '%s\n' '<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">' \
- '<kpartgui name="dolphin" version="21">' \
- '<ActionProperties scheme="Default">' \
- '<Action name="new_tab" shortcut="Ctrl+T; "/>' \
- '</ActionProperties>' \
- '</kpartgui>' \
+# Place some helpers in bash history ;-)
+_config: cfg_root/home/live/.bash_history
+cfg_root/home/live/.bash_history: cfg_root _users
+ mkdir "$${CFGROOT}/home/live"
+ printf '%s\n' \
+ 'sudo git clone https://git.plutz.net/git/blast /mnt/blast' \
+ 'for m in /proc /sys /dev /run; do sudo mount -o rbind $$m /mnt/$$m; done' \
>$@
+ chroot "$${CFGROOT}" chown live:live -R /home/live
+# Fake gksu/gksudo, because live password is empty anyway, needed for installer
+_config: cfg_root/usr/local/bin/gksu
cfg_root/usr/local/bin/gksu:
ln -s /usr/bin/sudo $@
ln -s /usr/bin/sudo $@do
-_favorites: _xfce
- printf 'favorites=debian-installer-launcher.desktop,libreoffice-startcenter.desktop,firefox-esr.desktop,xfce4-terminal.desktop,org.kde.dolphin.desktop,mousepad.desktop,synaptic.desktop,aqemu.desktop,gparted.desktop' \
- >"$${CFGROOT}/etc/xdg/xfce4/panel/whiskermenu-10.rc"
+# include debian installer
_iso_image: iso_root/install/gtk/initrd.gz
iso_root/install/gtk/initrd.gz: /usr/lib/debian-installer/images/10/amd64/gtk/debian-installer/amd64/initrd.gz
mkdir -p "$(dir $@)"
cp "$<" "$@"
-_config: cfg_root/home/live/.bash_history
-cfg_root/home/live/.bash_history: cfg_root _users
- mkdir "$${CFGROOT}/home/live"
- printf '%s\n' \
- "sudo git clone https://git.plutz.net/git/blast /mnt/blast" \
- "for m in /proc /sys /dev /run; do sudo mount -o rbind $$m /mnt/$$m; done" \
- >$@
- chroot "$${CFGROOT}" chown live:live -R /home/live
-
+# Make boot folder available for browsing and for debian-installer
+# Need to create boot folder in ramdrive because it will not be contained in squashfs
+.PHONY: _bootmount
+_isosquash: _bootmount
_bootmount: cfg_root _config
- # mkdir -m 1730 "$${CFGROOT}/var/spool/cron/crontabs/"
- # chroot "$${CFGROOT}" chgrp crontab "/var/spool/cron/crontabs/"
printf '@reboot mkdir -m755 /boot\n' >>"$${CFGROOT}/var/spool/cron/crontabs/root"
chmod 600 "$${CFGROOT}/var/spool/cron/crontabs/root"
printf '%s 0 0\n' \