#!/usr/bin/env bash # Performs a full bootstrap of Ubuntu, running all of the other scripts # in this directory. # Usage: # source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/bootstrap) # Check if we're running on Ubuntu source /etc/os-release if [[ "$ID" != "ubuntu" ]] then echo "Not running on Ubuntu, exiting." exit 1 fi # Create an ssh key source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/generic/create-ssh-key) # Essential source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/install-essential-packages) # Dev packages read -p "Install development tools? " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]] then # Create directories source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/generic/create-directories) # Install dev packages source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/install-dev-packages) read -p "Install JetBrains tools? " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]] then source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/generic/install-jetbrains-tools) fi # Authenticate to GitHub source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/generic/github-auth-login) fi # Desktop packages read -p "Install desktop apps? " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]] then source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/install-desktop-packages) fi # Install media CLI tools read -p "Install media CLI tools? " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]] then source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/install-media-cli-tools) fi # Bluray and DVD libs read -p "Install Bluray and DVD apps? " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]] then source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/install-optical-disc-packages) read -p "Install makemkv? " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]] then source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/ubuntu/install-makemkv) fi fi # Add user to groups source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/generic/add-user-to-groups) # Zsh customizations source <(curl -fsSL https://raw.githubusercontent.com/mapitman/linux-bootstrap/main/generic/install-zsh-customizations)