From 8bf84084d0e6946e74d94efc68fe50b9d906b29d Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 4 Apr 2023 21:24:39 -0600 Subject: [PATCH] fix --- debian.sh | 44 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 37 insertions(+), 7 deletions(-) diff --git a/debian.sh b/debian.sh index dceba85..b7f40df 100755 --- a/debian.sh +++ b/debian.sh @@ -50,11 +50,11 @@ COMPRESSION='compress=zlib:5' DEBIAN_RELEASE='stable' CURRENT_STABLE_NAME='bullseye' AUTO_DECRYPT='True' -FLATPAKS+=(app/net.brinkervii.grapejuice org.kde.kdenlive) +FLATPAKS+=(net.sourceforge.chromium-bsu io.jor.mightymike com.eduke32.EDuke32 com.zandronum.Zandronum net.openra.OpenRA) #Packages -PACKAGES=" minidlna libsecret-tools libglu1-mesa preload flatpak powertop acpi cockpit cockpit-podman packagekit cockpit-packagekit cockpit-pcp cockpit-storaged redis " -BASE_PACKAGES=" shfmt cups apt-transport-https samba samba-common nfs-common nfs-kernel-server linux-cpupower locales zram-tools acpid podman ghostscript cifs-utils ntp vim-airline rsync screen base udev git network-manager efibootmgr linux-headers-amd64 cryptsetup network-manager-openvpn ntp screen docbook-xsl alsa-utils sysstat fuse3 build-essential unzip bash-completion parted dosfstools wget curl " +PACKAGES=" nmap minidlna libsecret-tools libglu1-mesa preload flatpak powertop acpi cockpit cockpit-podman packagekit cockpit-packagekit cockpit-pcp cockpit-storaged " +BASE_PACKAGES=" btop shfmt cups apt-transport-https samba samba-common nfs-common nfs-kernel-server linux-cpupower locales zram-tools acpid podman ghostscript cifs-utils ntp vim-airline rsync screen base udev git network-manager efibootmgr linux-headers-amd64 cryptsetup network-manager-openvpn ntp screen docbook-xsl alsa-utils sysstat fuse3 build-essential unzip bash-completion parted dosfstools wget curl " SHARED_DESKTOP_APPS=" kwin-addons power-profiles-daemon kde-standard konsole dolphin kde-spectacle print-manager digikam yt-dlp keepassxc telegram-desktop krita nextcloud-desktop handbrake calligra " #Removed for Debian Bullseye. Works on Bookworm #REMOVED=" aardvark-dns podman-compose podman-toolbox " @@ -62,7 +62,7 @@ VIRTUALIZATION=" virt-manager qemu-system libvirt-daemon-system ovmf cockpit-mac PACKAGES=$BASE_PACKAGES$PACKAGES$SHARED_DESKTOP_APPS #PACKAGES=$BASE_PACKAGES SERVICES+=(powertop preload) -TAR_EXCLUDES="--exclude=/.snapshots --exclude=/snapshots --exclude=/var/backups --exclude=/volumes/* --exclude=/mnt/* --exclude=/var/tmp/* --exclude=/tmp/* --exclude=/raid/* --exclude=/root/* --exclude=/var/cache/apt/archives/* --exclude=/proc/* --exclude=/.snapshots/* --exclude=$TARGET/* --exclude=/var/lib/libvirt/* --exclude=/dev/* --exclude=/sys/* --exclude=/home/* --exclude=/var/lib/flatpak --exclude=/var/lib/postgresql --exclude=/var/lib/containers" +TAR_EXCLUDES="--exclude=/.snapshots --exclude=/snapshots --exclude=/var/backups --exclude=/volumes/* --exclude=/mnt/* --exclude=/var/tmp/* --exclude=/tmp/* --exclude=/raid/* --exclude=/root/* --exclude=/var/cache/apt/archives/* --exclude=/proc/* --exclude=/.snapshots/* --exclude=/var/lib/libvirt/* --exclude=/dev/* --exclude=/sys/* --exclude=/home/* --exclude=/var/lib/flatpak --exclude=/var/lib/postgresql --exclude=/var/lib/containers" auto_login() { mkdir -p $TARGET/etc/sddm.conf.d @@ -268,6 +268,34 @@ configure-repository() { echo 'DPkg::Post-Invoke {"/usr/bin/debian.sh snapshot";};' >$TARGET/etc/apt/apt.conf } +make-image() { + umount $TARGET + mount -t tmpfs tmpfs -o size=11G,dev,exec $TARGET + debootstrap --arch amd64 $DEBIAN_RELEASE $TARGET https://deb.debian.org/debian + configure-repository + locale + custom_service_files + services + cp -f debian.sh $TARGET/usr/bin/ + cp -f debian.tar $TARGET/etc/default/ + echo 'bash /usr/bin/debian.sh kernel-packages' >>$TARGET/setup.sh + echo "bash /usr/bin/debian.sh bootloader $1" >>$TARGET/setup.sh + echo 'bash /usr/bin/debian.sh grub-snapshots' >>$TARGET/setup.sh + echo 'bash /usr/bin/debian.sh desktop' >>$TARGET/setup.sh + echo 'bash /usr/bin/debian.sh additional-software' >>$TARGET/setup.sh + echo '/usr/bin/apt clean all' >>$TARGET/setup.sh + chmod +x $TARGET/usr/bin/debian.sh + chmod +x $TARGET/setup.sh + chroot $TARGET /setup.sh + rm -f $TARGET/setup.sh + echo -e "ALGO=zstd\nPERCENT=60" | tee -a $TARGET/etc/default/zramswap + cd $TARGET + echo "[Creating new OS image to $1/$ROOT_NAME.tgz]" + time tar cpzf $1/$ROOT_NAME.tgz $TAR_EXCLUDES . + cd $1 + umount $TARGET +} + install() { partitions sed -i '/^SigLevel/s/^\(.*\)$/#\1\n/' /etc/pacman.conf @@ -292,7 +320,7 @@ install() { } desktop() { - SERVICES+=(pmcd pmie pmlogger pmproxy exim4 cockpit.socket redis-server apparmor nfs-server smbd rpbind rpcbind.socket avahi-daemon bluetooth minidlna openvpn) + SERVICES+=(pmcd pmie pmlogger pmproxy exim4 cockpit.socket apparmor nfs-server smbd rpbind rpcbind.socket avahi-daemon bluetooth minidlna openvpn) for i in "${SERVICES[@]}"; do systemctl disable --now $i done @@ -543,7 +571,7 @@ server-config() { cp -f etc/exports /etc/ crontab >crontab - SERVICES+=(minidlna vip containers pmie pmielogger nfs-server.service exim4 cockpit.socket redis-server smbd) + SERVICES+=(minidlna vip containers pmie pmielogger nfs-server.service exim4 cockpit.socket smbd) for i in "${SERVICES[@]}"; do systemctl enable $i done @@ -596,7 +624,7 @@ show-help() { if [ "$1" = "install" ]; then install "$2" elif [ "$1" = "desktop" ]; then - desktop + desktop elif [ "$1" = "tar" ]; then create-os-snapshots "$2" "$3" elif [ "$1" = "kernel-packages" ]; then @@ -617,6 +645,8 @@ elif [ "$1" = "flatpaks" ]; then flatpaks elif [ "$1" = "bootloader" ]; then bootloader "$2" +elif [ "$1" = "make-image" ]; then + make-image "$2" elif [ "$1" = "snapshot" ]; then snapshots elif [ "$1" = "secure-boot" ]; then