illescasDaniel / must_have_linux.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
#! /bin/sh |
echo » -> Running apt update and upgrade « |
apt update |
apt -y upgrade |
# Basic |
echo » -> Installing basic stuff « |
apt install -y curl # Curl |
apt install -y wget # Wget |
# Ruby (for gems) |
echo » -> Installing ruby and colorls « |
apt install -y ruby ruby-dev ruby-colorize |
gem install colorls # Colorls |
# Flatpack (should not be run as sudo) |
echo » -> Installing flatpak « |
apt install -y flatpak |
flatpak remote-add —if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo |
echo » -> Installing flatpak packages « |
echo » -> Installing Spotify « |
flatpak install flathub com.spotify.Client # Spotify |
echo » -> Installing GIMP « |
flatpak install flathub org.gimp.GIMP # GIMP |
echo » -> Installing Steam « |
# flatpak install flathub com.valvesoftware.Steam # Steam |
echo » -> Installing OBS « |
flatpak install flathub com.obsproject.Studio # OBS |
echo » -> Installing Telegram « |
flatpak install flathub org.telegram.desktop # Telegram |
echo » -> Installing Minecraft « |
flatpak install flathub com.mojang.Minecraft # Minecraft |
echo » -> Installing InteliJ IDEA « |
flatpak install flathub com.jetbrains.IntelliJ-IDEA-Ultimate # IntelliJ IDEA |
echo » -> Installing WebStorm « |
flatpak install flathub com.jetbrains.WebStorm # WebStorm |
echo » -> Installing Handbrake « |
flatpak install flathub fr.handbrake.ghb |
echo » -> Installing Kdenlive « |
flatpak install flathub org.kde.kdenlive |
echo » -> Installing Flatseal « |
flatpak install flathub com.github.tchx84.Flatseal |
# multiple flatpak |
flatpak install flathub com.spotify.Client org.gimp.GIMP com.obsproject.Studio com.mojang.Minecraft com.jetbrains.IntelliJ-IDEA-Ultimate com.jetbrains.WebStorm fr.handbrake.ghb org.kde.kdenlive |
# VS Code |
echo » -> Installing VSCode « |
apt install software-properties-common apt-transport-https -y |
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add — |
add-apt-repository » deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main « |
apt install -y code |
# extensions |
echo » -> Installing VSCode extensions « |
code —install-extension ritwickdey.liveserver # Live server |
code —install-extension tabnine.tabnine-vscode # Tab nine |
code —install-extension formulahendry.code-runner # Code Runner |
code —install-extension esbenp.prettier-vscode # Prettier |
code —install-extension laurenttreguier.vscode-simple-icons # Simple icons |
# user settings — disable telemetry |
echo » -> Configuring VSCode settings « |
printf ‘ \n ‘ > ~ /.config/Code/User/settings.json |
# Mono develop |
echo » -> Installing Mono develop « |
apt install apt-transport-https dirmngr |
apt-key adv —keyserver hkp://keyserver.ubuntu.com:80 —recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF |
echo » deb https://download.mono-project.com/repo/debian vs-buster main » | sudo tee /etc/apt/sources.list.d/mono-official-vs.list |
apt update |
apt install -y monodevelop |
# Apt packages |
echo » Installing apt packages « |
echo » -> Installing Gpaste « |
apt install -y gpaste # Gpaste |
echo » -> Installing micro « |
apt install -y micro # Micro |
echo » -> Installing htop « |
apt install -y htop # Htop |
echo » -> Installing neofetch « |
apt install -y neofetch # Neofetch |
# echo «-> Installing nemo-previo» |
# apt install -y nemo-preview # Nemo-preview ~ like macOS Quick Look |
echo » -> Installing Gnome sushi » # similar to macOS quick look |
apt install -y gnome-sushi |
echo » -> Installing ranger « |
apt install -y ranger caca-utils highlight atool w3m poppler-utils mediainfo # ranger |
echo » -> Adding exFat support « |
apt install -y exfat-fuse exfat-utils # exFat support |
# echo «-> Installing tree» |
# apt install -y tree # Tree [not really necessary if you have ‘gio tree’] |
echo » -> Installing Bleachbit « |
apt install -y bleachbit # Bleachbit |
echo » -> Installing kvantum « |
apt install -y qt5-style-kvantum qt5-style-kvantum-themes # Themes for Qt apps |
echo » -> Installing backintime « |
add-apt-repository ppa:bit-team/stable |
apt update |
apt install -y backintime-qt4 # backintime |
echo » -> Installing Timeshift « |
apt-add-repository -y ppa:teejee2008/ppa |
apt update |
apt install -y timeshift # timeshift |
echo » -> Installing Gnome boxes « |
apt install -y gnome-boxes # Gnome boxes |
echo » -> Installing bat « |
apt install -y bat # bat, for batcat |
echo » -> Installing uget « |
apt install -y uget aria2 |
echo » -> Installing gitg « |
apt install -y gitg |
echo » -> Installing genisoimage « |
apt install -y genisoimage |
echo » -> Installing gparted « |
apt install -y gparted |
# U-get integrator |
add-apt-repository ppa:uget-team/ppa |
apt update |
apt install -y uget-integrator |
# NodeJS |
echo » -> Installing NodeJS « |
curl -sL https://deb.nodesource.com/setup_lts.x | sudo -E bash — |
apt install -y nodejs |
# node packages |
npm install -g tldr |
# Cargo (rust package manager) |
echo » -> Installing cargo « |
apt install -y cargo |
echo » -> Installing exa « |
# (should not be run as sudo) |
cargo install exa # exa — similar to «ls» |
# Alacritty |
echo » -> Installing and configuring alacritty « |
add-apt-repository -y ppa:mmstick76/alacritty |
apt install -y alacritty |
mkdir —parents ~ /.config/alacritty |
wget https://github.com/alacritty/alacritty/releases/download/v0.4.3/alacritty.yml -O ~ /.config/alacritty/alacritty.yml |
# enpass |
echo » -> Installing Enpass « |
echo » deb https://apt.enpass.io/ stable main » > /etc/apt/sources.list.d/enpass.list |
wget -O — https://apt.enpass.io/keys/enpass-linux.key | apt-key add — |
apt install -y enpass |
# gamemode |
# https://github.com/FeralInteractive/gamemode |
# multiple apt |
apt install -y genisoimage gitg uget aria2 bat gnome-boxes qt5-style-kvantum qt5-style-kvantum-themes cargo exfat-fuse exfat-utils bleachbit ranger caca-utils highlight atool w3m poppler-utils mediainfo gnome-sushi neofetch htop micro |
# Zsh |
echo » Installing zsh « |
apt install -y zsh # zsh |
sh -c » $( curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh ) » » » —unattended # oh my zsh |
# plugins |
git clone —depth=1 https://github.com/romkatv/powerlevel10k.git $ /themes/powerlevel10k |
zsh —login |
git clone https://github.com/zsh-users/zsh-autosuggestions.git $ZSH_CUSTOM /plugins/zsh-autosuggestions |
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM /plugins/zsh-syntax-highlighting |
# applies powerlevel10k theme |
sed -i ‘ s/ZSH_THEME=»robbyrussell»/ZSH_THEME=»powerlevel10k\/powerlevel10k»/g ‘ ~ /.zshrc |
# applies other plugins |
sed -i ‘ s/plugins=(git)/plugins=(git zsh-autosuggestions zsh-syntax-highlighting)/g ‘ ~ /.zshrc |
chsh -s $( which zsh ) # Set zsh as default shell |
# Cleanup |
echo » Cleaning up « |
apt autoclean -y |
apt autoremove -y |
apt autopurge -y |
# Enable TRIM |
echo » Enabling TRIM « |
systemctl enable fstrim.timer |
# Restart computer |
echo » -> Restarting computer! « |
systemctl reboot |