Last active
May 18, 2024 21:32
-
-
Save rotemreiss/1cb818a66c0943542a62076af1d044d4 to your computer and use it in GitHub Desktop.
Shell script to setup all the basic development tools on fresh Ubuntu 18.04.
This file contains hidden or 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
#!/bin/sh | |
# @todo Automate the manual steps at the bottom | |
# Make it work (broken on Ubuntu 18.04) | |
#if [[ $EUID -ne 0 ]]; | |
#then | |
# exec sudo /bin/bash "$0" "$@" | |
#fi | |
echo "Update Linux" | |
apt-get -qq update | |
echo "Install the very basics.." | |
apt -qq -y install vim curl wget jq python3-pip gnome-tweak-tool | |
echo "Install AV" | |
apt -qq -y install clamtk | |
echo "Install Git" | |
apt -qq -y install git-core | |
git config --global core.eol lf | |
git config --global core.autocrlf input | |
echo "Install 7zip" | |
apt -qq -y install p7zip-full | |
echo "Install JAVA" | |
apt -qq -y install default-jre | |
apt -qq -y install default-jdk | |
echo "Install MySQL Workbench" | |
apt -qq -y install mysql-workbench | |
echo "Install nodejs and npm" | |
apt -qq -y install nodejs npm | |
echo "Install tldr (`man` on steroids)" | |
npm install -g tldr | |
echo "Install Filezilla" | |
apt -qq -y install filezilla | |
# @see https://github.com/emre/storm | |
echo "Install Storm SSH" | |
pip3 install -y stormssh | |
# Broken.. Should be fixed. | |
#cd /opt | |
#git clone https://github.com/hexvalid/Linux-CapsLock-Delay-Fixer.git capslockfixer | |
#bash -ic "sh ./capslockfixer/bootstrap.sh" | |
echo "Create our web directory /var/www/html" | |
mkdir -p /var/www/html | |
chmod 774 /var/www/html | |
cd /tmp | |
echo "Installing Chrome" | |
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - | |
echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' | sudo tee /etc/apt/sources.list.d/google-chrome.list | |
apt update | |
apt -qq -y install google-chrome-stable | |
echo "Installing Docker" | |
curl -fsSL https://get.docker.com -o get-docker.sh | |
sh get-docker.sh | |
echo "Installing Lando (latest)" | |
wget -O lando-latest.deb $(curl -sL https://api.github.com/repos/lando/lando/releases | jq -r '.[0].assets[].browser_download_url' | grep ".deb") | |
dpkg -i lando-latest.deb | |
echo "Installing zsh and improved shell" | |
apt -qq -y install zsh | |
apt -qq -y install fonts-powerline | |
echo "Installing PhpStorm" | |
snap install phpstorm --classic | |
# Make some adjustments to allow PhpStorm to run smoothly. | |
wget -O /etc/sysctl.d/60-jetbrains.conf https://gist.githubusercontent.com/bittner/c7d1d49fe0c9af907f24/raw/e2448528477ca3508ad480bea52d3dad54a58f10/60-jetbrains.conf | |
echo "Installing Slack" | |
snap install slack --classic | |
echo "Installing Sublime" | |
snap install sublime-text --classic | |
echo "Installing ngrok" | |
snap install ngrok --classic | |
echo "Installing Skype" | |
snap install skype --classic | |
echo "Install Beyond Compare" | |
snap install --classic bcompare | |
echo "Install Peek (GIF recorder)" | |
add-apt-repository -y ppa:peek-developers/stable | |
apt -qq update | |
apt -qq -y install peek | |
# @see https://vitux.com/how-to-install-teamviewer-on-ubuntu/ | |
# echo "Install TeamViewer" | |
# wget https://download.teamviewer.com/download/linux/signature/TeamViewer2017.asc | |
# apt-key add TeamViewer2017.asc | |
# sh -c 'echo "deb http://linux.teamviewer.com/deb stable main" >> /etc/apt/sources.list.d/teamviewer.list' | |
# apt update | |
# apt install teamviewer | |
# Required me to run apt --fix-broken install after the installation.. | |
# @see https://www.omgubuntu.co.uk/2017/04/mount-google-drive-ocamlfuse-linux | |
echo "Install Google Drive" | |
add-apt-repository -y ppa:alessandro-strada/ppa | |
apt update | |
apt -qq -y install google-drive-ocamlfuse | |
google-drive-ocamlfuse | |
echo "Run the following after the installation is done." | |
echo "mkdir ~/googledrive" | |
echo "google-drive-ocamlfuse ~/googledrive" | |
echo "" | |
echo "All done." | |
echo "" | |
echo "Please run the following to allow access to your user to the newly created web directory" | |
echo "chown your-user /var/www/html" | |
echo "" | |
echo "Please run the following command manually to use Docker:" | |
echo "sudo usermod -aG docker your-user" | |
echo "" | |
echo "To use zsh shell please return to your user and run the two following commands" | |
echo "wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh" | |
echo "chsh -s `which zsh`" | |
echo "" | |
echo 'Run `ssh-keygen` and then `cat ~/.ssh/id_rsa.pub` from your user' | |
echo "Please reboot to apply all changes and start zshing.. :)" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment