Skip to content

Instantly share code, notes, and snippets.

@andrey-zh
Last active April 13, 2022 13:05
Show Gist options
  • Save andrey-zh/d11f99db2c1a62b0fd672da350ae90c2 to your computer and use it in GitHub Desktop.
Save andrey-zh/d11f99db2c1a62b0fd672da350ae90c2 to your computer and use it in GitHub Desktop.
terminal setup
#!/bin/bash
##### install updates #####
sudo apt-get update
sudo apt-get install build-essential -y
##### install zsh #####
sudo apt-get install zsh -y
sudo apt-get install -y util-linux -y
chsh -s $(which zsh)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
##### install brew #####
NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
##### install vim plugins #####
curl -sS https://webinstall.dev/nerdfont | bash
export PATH="/home/cloud_user/.local/bin:$PATH"
curl -sS https://webinstall.dev/vim-nerdtree | bash
export PATH="/home/cloud_user/.local/bin:$PATH"
curl -sS https://webinstall.dev/myip | bash
export PATH="/home/cloud_user/.local/bin:$PATH"
curl -sS https://webinstall.dev/vim-prettier | bash
curl -sS https://webinstall.dev/vim-ale | bash
curl -sS https://webinstall.dev/vim-lastplace | bash
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> $HOME/.bash_profile
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> $HOME/.zshrc
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
sleep 5
brew install coreutils
##### add syntax highlighting #####
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
##### change hostname #####
sudo hostname acloudguru
##### install aws cli #####
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
echo "autoload bashcompinit && bashcompinit
autoload -Uz compinit && compinit" >> ~/.zshrc
echo "complete -C '/usr/local/bin/aws_completer' aws" >> ~/.zshrc
brew tap hashicorp/tap
brew install hashicorp/tap/terraform
terraform -install-autocomplete
brew tap hashicorp/tap
brew install hashicorp/tap/vault
vault -autocomplete-install
brew tap hashicorp/tap
brew install hashicorp/tap/packer
packer -autocomplete-install
sudo apt-get install apt-transport-https ca-certificates gnupg -y
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
brew install kubectl
znap fpath _kubectl 'kubectl completion zsh'
znap restart
brew install lsd
############################################
############################################
##### install znap #####
git clone --depth 1 -- https://github.com/marlonrichert/zsh-snap.git
source zsh-snap/install.zsh
##### example of config (add to zsrc file #####
# Download Znap, if it's not there yet.
[[ -f ~/Git/zsh-snap/znap.zsh ]] ||
git clone --depth 1 -- \
https://github.com/marlonrichert/zsh-snap.git ~/Git/zsh-snap
source ~/Git/zsh-snap/znap.zsh # Start Znap
# `znap prompt` makes your prompt visible in just 15-40ms!
znap prompt sindresorhus/pure
# `znap source` automatically downloads and starts your plugins.
znap source marlonrichert/zsh-autocomplete
znap source zsh-users/zsh-autosuggestions
znap source zsh-users/zsh-syntax-highlighting
# `znap eval` caches and runs any kind of command output for you.
znap eval iterm2 'curl -fsSL https://iterm2.com/shell_integration/zsh'
# `znap function` lets you lazy-load features you don't always need.
znap function _pyenv pyenvn 'eval "$( pyenv init - --no-rehash )"'
compctl -K _pyenv pyenv
############################################
############################################
#### vagrant
brew install vagrant
### download and intall vmaware plugin
wget https://releases.hashicorp.com/vagrant-vmware-utility/1.0.21/vagrant-vmware-utility_1.0.21_x86_64.dmg
## run vmware plugin
vagrant plugin install vagrant-vmware-desktop
vagrant autocomplete install --bash --zsh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment