$ wget http://downloads.arduino.cc/arduino-1.6.3-linux32.tar.xz
$ tar -xJf arduino-1.6.3-linux32.tar.xz
$ sudo mv arduino-1.6.3 /opt
$ sudo rm -f /usr/bin/arduino
$ sudo ln -s /opt/arduino-1.6.3/arduino /usr/bin/arduino
$ sudo usermod -a -G dialout yourUserName
$ sudo gedit /opt/arduino-1.6.3/hardware/arduino/avr/boards.txt

Add optiboot parameters for boards (take a look here to see all configurations available) you have at the end of file:

##############################################################
atmega328o.name=[Optiboot] Arduino Duemilanove or Nano w/ ATmega328
atmega328o.upload.tool=avrdude
atmega328o.upload.protocol=arduino
atmega328o.upload.maximum_size=32256
atmega328o.upload.speed=115200
atmega328o.bootloader.tool=avrdude
atmega328o.bootloader.low_fuses=0xff
atmega328o.bootloader.high_fuses=0xde
atmega328o.bootloader.extended_fuses=0x05
atmega328o.bootloader.path=optiboot
atmega328o.bootloader.file=optiboot_atmega328.hex
atmega328o.bootloader.unlock_bits=0x3F
atmega328o.bootloader.lock_bits=0x0F
atmega328o.build.mcu=atmega328p
atmega328o.build.f_cpu=16000000L
atmega328o.build.core=arduino:arduino
atmega328o.build.variant=arduino:standard
$ gedit ~/.local/share/applications/arduino.desktop

Add file contents:

[Desktop Entry]
Name=Arduino
Comment="Arduino IDE 1.6.3"
Exec=arduino
Icon="/opt/arduino-1.6.3/lib/arduino_icon.ico"
Terminal=false
Type=Application
StartupNotify=true
$ sudo desktop-file-install ~/.local/share/applications/arduino.desktop
$ ln -s ~/.local/share/applications/arduino.desktop ~/Desktop/