-
-
Save andreystarkov/ecf1e95a327bb8da52a78cbdc4f0d5cf to your computer and use it in GitHub Desktop.
Ubuntu 18.04 Bionic Beaver - Basic packages i usually install
This file contains 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
# | |
# Ubuntu 18.04 (Bionic Beaver) | |
# | |
# Basic packages i usually install. | |
# | |
# Author: Julius Beckmann <[email protected]> | |
# | |
# Upgraded Script from 17.04: https://gist.github.com/h4cc/09b7fe843bb737c8039ac62d831f244e | |
# Upgraded Script from 16.04: https://gist.github.com/h4cc/fe48ed9d85bfff3008704919062f5c9b | |
# Upgraded Script from 14.04: https://gist.github.com/h4cc/7be7f940325614dc59fb | |
# | |
.PHONY: all preparations libs update upgrade fonts python ruby virtualbox vagrant graphics darktable networking google_chrome dropbox slack archives media pandoc system harddisk docker ansible filesystem nodejs apache2 php7 mysql mysql-workbench postgres memcached mongodb tools encfs_manager nautilus httpie esl_repo erlang elixir couchdb teamviewer xmind presentation idea_intellij | |
all: | |
@echo "Installation of ALL targets" | |
make preparations libs | |
make upgrade | |
make fonts | |
make graphics darktable | |
make networking google_chrome dropbox httpie | |
make media pandoc | |
make presentation | |
make archives system harddisk filesystem tools encfs_manager nautilus | |
make docker ansible virtualbox vagrant | |
make nodejs | |
make apache2 php7 mysql mysql-workbench memcached mongodb | |
make postgres | |
make openoffice owncloud | |
make erlang elixir | |
make couchdb | |
make teamviewer | |
make xmind | |
preparations: | |
make update | |
sudo apt -y install software-properties-common build-essential checkinstall wget curl git libssl-dev apt-transport-https ca-certificates | |
libs: | |
sudo apt -y install libavahi-compat-libdnssd-dev | |
update: | |
sudo apt update | |
upgrade: | |
sudo apt -y upgrade | |
fonts: | |
mkdir -p ~/.fonts/ | |
rm -f ~/.fonts/FiraCode-* | |
wget https://github.com/tonsky/FiraCode/raw/master/distr/otf/FiraCode-Bold.otf -O ~/.fonts/FiraCode-Bold.otf | |
wget https://github.com/tonsky/FiraCode/raw/master/distr/otf/FiraCode-Light.otf -O ~/.fonts/FiraCode-Light.otf | |
wget https://github.com/tonsky/FiraCode/raw/master/distr/otf/FiraCode-Medium.otf -O ~/.fonts/FiraCode-Medium.otf | |
wget https://github.com/tonsky/FiraCode/raw/master/distr/otf/FiraCode-Regular.otf -O ~/.fonts/FiraCode-Regular.otf | |
wget https://github.com/tonsky/FiraCode/raw/master/distr/otf/FiraCode-Retina.otf -O ~/.fonts/FiraCode-Retina.otf | |
fc-cache -v | |
python: | |
make preparations | |
sudo -H apt -y install python-pip | |
sudo -H pip install --upgrade pip | |
ruby: | |
sudo apt -y install ruby ruby-dev ruby-bundler | |
sudo gem install bundler | |
graphics: | |
sudo apt -y install gimp gimp-data gimp-plugin-registry gimp-data-extras geeqie graphviz libav-tools jpegoptim | |
darktable: | |
sudo apt -y install darktable | |
networking: | |
sudo apt -y install pidgin filezilla vinagre remmina chromium-browser pepperflashplugin-nonfree bmon | |
google_chrome: | |
rm -f google-chrome-stable_current_amd64.deb | |
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb | |
sudo apt -y install libappindicator1 libindicator7 | |
sudo dpkg -i google-chrome-stable_current_amd64.deb | |
rm -f google-chrome-stable_current_amd64.deb | |
dropbox: | |
sudo apt -y install nautilus-dropbox | |
slack: | |
apt -y install gvfs-bin libgnome-keyring0 gir1.2-gnomekeyring-1.0 | |
rm -f slack-desktop-3.0.5-amd64.deb | |
wget https://downloads.slack-edge.com/linux_releases/slack-desktop-3.0.5-amd64.deb | |
sudo dpkg -i slack-desktop-3.0.5-amd64.deb | |
rm -f slack-desktop-3.0.5-amd64.deb | |
archives: | |
sudo apt -y install unace unrar zip unzip p7zip-full p7zip-rar sharutils rar uudeview mpack arj cabextract file-roller | |
media: | |
sudo apt -y install mplayer mplayer-gui vlc ubuntu-restricted-extras libavcodec-extra libdvdread4 blender totem okular okular-extra-backends | |
sudo apt -y install libxvidcore4 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-alsa gstreamer1.0-fluendo-mp3 gstreamer1.0-libav | |
# DVD Playback | |
sudo apt -y install libdvd-pkg | |
sudo dpkg-reconfigure libdvd-pkg | |
pandoc: | |
sudo apt -y install pandoc pandoc-citeproc texlive texlive-latex-extra texlive-latex-base texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra texlive-lang-german texlive-xetex preview-latex-style dvipng nbibtex | |
presentation: | |
sudo apt -y install pdf-presenter-console | |
system: | |
sudo apt -y install icedtea-8-plugin openjdk-8-jre subversion rabbitvcs-nautilus git curl vim network-manager-openvpn gparted gnome-disk-utility usb-creator-gtk traceroute cloc whois mssh inotify-tools openssh-server sqlite3 etckeeper stress gksu ntp | |
#--- Fixing psyhon keyring problems | |
sudo apt -y install python-keyring python-gnomekeyring | |
#--- Raise inotify limit | |
echo "fs.inotify.max_user_watches = 524288" | sudo tee /etc/sysctl.d/60-inotify.conf | |
sudo service procps restart | |
harddisk: | |
sudo apt -y install smartmontools gsmartcontrol smart-notifier | |
docker: | |
exit 1 # TODO | |
make python | |
sudo apt -y install linux-image-extra-virtual | |
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D | |
sudo sh -c "echo deb https://apt.dockerproject.org/repo ubuntu-bionic main > /etc/apt/sources.list.d/docker.list" | |
make update | |
sudo apt -y install docker-engine | |
# Installing docker compose additionally. | |
sudo pip install docker-compose | |
vagrant: | |
exit 1 # TODO | |
#[ -f vagrant_1.9.4_x86_64.deb ] || wget https://releases.hashicorp.com/vagrant/1.9.4/vagrant_1.9.4_x86_64.deb | |
#sudo dpkg -i vagrant_1.9.4_x86_64.deb | |
#rm -f vagrant_1.9.4_x86_64.deb | |
virtualbox: virtualbox | |
exit 1 # TODO | |
#echo "deb http://download.virtualbox.org/virtualbox/debian binoc contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.org.list | |
#wget -q -O- http://download.virtualbox.org/virtualbox/debian/oracle_vbox_2016.asc | sudo apt-key add - | |
#make update | |
#sudo apt -y install virtualbox-5.1 | |
ansible: | |
#sudo apt-add-repository -y ppa:ansible/ansible | |
#make update | |
sudo apt -y install ansible | |
filesystem: | |
sudo apt -y install exfat-fuse exfat-utils e2fsprogs mtools dosfstools hfsutils hfsprogs jfsutils util-linux lvm2 nilfs-tools ntfs-3g reiser4progs reiserfsprogs xfsprogs attr quota f2fs-tools sshfs go-mtpfs jmtpfs | |
nodejs: | |
exit 1 # TODO | |
#curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - | |
#apt-get install -y nodejs | |
apache2: | |
@echo "Dont know how to do this yet :( TODO" | |
#sudo apt -y install apache2-mpm-prefork apache2-utils | |
#sudo a2enmod rewrite | |
php7: | |
# # TODO: Missing PHP modules here? | |
# sudo apt -y install php7.0-json php7.0-mcrypt php7.0-intl php7.0-cli php7.0-sqlite3 \ | |
# php7.0-mysql php7.0-ldap php7.0-gmp php7.0-gd php7.0-curl php-pear php7.0-dev | |
# sudo apt -y install php-bcmath php-bz2 php-curl php-enchant php-gd php-gmp php-imap \ | |
# php-interbase php-intl php-json php-ldap php-mbstring php-mcrypt php-mysql php-odbc \ | |
# php-pgsql php-pspell php-readline php-recode php-soap php-sqlite3 php-sybase \ | |
# php-tidy php-xml php-xmlrpc php-zip | |
# # - Set php timezone to berlin in all php.ini files. | |
# sudo sed -i 's@;date.timezone [email protected] = "Europe/Berlin"@g' /etc/php/7.0/*/php.ini | |
# # - Active writing of PHAR files for cli. | |
# sudo sed -i 's@;phar.readonly = [email protected] = Off@g' /etc/php/7.0/cli/php.ini | |
# #- PhpMyAdmin with 24 hours session lifetime. | |
# sudo apt -y install phpmyadmin | |
# #sudo sh -c "echo \"<?php $cfg['LoginCookieValidity'] = 3600 * 24; // 24 hours.\" > /etc/phpmyadmin/conf.d/LoginTimeout.php" | |
php56: | |
# # From: http://askubuntu.com/questions/761713/how-can-i-downgrade-from-php-7-to-php-5-6-on-ubuntu-16-04 | |
# sudo a2dismod proxy_fcgi proxy; sudo service apache2 restart | |
# sudo add-apt-repository -y ppa:ondrej/php | |
# make update | |
# sudo apt-get -y install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug php-apcu libapache2-mod-php5.6 libapache2-mod-php7.0 | |
# sudo a2dismod php7.0 | |
# sudo a2enmod php5.6 | |
# sudo service apache2 restart | |
# sudo ln -sfn /usr/bin/php5.6 /etc/alternatives/php | |
mysql: | |
sudo apt -y install mysql-server | |
mysql-workbench: | |
sudo apt -y install mysql-workbench | |
postgres: | |
sudo apt -y install postgresql postgresql-contrib pgadmin3 | |
#sudo -i -u postgres psql | |
#> \password postgres | |
#> postgres | |
#> postgres | |
#> \q | |
memcached: | |
sudo apt -y install memcached | |
mongodb: | |
sudo apt -y install mongodb | |
tools: | |
sudo apt -y install htop meld guake password-gorilla keepassx retext terminator vim geany ghex myrepos baobab | |
# Fix for nautilus not starting my preferred terminal on right click. | |
#sudo apt-get -y remove gnome-terminal | |
#sudo ln -fs /usr/bin/terminator /usr/bin/gnome-terminal | |
httpie: ruby | |
sudo apt -y install python-pip | |
sudo pip install --upgrade httpie | |
encfs_manager: | |
sudo add-apt-repository -y ppa:gencfsm/ppa | |
make update | |
sudo apt -y install gnome-encfs-manager | |
nautilus: | |
sudo apt -y install nautilus-image-converter nautilus-compare nautilus-wipe | |
sudo add-apt-repository -y ppa:nilarimogard/webupd8 && sudo apt-get update && sudo apt -y install nautilus-columns | |
esl_repo: | |
rm -f erlang-solutions_1.0_all.deb | |
wget http://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb | |
sudo dpkg -i erlang-solutions_1.0_all.deb | |
rm -f erlang-solutions_1.0_all.deb | |
make update | |
erlang: | |
#make esl_repo | |
sudo apt -y install erlang | |
elixir: | |
#make esl_repo | |
sudo apt -y install elixir | |
couchdb: | |
exit 1 # TODO | |
#sudo apt -y install couchdb | |
teamviewer: | |
sudo apt -y install qml-module-qtquick-dialogs qml-module-qtquick-privatewidgets | |
rm -f teamviewer_amd64.deb | |
wget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb | |
sudo dpkg -i teamviewer_amd64.deb | |
rm -f teamviewer_amd64.deb | |
xmind: | |
[ -f xmind-7-update1-linux_amd64.deb ] || wget --user-agent="Mozilla/5.0" http://dl2.xmind.net/xmind-downloads/xmind-7-update1-linux_amd64.deb | |
sudo apt -y install lame libwebkitgtk-1.0-0 | |
sudo dpkg -i xmind-7-update1-linux_amd64.deb | |
idea_intellij: | |
sudo apt-add-repository -y ppa:mmk2410/intellij-idea | |
make update | |
sudo apt -y install intellij-idea-community |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment