Skip to content

Instantly share code, notes, and snippets.

@Unixware
Last active January 21, 2025 21:20
Show Gist options
  • Save Unixware/2adc506e4bca1b745afd28aaee3af40a to your computer and use it in GitHub Desktop.
Save Unixware/2adc506e4bca1b745afd28aaee3af40a to your computer and use it in GitHub Desktop.
#
# Debian minimal desktop post-install script, i3wm + apps I use
#
#
#
#
#
#if ! [ $(id -u) = 0 ]; then
# echo "This script must run with sudo, try again..."
# exit 1
# fi
clear
export inst="sudo apt install -y --no-install-recommends"
#
clear
read -p "[!] this step will install >> contrib non-free << repos!" -n1 wkey
sudo sh -c 'cat << EOF > /etc/apt/sources.list
deb http://deb.debian.org/debian bookworm contrib main non-free-firmware
deb http://deb.debian.org/debian bookworm-updates contrib main non-free-firmware
deb http://deb.debian.org/debian bookworm-backports contrib main non-free-firmware
deb http://deb.debian.org/debian-security bookworm-security contrib main non-free-firmware
EOF'
clear
echo "cleaning up unwanted fonts/apps"
sudo apt purge -y fonts-arabeyes mlterm
# if no need of extra apps for the netbooks
read -p "[?] Desktop-system install? [Y]/n " -n1 reply
reply=${reply:-Y}
if [[ $reply =~ ^[Yy]$ ]]; then
export desk=true
echo $desk
fi
##### pre-install apps
#
#
sudo apt update
sudo apt install sysvbanner
clear
########
#
#
sysvbanner "core apps"
#
sudo apt install -y xserver-xorg xorg i3 xbindkeys xsensors xbacklight xinput \
xterm dmenu xserver-xorg-input-all dbus-x11 feh fd-find scrot strace sakura \
bsdmainutils arandr lxappearance menu picom orage aptitude \
firmware-linux-nonfree intel-gpu-tools libxcb-xinerama0 intel-media-va-driver-non-free \
network-manager-gnome network-manager alttab tmux \
libnotify-bin trayer xfce4-power-manager slick-greeter dosfstools wmctrl libglib2.0-bin
echo "fonts + themes"
sudo apt install -y fonts-noto-color-emoji fonts-liberation2 \
gtk2-engines-murrine qt5-style-plugins qt5ct gnome-themes-extra \
human-icon-theme
#
echo "ufw setup"
sudo apt install -y ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
#
sudo apt install volumeicon-alsa pulseaudio-utils pavucontrol
# zram
#
echo "zRAM"
sudo apt install zram-tools
echo -e "ALGO=zstd\nPERCENT=60" | sudo tee -a /etc/default/zramswap
sudo service zramswap reload
###### END of services
sysvbanner "clean up"
sudo apt update
sudo apt -y autoremove
sysvbanner "common apps"
sudo apt install -y --no-install-recommends nfs-common numlockx git \
vim-gtk3 hexedit x86dis mc bash-completion \
fatsort secure-delete curl whois traceroute dconf-cli \
xclip nmap ncat alpine keepassxc wget ranger rename vlc orpie encfs \
libavif-bin gvfs gvfs-backends thunar thunar-archive-plugin xarchiver \
gvfs-fuse gnome-disk-utility solaar evince ntp
sysvbanner "set groups"
sudo usermod -a -G dialout,uucp,lp,disk $USER
if [ "$desk" = false ] ; then
echo "laptop stuff"
sudo apt install -y laptop-mode-tools
exit
fi
sysvbanner "DeskApps"
# lots of stuff here...
#
sudo dpkg --add-architecture i386 ; sudo apt update
echo "Apps mainly for DESKTOP!"
sudo apt install -y --no-install-recommends simple-scan pandoc rclone rsync \
mupdf mupdf-tools flrig wsjtx jtdx sshpass aria2 minicom putty gftp cups \
printer-driver-splix dconf-editor qimgv qt5-image-formats-plugins mtpaint \
libdbus-glib-1-2 lrzip lzip lzop ncompress pbzip2 pigz plzip unar unshield \
arj lbzip2 lhasa liblz4-tool p7zip zip unzip bchunk \
adb fastboot f2fs-tools android-file-transfer \
ffmpeg libgpod4 gtkpod libwacom-bin
# libmtp-common mtp-tools libmtp-runtime libmtp9
sudo apt install -y audacious tin hatari vice dosbox
echo "desktop libs for some apps"
sudo apt install -y libserialport0 libsdl2-image-2.0-0 \
libsdl2-ttf-2.0-0 libsdl2-net-2.0-0 sqlite3 parallel \
echo "desktop dev packages"
sudo apt install -y autoconf pkg-config bison cmake patchelf python3-dev pipx
echo "[enter] to fix /etc/NetworkManager/NetworkManager.conf"
read a
sudo sed -i 's/false/true/' /etc/NetworkManager/NetworkManager.conf
exit

Comments are disabled for this gist.