Ubuntu 18.04 Bionic Beaver - Basic packages i usually install
# | |
# Ubuntu 18.04 (Bionic Beaver) | |
# | |
# Basic packages i usually install. | |
# | |
# Author: Julius Beckmann <github@h4cc.de> | |
# | |
# 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 php72 php56 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 | |
sudo dpkg --add-architecture i386 | |
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 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 libavcodec-extra libdvdread4 blender totem okular okular-extra-backends libdvdnav4 libdvdread4 gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly libdvd-pkg ubuntu-restricted-extras xubuntu-restricted-extras | |
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 ntp | |
#--- 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: | |
# From https://wiki.ubuntuusers.de/VirtualBox/Installation/ | |
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add - | |
sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian bionic contrib" > /etc/apt/sources.list.d/virtualbox.list' | |
make update | |
sudo apt -y install virtualbox-6.0 | |
# Install extpack | |
rm -f Oracle_VM_VirtualBox_Extension_Pack-6.0.2.vbox-extpack | |
wget https://download.virtualbox.org/virtualbox/6.0.2/Oracle_VM_VirtualBox_Extension_Pack-6.0.2.vbox-extpack | |
sudo VBoxManage extpack install --replace --accept-license=56be48f923303c8cababb0bb4c478284b688ed23f16d775d729b89a2e8e5f9eb Oracle_VM_VirtualBox_Extension_Pack-6.0.2.vbox-extpack | |
rm -f Oracle_VM_VirtualBox_Extension_Pack-6.0.2.vbox-extpack | |
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: | |
sudo apt -y install apache2 apache2-utils php7.2 libapache2-mod-php7.2 | |
sudo a2enmod rewrite | |
sudo systemctl restart apache2 | |
php72: | |
sudo add-apt-repository -y ppa:ondrej/php | |
make update | |
sudo apt -y install -y php7.2 php7.2-cli php7.2-dev php7.2-curl php7.2-gd php7.2-gmp php7.2-json php7.2-mysql php7.2-sqlite3 php7.2-xml php7.2-bz2 php7.2-enchant php7.2-imap php7.2-intl php7.2-mbstring php7.2-soap php7.2-xsl php7.2-zip | |
sudo update-alternatives --set php /usr/bin/php7.2 | |
# # 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 =@date.timezone = "Europe/Berlin"@g' /etc/php/7.0/*/php.ini | |
# # - Active writing of PHAR files for cli. | |
# sudo sed -i 's@;phar.readonly = On@phar.readonly = 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: | |
sudo add-apt-repository -y ppa:ondrej/php | |
make update | |
sudo apt-get install -y php5.6 php5.6-dev php5.6-cli php5.6-mysql php5.6-mbstring php5.6-curl php5.6-gd php5.6-imap php5.6-sqlite3 php5.6-opcache php5.6-json php5.6-bz2 php5.6-mcrypt php5.6-mbstring php5.6-xml php5.6-zip | |
# # 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-client | |
#sudo mysql_secure_installation | |
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 | |
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 | |
#dell_c2665_dnf: | |
# sudo apt -y install rpm2cpio | |
# rm -f C2665dnf-Linux-Driver.zip | |
# wget https://downloads.dell.com/FOLDER01815904M/1/C2665dnf-Linux-Driver.zip | |
# unzip C2665dnf-Linux-Driver.zip |
This comment has been minimized.
This comment has been minimized.
|
This comment has been minimized.
This comment has been minimized.
Awesome script -- how do I run this? |
This comment has been minimized.
This comment has been minimized.
How do we run that @h4cc |
This comment has been minimized.
This comment has been minimized.
I am not able to install couchdb on bionic 18.04. Here is what I did:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
Hey, this is really cool, I made my own similar to this. Thanks! https://github.com/dylanmtaylor/dylan-ubuntu-makefile