Skip to content

Instantly share code, notes, and snippets.

@douglasdeoliveira
Last active June 19, 2020 00:28
Show Gist options
  • Save douglasdeoliveira/6a92d11bbf9057c8b8f2c4f4653d8cbe to your computer and use it in GitHub Desktop.
Save douglasdeoliveira/6a92d11bbf9057c8b8f2c4f4653d8cbe to your computer and use it in GitHub Desktop.
sudo apt-get update
sudo apt-get upgrade
echo '# installing [CURL]'
sudo apt install curl -y
echo '# installing [GIT]'
sudo apt install git -y
echo "What name do you want to use in GIT user.name?"
echo "For example, mine will be \"Douglas de Oliveira\""
read git_config_user_name
git config --global user.name "$git_config_user_name"
clear
echo "What email do you want to use in GIT user.email?"
echo "For example, mine will be \"oliveira.douglas@outlook.com\""
read git_config_user_email
git config --global user.email $git_config_user_email
clear
echo "Can I set VIM as your default GIT editor for you? (y/n)"
read git_core_editor_to_vim
if echo "$git_core_editor_to_vim" | grep -iq "^y" ;then
git config --global core.editor vim
else
echo "Okay, no problem. :) Let's move on!"
fi
echo "updating [.gitconfig]"
echo "
[alias]
ci = commit
co = checkout
cm = checkout master
cb = checkout -b
st = status -sb
sf = show --name-only
lg = log --pretty=format:'%Cred%h%Creset %C(bold)%cr%Creset %Cgreen<%an>%Creset %s' --max-count=30
incoming = !(git fetch --quiet && git log --pretty=format:'%C(yellow)%h %C(white)- %C(red)%an %C(white)- %C(cyan)%d%Creset %s %C(white)- %ar%Creset' ..@{u})
outgoing = !(git fetch --quiet && git log --pretty=format:'%C(yellow)%h %C(white)- %C(red)%an %C(white)- %C(cyan)%d%Creset %s %C(white)- %ar%Creset' @{u}..)
unstage = reset HEAD --
undo = checkout --
rollback = reset --soft HEAD~1
dismiss = reset HEAD --hard
sane = remote prune origin
" >> ~/.gitconfig
echo "Generating a SSH Key"
ssh-keygen -t rsa -b 4096 -C $git_config_user_email
ssh-add ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub | xclip -selection clipboard
echo 'enabling workspaces for both screens'
gsettings set org.gnome.mutter workspaces-only-on-primary false
echo "# installing [YARN]"
curl -sS 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 install --no-install-recommends yarn
echo '# installing [ZSH]'
sudo apt-get install zsh -y
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
chsh -s $(which zsh)
echo '# installing tool to handle clipboard via CLI'
sudo apt-get install xclip -y
export alias pbcopy='xclip -selection clipboard'
export alias pbpaste='xclip -selection clipboard -o'
source ~/.zshrc
echo '# installing [SPACESHIP THEME]'
sudo apt install fonts-firacode -y
git clone https://github.com/denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt"
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
sed -i 's/.*ZSH_THEME=.*/ZSH_THEME="spaceship"/g' ~/.zshrc
echo "
SPACESHIP_PROMPT_ORDER=(
user # Username section
dir # Current directory section
host # Hostname section
git # Git section (git_branch + git_status)
hg # Mercurial section (hg_branch + hg_status)
exec_time # Execution time
line_sep # Line break
vi_mode # Vi-mode indicator
jobs # Background jobs indicator
exit_code # Exit code section
char # Prompt character
)
SPACESHIP_USER_SHOW=always
SPACESHIP_PROMPT_ADD_NEWLINE=false
SPACESHIP_CHAR_SYMBOL="❯"
SPACESHIP_CHAR_SUFFIX=" "
" >> ~/.zshrc
source ~/.zshrc
echo "# installing [ZINIT PLUGINS]"
sh -c "$(curl -fsSL https://raw.githubusercontent.com/zdharma/zinit/master/doc/install.sh)"
echo "
zinit light zsh-users/zsh-autosuggestions
zinit light zdharma/fast-syntax-highlighting
zinit load zdharma/history-search-multi-word
" >> ~/.zshrc
source ~/.zshrc
clear
echo '# installing [DOCKER]'
sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get install apt-transport-https ca-certificates 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 install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
docker --version
sudo usermod -aG docker $USER
docker run hello-world
echo '# installing [DOCKER COMPOSE]'
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
echo "# creating databases with Docker"
echo "POSTGRES"
docker run --name postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d -t postgres
echo "MONGODB"
docker run --name mongodb -p 27017:27017 -d -t mongo
echo "REDIS"
docker run --name redisalpine -p 6379:6379 -d -t redis:alpine
clear
echo '# installing [VIM]'
sudo apt install vim -y
echo '# installing [NVM]'
sh -c "$(curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash)"
export NVM_DIR="$HOME/.nvm" && (
git clone https://github.com/creationix/nvm.git "$NVM_DIR"
cd "$NVM_DIR"
git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" $(git rev-list --tags --max-count=1)`
) && \. "$NVM_DIR/nvm.sh"
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
source ~/.zshrc
echo '# installing [NODEJS 12]'
nvm --version
nvm install 12
nvm alias default 12
node --version
npm --version
echo '# installing [JAVA JDK-8]'
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
sudo apt-get install gcc-multilib lib32z1 lib32stdc++6
clear
echo '# installing [VS CODE]'
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
sudo apt-get install apt-transport-https -y
sudo apt-get update
sudo apt-get install code -y # or code-insiders
echo '# installing [VS CODE - extensions]'
code --install-extension shan.code-settings-sync
echo '# installing [OPERA]'
wget -qO- https://deb.opera.com/archive.key | sudo apt-key add -
sudo add-apt-repository "deb [arch=i386,amd64] https://deb.opera.com/opera-stable/ stable non-free"
sudo apt install opera-stable
echo '# installing [CHROME]'
sudo apt install gdebi-core
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo gdebi google-chrome-stable_current_amd64.deb
echo '# installing [BRAVE]'
curl -s https://brave-browser-apt-release.s3.brave.com/brave-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-release.gpg add -
source /etc/os-release
echo "deb [arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main" | sudo tee /etc/apt/sources.list.d/brave-browser-release.list
sudo apt update
sudo apt install brave-browser
echo '# installing [SLACK]'
sudo snap install slack --classic
echo '# installing [DISCORD]'
sudo snap install discord --classic
echo '# installing [SKYPE]'
sudo snap install skype --classic
echo '# installing [TEAMVIEWER]'
wget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb
sudo apt install -y ./teamviewer_amd64.deb
echo '# installing [DBEAVER]'
sudo snap install dbeaver-ce
echo '# installing [SPOTIFY]'
sudo snap install spotify
echo '# installing [INSOMNIA]'
sudo snap install insomnia
echo '# installing [MAILSPRING]'
sudo snap install mailspring
echo '# installing [VLC]'
sudo snap install vlc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment