Created
April 7, 2019 00:29
-
-
Save ryanmaclean/60b5da8bf887d7aa3854138b2d90bede to your computer and use it in GitHub Desktop.
ubuntu_18_install.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
# Docker | |
sudo apt-get install -y \ | |
apt-transport-https \ | |
ca-certificates \ | |
curl \ | |
gnupg-agent \ | |
software-properties-common | |
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - | |
sudo add-apt-repository \ | |
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \ | |
$(lsb_release -cs) \ | |
stable" | |
sudo apt-get update | |
sudo apt-get install -y docker-ce docker-ce-cli containerd.io | |
sudo usermod -aG docker $(whoami) | |
# QOL fixes for apt in zsh | |
alias saiy="sudo apt install -y " | |
echo 'alias saiy="sudo apt install -y "' >> ~/.zshrc | |
alias sary="sudo apt remove -y " | |
echo 'alias sary="sudo apt remove -y "' >> ~/.zshrc | |
# Vim | |
saiy neovim | |
mkdir -p ~/.config/nvim/ | |
touch ~/.config/nvim/init.vim | |
cat ~/.config/nvim/init.vim << EOF | |
set runtimepath^=~/.vim runtimepath+=~/.vim/after | |
let &packpath = &runtimepath | |
source ~/.vimrc | |
EOF | |
echo "Plug 'https://github.com/junegunn/vim-github-dashboard.git'" >> ~/.config/nvim/init.vim | |
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \ | |
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim | |
# Build tools | |
saiy make python-pip | |
pip install virtualenv | |
# Shell Tools | |
saiy {h,if,io,a,c,dns,ha,log,power}top #having fun, missing gtop, ntop | |
saiy gftp-text irssi jmeter exa mpd nmon | |
# tmux | |
saiy tmux | |
echo 'if [ "$TMUX" = "" ]; then tmux; fi' >> ~/.zshrc | |
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm | |
cat << EOF >> ~/.tmux.conf | |
set -g @plugin 'tmux-plugins/tpm' | |
set -g @plugin 'tmux-plugins/tmux-sensible' | |
set -g @plugin 'pwittchen/tmux-plugin-spotify' | |
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) | |
run -b '~/.tmux/plugins/tpm/tpm' | |
EOF | |
pip install lyricwikia | |
pip install spotify-cli-linux | |
# Remote access | |
saiy guacamole openssh libguac-client-rdp0 libguac-client-ssh0 libguac-client-vnc0 | |
# Network Tools | |
saiy ntopng dnsutils | |
# Backup windowing environment, because shit happens | |
saiy lx{de,panel,dm,session,randr,terminal,task,shortcut} thunar | |
# Python | |
saiy virtualenv | |
# Go | |
saiy golang | |
# Ambassador | |
token="" | |
kubernaut config backend create --url="https://next.kubernaut.io" --name="v2" --activate $token | |
venv/bin/kubernaut claims describe kat-string | |
# There are several ways you can use this kubeconfig file: | |
# 1. Pass --kubeconfig to the `kubectl` command: | |
kubectl --kubeconfig=/home/string/.kube/kat-string.yaml | |
# 2. Set the KUBECONFIG environment variable: | |
# Kubernetes | |
sudo apt-get update && sudo apt-get install -y apt-transport-https | |
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - | |
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list | |
sudo apt-get update | |
sudo apt-get install -y kubectl | |
# Shell Environment | |
saiy zsh zplug zsh-theme-powerlevel9k ddgr zsh-syntax-highlighting tmux mc | |
# Jenkins | |
docker run -p 8080:8080 -p 50000:50000 -v $PWD/jenkins:var/jenkins_home jenkins/jenkins:lts | |
# Homebrew | |
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)" | |
echo 'eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)' >>~/.zshrc | |
. ~/.zshrc | |
git -C "$(brew --repo homebrew/core)" fetch --unshallow | |
brew install vagrant virtualbox | |
# Node | |
curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh | |
sudo nodesource_setup.sh | |
saiy nodejs | |
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - | |
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list | |
sudo apt update | |
saiy yarn gcc g++ make | |
sudo apt autoremove | |
# Rust | |
curl https://sh.rustup.rs -sSf | sh | |
echo "source $HOME/.cargo/env" >> ~/.zshrc | |
cargo install kubectx click | |
# Clion Profiling | |
saiy linux-tools-$(uname -r) | |
sudo sh -c 'echo 1 >/proc/sys/kernel/perf_event_paranoid' | |
sudo sh -c 'echo kernel.perf_event_paranoid=1 > /etc/sysctl.d/local.conf' | |
# Keyboard changes | |
# set caps lock to an extra ctrl | |
echo gsettings set org.gnome.desktop.input-sources xkb-options \"['ctrl:nocaps']\" >> ~/.profile | |
# Audio | |
sudo add-apt-repository ppa:starws-box/deadbeef-player -y | |
saiy deadbeef | |
snap install spotify | |
# Ops stuff | |
brew install terraform ansible awscli azure-cli graphviz | |
brew unlink terraform | |
brew install tfenv | |
brew tap wata727/tflint | |
brew install tflint | |
git clone [email protected]:hashicorp/tfe-cli.git | |
cd tfe-cli/bin | |
echo "export PATH=$PWD:\$PATH" >> ~/.zshrc | |
# Sysdig | |
sudo docker run -i -t --name sysdig --privileged -v /var/run/docker.sock:/host/var/run/docker.sock -v /dev:/host/dev -v /proc:/host/proc:ro sysdig/sysdig | |
# Stern | |
brew install stern | |
# BAsh It | |
git clone --depth=1 https://github.com/Bash-it/bash-it.git ~/.bash_it | |
~/.bash_it/install.sh --silent | |
# Rider Pre-reqs | |
wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb | |
sudo dpkg -i packages-microsoft-prod.deb | |
sudo add-apt-repository universe | |
sudo apt-get install apt-transport-https | |
sudo apt-get update | |
saiy dotnet-sdk-2.2 gnupg ca-certificates | |
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF | |
echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list | |
sudo apt update | |
saiy mono-devel mono-complete | |
# Gnome Shell tools | |
saiy gnome-shell-extension-caffeine gnome-shell-extension-show-ip gnome-shell-extension-mediaplayer gnome-shell-pomodoro | |
# Install Fish Shell - we use brew in order to install v3 | |
brew install fish | |
curl -L https://get.oh-my.fish > install | |
fish install --path=~/.local/share/omf --config=~/.config/omf | |
curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish | |
sleep 5 # fiher takes a moment to install | |
fisher add evanlucas/fish-kubectl-completions | |
fisher add jethrokuan/fzf | |
# Emacs | |
brew install emacs | |
git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d | |
# Slack | |
sudo snap install slack --classic | |
# Gimp | |
sudo snap install gimp --classic | |
# Kitty Terminal | |
curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin | |
# Sublime | |
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add - | |
sudo apt-get install apt-transport-https | |
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list | |
sudo apt-get update | |
sudo apt-get install sublime-text | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment