Skip to content

Instantly share code, notes, and snippets.

@ryanmaclean
Created April 7, 2019 00:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ryanmaclean/60b5da8bf887d7aa3854138b2d90bede to your computer and use it in GitHub Desktop.
Save ryanmaclean/60b5da8bf887d7aa3854138b2d90bede to your computer and use it in GitHub Desktop.
ubuntu_18_install.sh
# 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 git@github.com: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