Introducción

Copio el script porque me pareció la manera más fácil de subirlo. Para ejecutarlo, copiar todo el contenido y por ejemplo:

$ nano script_setup.sh
# Pegar el script y guardar
# Permisos de ejecución
$ chmod +x script_setup.sh
# Ejecutar
$ sudo bash script_setup.sh

Script

#!/bin/bash
# POSIBLEMENTE ESTO NO FUNCIONE COMO CORRESPONDE (2022)

###################################################################################################
# Author(s): Bolli
# The purpose of this script is to install and configure the programs, tools and dependencies that
# I use on a daily basis both for work and experimentation.
# Of course, it is a work in progress and constantly evolving.
# Inspired by Andrés great work
# Distro: Ubuntu 20.04 LTS (from 20210628)
# Before: elementaryOS.
#
# Dependencies: git (using git clone), curl
#
#
# TO DO:
# - Change icons & other tweaks
# - nano ~/.zshrc & change ZSH_THEME="agnoster" and fonts in Tweaks
# - filezilla, gparted, virtualbox, transmission, libreoffice
###################################################################################################

function AptInstall() {
    $INSTALL $@
    if [ $? -ne 0 ]; then
        echo "Fail installing" $@
        exit -1
    fi
}

function Setup() {
    echo "### AUTOMAGIC SCRIPT TO PREPARE MY WORK ENVIRONMENT ###"

    # Global parameters
    INSTALL="sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -q=2"
    UPDATE="sudo apt-get update -q=2"
    UPGRADE="sudo apt-get upgrade -y -q=2"
    ADDAPTREPOSITORY="sudo add-apt-repository -y"
    CLEARREPO="sudo rm -rf /var/lib/apt/lists/* && sudo apt-get clean"

    set -v  # This show every steps made.
    set -e  # This script will be stop if a error occurs.

    # Make install_logs.log file.
    exec > >(tee -a install_logs.log)
    exec 2> >(tee -a install_logs.log >&2)

# Basic installation

    # Update and upgrade all packages
    echo "### FULL UPDATE Y UPGRADE ###"
    $UPDATE
    $UPGRADE

    # Finish installing en language.
    echo "### INSTALL EN LANGUAGE ###"
    AptInstall language-pack-en language-pack-gnome-en language-pack-en-base language-pack-gnome-en-base
    AptInstall `check-language-support -l en`

    # Install es language.
    echo "### INSTALL ES LANGUAGE ###"
    AptInstall language-pack-es language-pack-gnome-es language-pack-es-base language-pack-gnome-es-base
    AptInstall `check-language-support -l es`

    # Uncomment en_US.UTF-8 UTF-8 and es_AR.UTF-8 UTF-8 from locales list.
    echo "### UNCOMMENTING en_US.UTF-8 UTF-8 && es_AR.UTF-8 UTF-8 ###"
    sudo sed -i 's|#en_US.UTF-8 UTF-8|en_US.UTF-8 UTF-8|g' /etc/locale.gen
    sudo sed -i 's|#es_AR.UTF-8 UTF-8|es_AR.UTF-8 UTF-8|g' /etc/locale.gen

    # Generate locales.
    echo "### GENERATING LOCALES ###"
    sudo locale-gen

    # Install Ubuntu restricted extras.
    echo "### INSTALL RESTRICTED EXTRAS ###"
    AptInstall ubuntu-restricted-extras

    # Imrpove battery performance
    echo "### INSTALL TLP & POWERTOP ###"
    AptInstall tlp powertop

    # 7Zip
    echo "### INSTALL 7ZIP ###"
    AptInstall p7zip-full p7zip-rar

# Initial customizations

    # Pantheon tweaks
    echo "### INSTALL ELEMENTARY TWEAKS ###"
    AptInstall software-properties-common
    $ADDAPTREPOSITORY ppa:philip.scott/elementary-tweaks
    AptInstall elementary-tweaks

    # Change Hotkey launcher (elementary)
    echo "### CHANGE HOTKEY / SHORTCUT LAUNCHER ###"
    gsettings set org.gnome.mutter overlay-key "'Super_L'"
    gsettings set org.pantheon.desktop.gala.behavior overlay-action "'wingpanel --toggle-indicator=app-launcher'"

    # [Papirus Icons](https://github.com/PapirusDevelopmentTeam/papirus-icon-theme)
    echo "### INSTALL PAPIRUS ICONS ###"
    $ADDAPTREPOSITORY ppa:papirus/papirus
    $UPDATE
    AptInstall papirus-icon-theme

# Basic apps

    # Synapse Launcher
    echo "### INSTALL SYNAPSE LAUNCHER ###"
    AptInstall synapse

    # Install Flameshot.
    echo "### INSTALL FLAMESHOT ###"
    AptInstall flameshot

    # [Peek](https://github.com/phw/peek)
    echo "### INSTALL PEEK ###"
    AptInstall software-properties-common
    $ADDAPTREPOSITORY ppa:peek-developers/stable
    AptInstall peek

    # [OBS Studio](https://obsproject.com/)
    echo "### INSTALL OBS ###"
    AptInstall ffmpeg software-properties-common
    $ADDAPTREPOSITORY ppa:obsproject/obs-studio
    AptInstall obs-studio

# Browsers

    # Brave
    echo "### INSTALL BRAVE BROWSER ###"
    AptInstall apt-transport-https  curl gnupg
    sudo curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg
    echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main"|sudo tee /etc/apt/sources.list.d/brave-browser-release.list
    $UPDATE
    AptInstall brave-browser

    ### Firefox
    echo "### INSTALL FIREFOX ###"
    AptInstall firefox

# Programming tools

    # [git](https://git-scm.com/)
    echo "### INSTALL & CONFIG GIT ###"
    AptInstall git
    git config --global user.name "diegobollini"
    git config --global user.email "[email protected]"
    git config --global color.ui true
    git config --global --list

    # [zsh](https://medium.com/@ilovepixelart/elementary-os-5-0-juno-oh-my-zsh-16a0cf0284b1)
    echo "### INSTALL ZSH TERMINAL ###"
    AptInstall zsh
    sudo usermod -s /usr/bin/zsh $(whoami)
    sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
    AptInstall powerline fonts-powerline zsh-theme-powerlevel9k zsh-syntax-highlighting
    echo "source /usr/share/powerlevel9k/powerlevel9k.zsh-theme" >> ~/.zshrc
    echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ~/.zshrc
    git clone https://github.com/powerline/fonts.git
    cd fonts
    ./install.sh
    cd ..
    rm -rf fonts

    # Install Visual Studio Code.
    echo "### INSTALL VISUAL STUDIO CODE"
    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
    sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
    sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
    AptInstall apt-transport-https -y
    $UPDATE
    AptInstall code -y

    # docker y docker compose
    echo "### INSTALL DOCKER Y DOCKER-COMPOSE ###"
    sudo apt-get remove docker docker-engine docker.io containerd runc -y
    AptInstall apt-transport-https ca-certificates curl gnupg lsb-release
    sudo echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu bionic stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
    AptInstall docker-ce docker-ce-cli containerd.io

# Sound & Video

    # Spotify
    echo "### INSTALL SPOTIFY ###"
    curl -sS https://download.spotify.com/debian/pubkey_0D811D58.gpg | sudo apt-key add -
    echo "deb http://repository.spotify.com stable non-free" | sudo tee /etc/apt/sources.list.d/spotify.list
    $UPDATE
    AptInstall spotify-client

# Remote access and communication

    # Slack
    echo "### INSTALL SLACK ###"
    wget https://downloads.slack-edge.com/linux_releases/slack-desktop-4.14.0-amd64.deb
    AptInstall ./slack-desktop-4.14.0-amd64.deb

    # Teamviewer
    echo "### INSTALL TEAMVIEWER ###"
    wget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb
    AptInstall ./teamviewer_amd64.deb

    # Anydesk
    echo "### INSTALL ANYDESK ###"
    wget -qO - https://keys.anydesk.com/repos/DEB-GPG-KEY | apt-key add -
    echo "deb http://deb.anydesk.com/ all main" > /etc/apt/sources.list.d/anydesk-stable.list
    $UPDATE
    AptInstall anydesk

    # Telegram
    echo "### INSTALL TELEGRAM ###"
    $ADDAPTREPOSITORY ppa:atareao/telegram
    AptInstall telegram

    # Discord
    echo "### INSTALL DISCORD ###"
    wget -O discord.deb "https://discordapp.com/api/download?platform=linux&format=deb"
    AptInstall ./discord-0.0.13.deb

    #Clean
    sudo apt autoremove -y -q=2

    # Listo
    echo "\nAll done!\n"
    sleep 2
    exit 0
}

Setup