Skip to content

Instantly share code, notes, and snippets.

@andreystarkov
Forked from h4cc/Makefile
Created May 10, 2018 15:08
Show Gist options
  • Save andreystarkov/ecf1e95a327bb8da52a78cbdc4f0d5cf to your computer and use it in GitHub Desktop.
Save andreystarkov/ecf1e95a327bb8da52a78cbdc4f0d5cf to your computer and use it in GitHub Desktop.
Ubuntu 18.04 Bionic Beaver - Basic packages i usually install
#
# 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