Skip to content

Instantly share code, notes, and snippets.

@konstantinbo
Last active June 21, 2023 18:40
Show Gist options
  • Save konstantinbo/74a94464b27f2cea8eafe4046aaafb36 to your computer and use it in GitHub Desktop.
Save konstantinbo/74a94464b27f2cea8eafe4046aaafb36 to your computer and use it in GitHub Desktop.
Thing to do after installation of Ubuntu 18.04 Bionic Beaver
# First you update your system
sudo apt update && sudo apt-get upgrade
# Uninstall unnecessary programs
# essential programs
sudo apt --assume-yes install g++ libtool automake htop gparted vlc firefox inkscape steam filezilla k4dirstat speedcrunch feh
# Python 3.7
sudo apt install python3.7 python3-venv python3-pip
# gdebi for easy click-install of *.deb
sudo apt --assume-yes install gdebi
#Install File Compression Libs
sudo apt --assume-yes install rar unrar zip unzip p7zip-full p7zip-rar
# GIT
sudo apt --assume-yes install git
# Git setup
printf "Enter your name for git commits: \n"
read username
printf "Enter your email for git: \n"
read email
git config --global user.name ${username}
git config --global user.email ${email}
# SSH Key setup
ssh-keygen -t rsa -b 4096 -C ${email}
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
sudo apt-get install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub
printf "SSH Key was copied to your clipboard. You can add it now to Github. Press <Enter> afterwards to continue. \n "
read input
# Java
sudo apt --assume-yes install openjdk-8-jre openjdk-8-jdk
# Multimedia Codecs
sudo apt --assume-yes install ubuntu-restricted-extras libavcodec-extra ffmpeg
# Vanilla Gnome
sudo apt --assume-yes install gnome-session gdm3
# Gnome Tweaks
## 1. adding repository
sudo add-apt-repository universe
## 2. updating apt-get
sudo apt update
## 3. installing tweaks
sudo apt --assume-yes install gnome-tweak-tool
#Install Spotify
## 1. Add the Spotify repository signing key to be able to verify downloaded packages
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 931FF8E79F0876134EDDBDCCA87FF9DF48BF1C90
## 2. Add the Spotify repository
echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list
## 3. Update list of available packages
sudo apt update
## 4. Install Spotify
sudo apt --assume-yes install spotify-client
# Paper theme
# add daily builds PPA
sudo add-apt-repository ppa:snwh/ppa
# update repository info
sudo apt-get update
# install icon theme
sudo apt --assume-yes install paper-icon-theme
# GTK Theme
sudo apt --assume-yes install arc-theme
# Synapse launcher
sudo apt --assume-yes install synapse
# KDE Connect
# TODO
# neofetch 17.04 and up
sudo apt --assume-yes install neofetch
# Keepassxc
sudo apt --assume-yes install keepassxc
# Gnome system monitor
sudo apt --assume-yes install gnome-system-monitor
# System load indicator
sudo apt --assume-yes install indicator-multiload
# Elementary Plank
sudo apt --assume-yes install plank
# Pantheon Terminal
wget -O ~/Downloads/pantheon-terminal.tar.gz https://github.com/elementary/terminal/archive/5.3.1.tar.gz
tar -zxf ~/Downloads/pantheon-terminal.tar.gz -C ~/Downloads
# install dependencies
sudo apt --assume-yes install libgranite-dev libvte-2.91-dev meson valac
(cd ~/Downloads/terminal-5.3.1/; meson build --prefix=/usr)
(cd ~/Downloads/terminal-5.3.1/build; ninja test)
(cd ~/Downloads/terminal-5.3.1/build; sudo ninja install)
rm ~/Downloads/pantheon-terminal.tar.gz
# Google Chrome
sudo apt --assume-yes install libxss1 libappindicator1 libindicator7
## 1. downloading last stable package
wget -P ~/Downloads https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
## 2. installing package
sudo dpkg -i ~/Downloads/google-chrome-stable_current_amd64.deb
## 3. fixing broken dependencies
sudo apt --assume-yes install -f
## 4. Enable maximize and minimize button on Google Chrome
#gconftool-2 --set /apps/metacity/general/button_layout --type string ":minimize:maximize:close"
rm ~/Downloads/google-chrome*.deb # free up space
# Elementary Code
sudo apt --assume-yes install meson valac libeditorconfig-dev libgail-3-dev libgee-0.8-dev libgit2-glib-1.0-dev libgtksourceview-3.0-dev libgtkspell3-3-dev libgranite-dev libsoup2.4-dev libvala-0.42-dev libvte-2.91-dev libwebkit2gtk-4.0-dev libzeitgeist-2.0 libpeas-dev
wget -O ~/Downloads/elementary-code.tar.gz https://github.com/elementary/code/archive/3.0.tar.gz
tar -zxf elementary-code.tar.gz -C ~/Downloads
(cd ~/Downloads/code-3.0/; meson build --prefix=/usr)
(cd ~/Downloads/code-3.0/build; ninja test)
(cd ~/Downloads/code-3.0/build; sudo ninja install)
rm ~/Downloads/elementary-code.tar.gz
mkdir ~/Pictures/wallpapers
wget -O ~/Downloads/elementary-wallpapers.tar.gz https://github.com/elementary/wallpapers/archive/5.3.tar.gz
tar -zxf ~/Downloads/elementary-wallpapers.tar.gz -C ~/Pictures/wallpapers
# Install Telegram
mkdir -p ~/Documents/apps/
wget -O ~/Downloads/tsetup.1.4.3.tar.xz https://github.com/telegramdesktop/tdesktop/releases/download/v1.4.3/tsetup.1.4.3.tar.xz
tar -xf ~/Downloads/tsetup.1.4.3.tar.xz -C ~/Documents/apps/
rm ~/Downloads/tsetup.1.4.3.tar.xz
# VirtualBox
## 1. downloading package
#wget http://download.virtualbox.org/virtualbox/5.1.6/VirtualBox-5.1.6-110634-Linux_amd64.run
## 2. installing package into /opt
#sudo sh VirtualBox-5.1.6-110634-Linux_amd64.run
## 3. downloading extension pack
#wget http://download.virtualbox.org/virtualbox/5.1.6/Oracle_VM_VirtualBox_Extension_Pack-5.1.6-110634.vbox-extpack
## 4. install extension pack
#sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.6-110634.vbox-extpack
## 5. listing installed extension packs
#sudo VBoxManage list extpacks
## Teamviewer 12
## 1. downloading package
wget -O ~/Downloads/teamviewer_i386.deb https://download.teamviewer.com/download/teamviewer_i386.deb
## 2. installing package
sudo dpkg -i ~/Downloads/teamviewer_i386.deb
## 3. fixing broken dependencies
sudo apt-get --assume-yes install -f
rm ~/Downloads/teamviewer_i386.deb
## Synology Drive Client
wget -O ~/Downloads/synology-drive.deb https://global.download.synology.com/download/Tools/SynologyDriveClient/1.1.2-10562/Ubuntu/Installer/x86_64/synology-drive-10562.x86_64.deb
sudo dpkg -i ~/Downloads/synology-drive.deb
rm ~/Downloads/synology-drive.deb
#Reduce overheating and improve battery life
## 1. adding repository
#sudo add-apt-repository ppa:linrunner/tlp
## 2. updating apt-get
#sudo apt-get update
## 3. installing package
#sudo apt-get install tlp tlp-rdw
## 4. starting application
#sudo tlp start
# Fira code
mkdir -p ~/.local/share/fonts
for type in Bold Light Medium Regular Retina; do
wget -O ~/.local/share/fonts/FiraCode-${type}.ttf \
"https://github.com/tonsky/FiraCode/blob/master/distr/ttf/FiraCode-${type}.ttf?raw=true";
done
fc-cache -f
# Download git repos
mkdir -p ~/Documents/Github
# Powerline fonts
# clone
git clone https://github.com/powerline/fonts.git ~/Documents/Github/fonts
# install
~/Documents/Github/fonts/install.sh
# fileinfo search
git clone https://github.com/sdushantha/fileinfo.git ~/Documents/Github/fileinfo
(cd ~/Documents/Github/fileinfo; pip3 install -r requirements.txt)
chmod +x ~/Documents/Github/fileinfo/fileinfo
# My Keepassx database
# enter your git repo here
# Spotify notification script
mkdir -p ~/Documents/scripts/
mkdir -p ~/.icons/
wget -O ~/Documents/scripts/sp https://gist.githubusercontent.com/wandernauta/6800547/raw/2c2ad0f3849b1b1cd1116b80718d986f1c1e7966/sp
chmod +x ~/Documents/scripts/sp
# install dependencies
sudo apt --assume-yes install libnotify-bin
# get git repo
git clone https://github.com/konstantinbo/sp-notification.git ~/Documents/Github/sp-notification/
chmod +x ~/Documents/Github/sp-notification/sp-notify
chmod +x ~/Documents/Github/sp-notification/sp-pause-notification
cp ~/Documents/Github/sp-notification/pause-icon.png ~/.icons
# z - jump around
git clone https://github.com/rupa/z.git ~/Documents/Github/z/
# Python2/3 pip
sudo apt --assume-yes install python3-dev python-pip python3-pip
# pip libs
sudo pip3 install scipy pandas numpy sympy matplotlib html5lib thefuck
# Ruby and bropages
sudo apt --assume-yes install ruby ruby-dev
sudo gem install bropages
# Jetbrains Toolbox
wget -O ~/Downloads/jetbrains-toolbox.tar.gz https://download.jetbrains.com/toolbox/jetbrains-toolbox-1.11.4269.tar.gz
tar -zxf ~/Downloads/jetbrains-toolbox.tar.gz -C ~/Documents/apps/
~/Documents/apps/jetbrains-toolbox-*/jetbrains-toolbox
# install and change shell to zsh
sudo apt --assume-yes install zsh
chsh -s $(which zsh)
# install oh-my-zsh
printf "Enter 'exit' after installation of oh-my-zsh is finished to get back to the installation script. \n "
printf "Press <Enter> to continue. \n "
read input
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
# add additional plugins
git clone https://github.com/arzzen/calc.plugin.zsh.git ~/.oh-my-zsh/custom/plugins/calc/
git clone https://github.com/djui/alias-tips.git ~/.oh-my-zsh/custom/plugins/alias-tips/
git clone https://github.com/zdharma/history-search-multi-word.git ~/.oh-my-zsh/custom/plugins/history-search-multi-word/
git clone https://github.com/supercrabtree/k ~/.oh-my-zsh/custom/plugins/k/
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
git clone https://github.com/denysdovhan/spaceship-prompt.git ~/.oh-my-zsh/themes/spaceship-prompt
ln -s ~/.oh-my-zsh/themes/spaceship-prompt/spaceship.zsh-theme ~/.oh-my-zsh/themes/spaceship.zsh-theme
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
# my dotfiles
git clone https://github.com/konstantinbo/dotfiles.git ~/Documents/Github/dotfiles/
# delete existing files in home directory
rm ~/.aliases
rm ~/.zshrc
# create soft links
ln -s /home/$USER/Documents/Github/dotfiles/.aliases /home/$USER/.aliases
ln -s /home/$USER/Documents/Github/dotfiles/.zshrc /home/$USER/.zshrc
mkdir -p ~/.themes/CustomArcDark/gnome-shell
ln -s /home/$USER/Documents/Github/dotfiles/.themes/CustomArcDark/gnome-shell/gnome-shell.css ~/.themes/CustomArcDark/gnome-shell/gnome-shell.css
source ~/.zshrc
source ~/.aliases
printf "Start Telegram manually in ~/Documents/apps/Telegram . \n"
printf "Relog to activate zsh"
# Clean up
sudo apt autoremove
sudo apt autoclean
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment