From c293990fa2beaeb638f7b9ceda2d45f15d96daa8 Mon Sep 17 00:00:00 2001 From: "Jean (east-high-Nerd)" Date: Sat, 1 Aug 2026 21:48:51 -0400 Subject: [PATCH] Split [debian.sh] into multiple scripts inside a [debian] directory, adjusted references in other files to reflect changes --- debian.sh | 232 ------------------------------------------------------ 1 file changed, 232 deletions(-) delete mode 100755 debian.sh diff --git a/debian.sh b/debian.sh deleted file mode 100755 index 54dbb4f..0000000 --- a/debian.sh +++ /dev/null @@ -1,232 +0,0 @@ -#!/bin/bash -set -euo pipefail - -baseDir="$(realpath "$(dirname "${0}")")" - -source \ - /etc/os-release -source \ - "${baseDir}/system.conf" - - -if [[ "${1}" == '--live' ]]; then - if [[ "${ID}" == 'debian' ]] && [[ ! "$(hostname)" == "debian-live" ]]; then - cat << EOF | tee /etc/apt/sources.list.d/contrib.sources 1> /dev/null -Enabled: yes -Types: deb -URIs: http://deb.debian.org/debian/ -Suites: ${VERSION_CODENAME} -Components: contrib -Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg -EOF - fi - - apt \ - --update \ - install \ - --yes \ - mmdebstrap \ - gdisk \ - linux-headers-generic \ - systemd-timesyncd \ - whois \ - zfsutils-linux -fi - -if [[ "${1}" == '--mmdebstrap' ]]; then - packages=(\ -ca-certificates \ -console-setup \ -cryptsetup \ -curl \ -dosfstools \ -dpkg-dev \ -efibootmgr \ -ethtool \ -firmware-{ast,atheros,bnx{2,2x},brcm80211,iwlwifi,libertas,linux,realtek,zd1211} \ -flatpak \ -keyboard-configuration \ -linux-{headers,image}-amd64 \ -locales \ -nano \ -network-manager \ -openssh-{client,server} \ -popularity-contest \ -printer-driver-all \ -rsync \ -sudo \ -systemd-timesyncd \ -tasksel \ -zfs-initramfs \ -zstd\ -) - - include="--include=${packages[0]}" - - for ((i=1;i<${#packages[@]};i++)); do - include+=" --include=${packages[${i}]}" - done - - mmdebstrap \ - --skip=check/empty \ - --components=main,non-free-firmware,contrib \ - --mode=root \ - --format=directory \ - ${include} \ - "${VERSION_CODENAME}" \ - /mnt -fi - -if [[ "${1}" == '--network-interfaces' ]]; then - networkInterface=($(ip -br addr show | sed 's| .*$||g' | grep -v '^lo' | grep -v 'tailscale' | grep -v '^wg')) - shopt -s extglob - - for ((i = 0; i < ${#networkInterface[@]}; i++)); do - cat << EOF | tee /mnt/etc/network/interfaces.d/${networkInterface[$i]} &> /dev/null -allow-hotplug ${networkInterface[$i]} -iface ${networkInterface[$i]} inet dhcp -EOF - done -fi - -if [[ "${1}" == '--sources' ]]; then - cat << EOF | tee /mnt/etc/apt/sources.list.d/${VERSION_CODENAME}.sources &> /dev/null -# ${VERSION_CODENAME^} -Enabled: yes -Types: deb deb-src -URIs: http://deb.debian.org/debian/ -Suites: ${VERSION_CODENAME} -Components: main non-free-firmware contrib -Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg - -# ${VERSION_CODENAME^} Security -Enabled: yes -Types: deb deb-src -URIs: http://deb.debian.org/debian-security/ -Suites: ${VERSION_CODENAME}-security -Components: main non-free-firmware contrib -Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg - -# ${VERSION_CODENAME^} Updates -Enabled: yes -Types: deb deb-src -URIs: http://deb.debian.org/debian/ -Suites: ${VERSION_CODENAME}-updates -Components: main non-free-firmware contrib -Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg -EOF - - rm /mnt/etc/apt/sources.list -fi - -if [[ "${1}" == '--dpkg-reconfigure' ]]; then - cat << EOF - -Regardless of the language(s) you choose, be sure to enable 'en_US.UTF-8'! -Press any key to continue... -EOF - - read -srn 1 - - dpkg-reconfigure \ - locales \ - tzdata \ - keyboard-configuration \ - console-setup -fi - -if [[ "${1}" == '--purge-os-prober' ]]; then - apt \ - purge \ - --yes \ - os-prober -fi - -if [[ "${1}" == '--network-manager' ]]; then - cp \ - /etc/NetworkManager/NetworkManager.conf \ - /etc/NetworkManager/NetworkManager.conf.orig - - cat \ - /etc/NetworkManager/NetworkManager.conf.orig | \ - sed 's|managed=false|managed=true|' | \ - tee /etc/NetworkManager/NetworkManager.conf &> /dev/null -fi - -if [[ "${1}" == '--contrib' ]]; then - cat << EOF | tee --append /etc/apt/sources.list.d/${VERSION_CODENAME}.sources &> /dev/null - -# ${VERSION_CODENAME^} Backports -Enabled: yes -Types: deb deb-src -URIs: http://deb.debian.org/debian/ -Suites: ${VERSION_CODENAME}-backports -Components: main non-free-firmware contrib -Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg -EOF - - cat << EOF | tee /etc/apt/preferences.d/backports.pref &> /dev/null -Package: * -Pin: release n=${VERSION_CODENAME}* -Pin-Priority: 990 - -Package: linux-* -Pin: release n=${VERSION_CODENAME}-backports -Pin-Priority: -1 -EOF - - if [[ "${VERSION_CODENAME}" == 'bookworm' ]]; then - cat << EOF | tee --append /etc/apt/preferences.d/backports.pref &> /dev/null - -Package: /wayland/ -Pin: release n=${VERSION_CODENAME}-backports -Pin-Priority: -1 -EOF - fi -fi - -if [[ "${1}" == '--tasksel' ]]; then - if [[ ! -f /usr/bin/tasksel ]]; then - apt \ - --update \ - install \ - --yes \ - tasksel - fi - - tasksel \ - --new-install -fi - -if [[ "${1}" == '--initramfs' ]]; then - printf \ - "UMASK=0077\n" | \ - tee /etc/initramfs-tools/conf.d/umask.conf &> /dev/null - - update-initramfs \ - -c \ - -k all -fi - -if [[ "${1}" == '--logrotate' ]]; then - for file in /etc/logrotate.d/* ; do - if grep -Eq "(^|[^#y])compress" "$file" ; then - sed -i -r "s/(^|[^#y])(compress)/\1#\2/" "$file" - fi - done -fi - -if [[ "${1}" == '--systemctl-enable' ]]; then - systemctl \ - enable \ - zfs.target - systemctl \ - enable \ - zfs-import-cache - systemctl \ - enable \ - zfs-mount - systemctl \ - enable \ - zfs-import.target -fi