]> git.plutz.net Git - blast/blobdiff - live-cd.mk
xfce4-screensaver config (for trixie)
[blast] / live-cd.mk
index 24cd8a9c6f3a4225b57416917c9e0d67d6d16901..92c0889ccee174188a1a0bfa33429980aa146f3e 100644 (file)
-## 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+=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=bookworm
 
 define SOURCES :=
-deb     http://cdn.debian.net/debian ${release} main non-free
+deb    http://deb.debian.org/debian            ${release}              main non-free-firmware
+deb    http://deb.debian.org/debian            ${release}-backports    main
+deb    http://deb.debian.org/debian-security/  ${release}-security     main
 endef
 
-## Hostname for the generated machine
-hostname=live
+packages =
+packages += alsa-utils
+packages += cryptsetup
+packages += debian-installer-launcher debootstrap dosfstools
+packages += eject exfat-fuse exfatprogs
+packages += firefox-esr firefox-esr-l10n-de
+packages += git gdebi gparted
+packages += libblockdev-crypto2 lvm2
+packages += man-db manpages-de mdadm mousepad
+packages += ncat network-manager-gnome ntfs-3g
+packages += p7zip-full pavucontrol pulseaudio pulseaudio-module-bluetooth
+packages += synaptic
+packages += telnet tmux
+packages += unace unrar-free
+packages += vlc
+packages += xinput xpdf
+
+packages += linux-image-amd64
+packages += firmware-atheros firmware-brcm80211 firmware-iwlwifi firmware-misc-nonfree firmware-libertas firmware-realtek
+# packages+=firmware-ipw2x00
 
-## Root password will be salted and encrypted in image
+modules=nodm,xfce,live #,approx
+hostname=live
 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,xfce4-file-manager.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
+iso_root/install/gtk/initrd.gz: /usr/lib/debian-installer/images/12/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' \