Programster's Blog

Tutorials focusing on Linux, programming, and open-source

Xubuntu 22.04 Setup Desktop Script

Below is the script I execute after having performed a fresh installation of Xubuntu Desktop 20.04.


# Update the system
sudo apt update && sudo apt dist-upgrade -y

# Remove nano and parole (installing vim and vlc/mpv later)
sudo apt-get remove nano parole -y

sudo apt install -y \
  byobu vim curl htop nmap nload pydf ncdu sysstat sshfs p7zip expect tcl-expect \
  xclip nfs-common openjdk-19-jdk psensor openvpn engrampa xscreensaver-gl \
  aria2 axel \
  git rabbitvcs-cli \
  php8.1-cli php8.1-curl php8.1-xml php8.1-mysql php8.1-yaml composer \
  postgresql-client-common postgresql-client-14 mariadb-client-core-10.6 \
  clamav clamav-daemon \
  typecatcher fonts-firacode \
  caja nemo mate-calc terminator gedit figlet gparted \
  cheese filezilla seafile-gui chromium-browser virt-manager \
  simplescreenrecorder ksnip gimp ristretto inkscape \
  mplayer ffmpeg mpv vlc mediainfo kazam \
  system-config-printer hplip hplip-gui simple-scan

# Install shutter
#sudo add-apt-repository ppa:linuxuprising/shutter -y
#sudo apt update
#sudo apt install shutter -y

# Install papirus icon theme
sudo add-apt-repository ppa:papirus/papirus -y \
  && sudo apt update  \
  && sudo apt install papirus-icon-theme -y

# Install sublime 3 PPA
sudo curl -fsSL | sudo gpg --dearmor -o /usr/share/keyrings/sublime.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/sublime.gpg] apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt update
sudo apt install sublime-text -y

# Install discord. There is a snap, but that will have issues with uploading images.
sudo apt update \
  && sudo apt install -y gdebi-core wget \
  && wget -O ~/discord.deb "" \
  && sudo gdebi ~/discord.deb -y

# Install diagramming tool.
sudo snap install drawio

# Install prog-exec
chmod +x prog-exec
sudo mv -i prog-exec /bin/.

# Install node
curl -sL | sudo -E bash - \
  && sudo apt-get install -y nodejs -y

# Install Less through Node
sudo npm install -g less

# Install Sass
sudo apt update &&
  sudo apt install build-essential && \
  sudo apt install -y ruby-full rubygems && \
  sudo gem install sass

# Install libreoffice from PPA
sudo add-apt-repository ppa:libreoffice/ppa -y \
  && sudo apt update \
  && sudo apt install libreoffice -y

# Install prog-exec
chmod +x prog-exec
sudo mv prog-exec /bin/.

# Install spotify through deb package, because snaps suck
KEY_URL="" \
  && curl -sS $KEY_URL | sudo apt-key add - \
  && echo "deb stable non-free" \
  | sudo tee /etc/apt/sources.list.d/spotify.list \
  && sudo apt update \
  && sudo apt install spotify-client -y

# install chromium browser through snaps (annoying)
sudo snap install chromium -y

# install terraform from PPA
curl -fsSL | sudo apt-key add - \
  && sudo apt-add-repository "deb [arch=amd64] $(lsb_release -cs) main" \
  && sudo apt-get update && sudo apt-get install terraform -y

# Add steps to install docker
# here

# Add step to set nemo as default
# file browser

# @TODO - Set keyboard shortcuts
# -  super-q -  terminator
# - super - e  thunar
# - shutter shortcuts
Last updated: 12th August 2023
First published: 26th February 2023