Skip to content

Instantly share code, notes, and snippets.

@arya-oss
Last active November 18, 2023 13:58
Show Gist options
  • Save arya-oss/cae8a16056e44bd901a6d17d8f1a7fbf to your computer and use it in GitHub Desktop.
Save arya-oss/cae8a16056e44bd901a6d17d8f1a7fbf to your computer and use it in GitHub Desktop.
Ubuntu 16.04 Developer Tools installation

Ubuntu 16.04 Developer Tools Installation

First things first !

sudo apt update
sudo apt upgrade

Standard Developer Tools

sudo apt-get install build-essential git

Virtualbox Guest Utlities for Shared Drive and Clipboard (optional)

sudo apt install dkms build-essential linux-headers-`uname -r`
sudo apt install virtualbox-guest-utils virtualbox-guest-dkms
# To access shared drive on nautilus folder
sudo addgroup <YOUR USERNAME> vboxsf

Python Development

sudo apt-get install python-dev python-pip python-virtualenv python-numpy python-matplotlib

Virtualenv Wrapper Installation

sudo pip install virtualenvwrapper
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc
# Create Virtualenv (env location is ~/.virtualenvs)
mkvirtualenv <env_name>
# select virtualenv
workon <env_name>

pip packages

For Machine Learning

# Create Virtualenv
mkvirtualenv ML
# Activate it
workon ML
# Install packages (if behinde proxy use pip install --proxy=<proxy_address>)
pip install scipy scikit-learn matplotlib jupyter pandas numpy tensorflow keras seaborn

For Web Development

# Create Virtualenv
mkvirtualenv web
# Activate it
workon web
# Install packages (if behinde proxy use pip install --proxy=<proxy_address>)
pip install django beautifulsoup4 requests ipython

Compiler Development

sudo apt install flex bison

Networking tools

sudo apt install libpcap-dev libnet1-dev rpcbind openssh-server nmap

Computer Vision or Image Processing with OpenCV

sudo apt install python-numpy
cd ~
# Clone latest codebase for opencv (do git checkout for specific version)
git clone https://github.com/Itseez/opencv.git
# Clone opencv contrib plugins
git clone https://github.com/Itseez/opencv_contrib.git
# install prerequisites
sudo apt-get install cmake pkg-config libjpeg8-dev libtiff-dev libjasper-dev libpng12-dev libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libatlas-base-dev gfortran libopencv-dev build-essential checkinstall cmake pkg-config yasm libtiff5-dev libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils ffmpeg libgphoto2-dev
# Start Build Process
cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
make -j4
sudo make install
sudo ldconfig

Parallel Processing with OpenMPI

#install pre-requisites
sudo apt-get install libibnetdisc-dev
# download codebase
wget https://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.2.tar.gz
# extract
tar -xzvf openmpi-1.10.2.tar.gz
# configure and build
./configure --prefix="~/.openmpi"
make -j4
sudo make install
echo "export PATH=$PATH:$HOME/.openmpi/bin" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.openmpi/lib/" >> ~/.bashrc

Android tools

sudo apt install android-tools-adb android-tools-fastboot

Media tools

sudo apt install flashplugin-installer vlc ffmpeg

Editor

install vim

sudo apt install vim

Install Atom Editor download

sudo dpkg -i atom-amd64.dev

Install Visual Studio Code download

sudo dpkg -i code_<version>.deb

Ubuntu Customization (Theme and Icons)

Install Gnome Tweak Tool

sudo apt install gnome-tweak-tool

# Create Theme and Icon directory
mkdir ~/.icons ~/.themes

Download Themes and Icons, Place it under respective directory and open tweak tool select your themes

Suggested Themes and

  1. Flatabulous
  2. Paper-Theme
  3. Paper-Icon-Theme

Install ZSH

sudo apt install zsh
curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh
chsh -s `which zsh`

Web Development in PHP with Apache2 Web Server

#Install apache2 and php
sudo apt install apache2 apache2-utils libapache2-mod-php
sudo apt install php php-dev php-mcrypt php-mysql php-mbstring php-dom
# Enable mod_rewrite for apache2
sudo a2enmod rewrite

Configure index.php for priorities add index.php sudo nano /etc/apache2/mods-available/dir.conf

<IfModule mod_dir.c>
	DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

Configure Mod Rewrite sudo nano /etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

    <Directory /var/www/html>
        Options FollowSymLinks MultiViews Indexes
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Reload Apache sudo service apache2 restart

Java Development

# install jdk
sudo apt install openjdk-8-jdk
# install maven
sudo apt install maven

Install eclipse dowload

Ruby Development

# install pre requisites
sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

# clone rbenv
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
git clone https://github.com/rbenv/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash

# add configuration to bashrc
echo "export PATH=$PATH:$HOME/.rbenv/bin:$HOME/.rbenv/shims" >> ~/.bashrc
echo "eval $(rbenv init -)" >> ~/.bashrc
echo "export PATH=$HOME/.rbenv/plugins/ruby-build/bin:$PATH" >> ~/.bashrc
# install and set specific ruby version
rbenv install 2.3.0
rbenv global 2.3.0
# install some gems
gem install bundler jekyll mysql2 rails jekyll-pagedown

Database

# install nosql database
sudo apt install mongodb-server
# install sqlite3 for smaller db
sudo apt install libsqlite3-dev sqlite3
# mysql community version installation
sudo apt install mysql-server libmysqlclient-dev

NodeJs Development

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo npm install -g grunt-cli yarn @angular/cli

ASP.NET Development

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt update
# install mono libraries
sudo apt install mono-devel mono-complete referenceassemblies-pcl ca-certificates-mono mono-xsp4
# install mono ide
sudo apt install monodevelop-nunit monodevelop-versioncontrol monodevelop-database

CLoud Storage (Dropbox)

cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
# to start dropbox
sh ~/.dropbox-dist/dropboxd
@ignasg
Copy link

ignasg commented Jan 23, 2018

Thanks, nice to have it all in one place!

Would be nicer if it did not stop on prompts. Also got some errors with python (packages), but it scrolled down now, so cant copy paste.

@devkoriel
Copy link

Useful. I got help. Thx.

@arjunnayak
Copy link

Super useful, thanks!

@tojocky
Copy link

tojocky commented Feb 22, 2018

Could you please correct for nodejs:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo npm install -g grunt-cli yarn @angular/cli

inspired from https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

@adifahmi
Copy link

Thanks a lot

@rishithaminol
Copy link

rishithaminol commented Mar 26, 2018

@rajmani1995 I think this addition will be useful for the Compiler Development section.
http://www.linuxfromscratch.org/lfs/view/stable/chapter05/generalinstructions.html

@tomay3000
Copy link

Thank you ;)

@sdpper
Copy link

sdpper commented Apr 18, 2018

Much appreciated!

@matheusfinotti
Copy link

matheusfinotti commented Apr 28, 2018

Very Thank You

@bmasse
Copy link

bmasse commented May 5, 2018

Merci beaucoup, very useful.

@joecoc1916
Copy link

Very Helpful, Thanks to all

@robmarano
Copy link

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment