This script installs some stuff I pretty much always need. It can be invoked with -d for desktop configuration in Ubuntu as well as -t for adding documentation and text utilities I use often.
Oh and it will also install zsh as your default shell including oh-my-zsh and the ’afowler’ theme.
Can easily be adapted to anything really.
# First update the system
sudo apt -y update
sudo apt -y upgrade
# General tools that is good to have for all systems
sudo apt -y install build-essential emacs git htop atop tmux byobu \
zsh borgbackup wget curl nmap net-tools traceroute mtr mosh \
irssi mc mg vim rsync rclone
# Oh my zsh
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# Set the good theme
sed -i 's/robbyrussell/afowler/' ~/.zshrc
while getopts hdm arg; do
case "${arg}" in
h)
echo "Usage: install [options]"
echo
echo "-d Install standard desktop tools needed."
echo "-t Text, documentation and LaTeX tools"
;;
d)
# Only if we have a desktop, othrwise skip
sudo apt -y install dconf-editor gnome-tweaks gparted flameshot
gsettings set org.gnome.shell.extensions.dash-to-dock extend-height false
gsettings set org.gnome.shell.extensions.dash-to-dock dock-position BOTTOM
;;
t)
# Multimedia stuff (with desktop)
sudo apt -y install gimp vlc inkscape texlive-all texstudio calibre sigil
;;
*)
echo "Unknown uptions, use -h for more information."
;;
esac
done