Skip to content

Instantly share code, notes, and snippets.

@vanyasem
Last active May 28, 2018 07:44
Show Gist options
  • Save vanyasem/3541a877ea34569071a3d71e06da8eda to your computer and use it in GitHub Desktop.
Save vanyasem/3541a877ea34569071a3d71e06da8eda to your computer and use it in GitHub Desktop.
*buntu 16.04 - Auto-install must have packages
# You can run this script as many times as you want, it won't harm your machine
# Android Studio and/or JetBrains Toolbox may be outdated, but they have a built-in updater, so that's not a big deal
#
# List of Software included:
# BEGIN LITE
# - Main Python packages (+bpython)
# - PulseAudio Equalizer
# - openssh-server & sshfs & denyhosts
# - "joke" packages: sl & cowsay & fortune & lolcat
# - htop, iotop
# - Grub Customizer (https://launchpad.net/grub-customizer)
# - Neofetch (https://github.com/dylanaraps/neofetch)
# - Tilix (https://gnunn1.github.io/tilix-web)
# - EmojiOne Font (https://github.com/eosrei/emojione-color-font)
# - Peek (https://github.com/phw/peek)
# - Caffeine (https://launchpad.net/caffeine)
# - gnome-disk-utility (https://git.gnome.org/browse/gnome-disk-utility)
# - Gimp Latest (https://gimp.org)
# - gThumb (https://wiki.gnome.org/Apps/gthumb)
# - ffmpeg (https://ffmpeg.org)
# - VLC (http://videolan.org)
# - Lollypop (https://gnumdk.github.io/lollypop-web)
# - EasyTAG (https://wiki.gnome.org/Apps/EasyTAG)
# - Firefox (https://mozilla.org)
# - Filezilla (https://filezilla-project.org)
# - Nextcloud Client (https://nextcloud.com/install/#install-clients)
# - Shutter (http://shutter-project.org)
# - BleachBit (https://bleachbit.org)
# - Gparted (http://gparted.org)
# - VirtualBox (https://www.virtualbox.org)
# - Gnome System Monitor (https://wiki.gnome.org/Apps/SystemMonitor)
# - Gnome Chess (https://wiki.gnome.org/Apps/Chess)
# - Gnome Mines (https://wiki.gnome.org/Apps/Mines)
# - Quadrapassel (https://wiki.gnome.org/Apps/Quadrapassel)
# - FCEUX (http://fceux.com)
# - AisleRiot Solitaire (https://wiki.gnome.org/Apps/Aisleriot)
# - LibreOffice 5.4.0 (https://libreoffice.org)
# - Atom (https://atom.io)
# - GitKraken (https://gitkraken.com)
# - Android Studio 2.3 with KVM (https://developer.android.com/studio)
# - JetBrains Toolbox (https://www.jetbrains.com/toolbox)
# - TheFuck (https://github.com/nvbn/thefuck)
# - youtube-dl (https://rg3.github.io/youtube-dl)
# - Flatpak (http://flatpak.org)
# -- Telegram (https://telegram.org) it's broken somehow, removed
# END LITE
# -- GNOME Builder (https://wiki.gnome.org/Apps/Builder)
# - elementary OS dev packages
# - UBports tools
# - Ngrok (https://ngrok.com)
# - Deluge (http://deluge-torrent.org)
# - GTK+ UVC Viewer (http://guvcview.sourceforge.net)
# - OBS Studio (https://obsproject.com)
# - NixNote2 (https://github.com/baumgarr/nixnote2)
# - Etcher (https://etcher.io)
# - asciinema (https://asciinema.org)
# - Inkscape (https://inkscape.org)
# - Blender (https://blender.org)
# - kdenlive (https://kdenlive.org)
# - Audacity (http://audacityteam.org)
# - Bless Hex Editor (https://github.com/bwrsandman/Bless)
# - Insomnia (https://insomnia.rest)
# - CPT (https://ubports.com)
# - onedrived (https://github.com/xybu/onedrived-dev)
# - vk-scraper (https://github.com/vanyasem/VK-Scraper)
# - instagram-scraper (https://github.com/rarcega/instagram-scraper)
select item in Lite Full Cancel; do
case "$item" in
Lite)
MODE=LITE
break
;;
Full)
MODE=FULL
break
;;
*) exit 0;;
esac
done
sudo apt install -y mc tree unrar
sudo apt install -y sl fortune cowsay lolcat
sudo apt install -y htop iotop
sudo apt install -y libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
sudo apt install -y qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils ia32-libs-multiarch
sudo apt install -y software-properties-common
sudo apt install -y bpython3 python3-software-properties python3-dev python3-pip
sudo apt install -y bpython python-software-properties python-pip python-tk
sudo apt install -y virtualenv
sudo apt install -y build-essential libssl-dev inotify-tools python3-dbus
sudo add-apt-repository -y ppa:nilarimogard/webupd8
sudo add-apt-repository -y ppa:danielrichter2007/grub-customizer
sudo add-apt-repository -y ppa:dawidd0811/neofetch
sudo apt-add-repository -y ppa:eosrei/fonts
sudo add-apt-repository -y ppa:peek-developers/stable
sudo add-apt-repository -y ppa:gnumdk/lollypop
sudo add-apt-repository -y ppa:amigadave/ppa
sudo add-apt-repository -y ppa:otto-kesselgulasch/gimp-edge
sudo add-apt-repository -y ppa:nextcloud-devs/client
sudo add-apt-repository -y ppa:alexlarsson/flatpak
sudo add-apt-repository -y ppa:caffeine-developers/ppa
if [ $MODE == FULL ]
then
sudo add-apt-repository -y ppa:pj-assis/ppa
sudo add-apt-repository -y ppa:obsproject/obs-studio
sudo add-apt-repository -y ppa:nixnote/nixnote2-daily
sudo add-apt-repository -y ppa:kdenlive/kdenlive-stable
echo "deb https://dl.bintray.com/resin-io/debian stable etcher" | sudo tee /etc/apt/sources.list.d/etcher.list
sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 379CE192D401AB61
fi
sudo apt update
sudo apt upgrade -y
sudo apt install -y pulseaudio-equalizer
sudo apt install -y openssh-server sshfs denyhosts
sudo apt install -y caffeine
sudo apt install -y gnome-disk-utility
sudo apt install -y grub-customizer
sudo apt install -y neofetch
sudo apt install -y tilix
sudo apt install -y fonts-emojione-svginot
sudo apt install -y peek
sudo apt install -y gimp gimp-gmic
sudo apt install -y gthumb
sudo apt install -y ffmpeg
sudo apt install -y vlc
sudo apt install -y lollypop
sudo apt install -y easytag
sudo apt install -y firefox
sudo apt install -y filezilla
sudo apt install -y nextcloud-client
sudo apt install -y shutter
sudo apt install -y bleachbit
sudo apt install -y gparted
sudo apt install -y virtualbox-qt
sudo apt install -y gnome-system-monitor
sudo apt install -y gnome-chess
sudo apt install -y gnome-mines
sudo apt install -y quadrapassel
sudo apt install -y fceux
sudo apt install -y aisleriot
sudo apt install -y flatpak
sudo apt install -y xdg-desktop-portal-gtk
if [ $MODE == FULL ]
then
sudo apt install -y valac elementary-sdk libgranite-dev libunity-dev
sudo apt install -y ubuntu-device-flash phablet-tools
sudo apt install -y ngrok-client
sudo apt install -y deluge python-libtorrent
sudo apt install -y guvcview
sudo apt install -y obs-studio
sudo apt install -y nixnote2
sudo apt install -y etcher-electron
sudo apt install -y asciinema
sudo apt install -y inkscape
sudo apt install -y blender
sudo apt install -y kdenlive
sudo apt install -y audacity
sudo apt install -y bless
fi
mkdir ~/Downloads/Debs/
wget -O ~/Downloads/LibreOffice.tar.gz http://download.documentfoundation.org/libreoffice/stable/5.4.0/deb/x86_64/LibreOffice_5.4.0_Linux_x86-64_deb.tar.gz
tar -xvzf ~/Downloads/LibreOffice.tar.gz -C ~/Downloads/Debs/
rm ~/Downloads/LibreOffice.tar.gz
sudo dpkg -i ~/Downloads/Debs/LibreOffice_5.4.0.1_Linux_x86-64_deb/DEBS/*.deb
wget -O ~/Downloads/Debs/GitKraken.deb https://release.gitkraken.com/linux/gitkraken-amd64.deb
wget -O ~/Downloads/Debs/Atom.deb https://atom.io/download/deb
wget -O ~/Downloads/Debs/Insomnia.deb https://builds.insomnia.rest/downloads/ubuntu/latest
wget -O ~/Downloads/Debs/CPT.deb https://ubports.com/r/downloads-cpt-linux
sudo dpkg -i ~/Downloads/Debs/*.deb
wget -O ~/Downloads/Jetbrains-Toolbox.tar.gz https://download.jetbrains.com/toolbox/jetbrains-toolbox-1.4.2492.tar.gz
wget -O ~/Downloads/Android-Studio.zip https://dl.google.com/dl/android/studio/ide-zips/2.3.3.0/android-studio-ide-162.4069837-linux.zip
flatpak remote-add --user --if-not-exists kde --from https://distribute.kde.org/kderuntime.flatpakrepo
# flatpak install -y --user --from https://jgrulich.fedorapeople.org/telegram/telegram.flatpakref it's broken somehow, removed
if [ $MODE == FULL ]
then
flatpak install -y --user --from https://git.gnome.org/browse/gnome-apps-nightly/plain/gnome-builder.flatpakref?h=stable
fi
pip install pip --upgrade --user
pip3 install pip --upgrade --user
pip3 install thefuck --upgrade --user
pip3 install youtube_dl --upgrade --user
if [ $MODE == FULL ]
then
pip3 install git+https://github.com/xybu/onedrived-dev.git --upgrade --user
pip3 install vk-scraper --upgrade --user
pip3 install instagram-scraper --upgrade --user
fi
FILE=~/.bashrc
TEST='neofetch'
LINE='
if [[ $- == *i* ]]; then
neofetch
fi'
grep -qF "$TEST" "$FILE" || echo "$LINE" >> "$FILE"
LINE='eval $(thefuck --alias)'
grep -qF "$LINE" "$FILE" || echo "$LINE" >> "$FILE"
LINE='export ANDROID_HOME=~/Android/Sdk/'
grep -qF "$LINE" "$FILE" || echo "$LINE" >> "$FILE"
LINE='export ANDROID_NDK_ROOT=~/Android/Sdk/ndk-bundle/'
grep -qF "$LINE" "$FILE" || echo "$LINE" >> "$FILE"
LINE='export PATH=$PATH{}:~/Android/Sdk/platform-tools/'
grep -qF "$LINE" "$FILE" || echo "$LINE" >> "$FILE"
# FILE=/etc/sudoers
# LINE='Defaults insults'
# sudo grep -qF "$LINE" "$FILE" || sudo echo "$LINE" >> "$FILE"
yes | sudo apt -f install
sudo apt -y autoremove
source ~/.bashrc
source ~/.bash_profile
if [ ! -d '/usr/local/android-studio/' ]
then
sudo unzip ~/Downloads/Android-Studio.zip -d /usr/local/
rm ~/Downloads/Android-Studio.zip
echo "----------------------"
echo "Open any project or file in Android Studio"
echo "Once the IDE is loaded, go to:"
echo "Android Studio -> Tools -> Create Desktop Entry"
echo "Then close the IDE, so the script can continue"
echo "----------------------"
read -n 1 -s -r -p "Press any key to continue"
/usr/local/android-studio/bin/studio.sh
fi
if [ ! -d ~/Downloads/Jetbrains-Toolbox/ ]
then
mkdir -p ~/Downloads/Jetbrains-Toolbox/
tar -xvzf ~/Downloads/Jetbrains-Toolbox.tar.gz --strip=1 -C ~/Downloads/Jetbrains-Toolbox/
rm ~/Downloads/Jetbrains-Toolbox.tar.gz
echo "----------------------"
echo "Wait for JetBrains Toolbox to fully load,"
echo "Disable Analytics and Accept their Agreements/Policies"
echo "Beware: It will add itself to Autostart"
echo "You can now close the Toolbox either from the system tray or"
echo "you can just terminate this script from the terminal, as it's finished"
echo "----------------------"
read -n 1 -s -r -p "Press any key to continue"
~/Downloads/Jetbrains-Toolbox/jetbrains-toolbox
fi
sl
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment