# (ES) Script post-instalación del Sistema Operativo Ubuntu 16.04 LTS

# (EN) Ubuntu 16.04 LTS post-installation script

#

# Author  : Jose Manuel Cerrejon Gonzalez (ulysess _at._ gmail _.dot_ com)

# Updated : 25/Apr/16

# Website : http://misapuntesde.com

#

# (ES)

# 1) Copiar este script a un fichero, otorgar permisos de ejecución con chmod +x ubun_misapuntes.sh

# 2) Asegurarnos de tener acceso a internet.

# 3) Leer CUIDADOSAMENTE cada línea y añadir/remover el símbolo de almohadilla '#' en las acciones que necesites (salvo en los comentarios).

# 4) Recuerda hacer backups de programas, bookmarks, configuraciones y addons de navegadores, mail ,~/.bashrc, ~/.ssh, ~/gnupg...

# 5) Ejecutar ./ubun_misapuntes.sh

#

# (EN)

# 1) Copy the script to a file and set execution priviledge with: chmod +x ubun_misapuntes.sh

# 2) Make sure you have internet connection.

# 3) Read CAREFULLY each line on this file and add/remove the '#' symbol when you need it. (keep comments).

# 4) Remember to make backups(apps, bookmarks, config files, browsers addons, mail ,~/.bashrc, ~/.ssh, ~/gnupg…)

# 5) Run ./ubun_misapuntes.sh

#

# Script start!

#

export DEBIAN_FRONTEND=noninteractive

echo "Script started: " && (lsb_release -sc) >> script.log && date >> scriptPostInstall.log

#

# (ES) Instalamos drivers privativos de la aceleradora gráfica

# (EN) Install privative drivers

#

# (ES) NOTA: Otro método de instalación es descargar los drivers de aqui (usa generic, no Ubuntu) y ejecutarlo. Asegúrate de tener instalado los kernel header, build-essential y los siguientes paquetes:

# (EN) NOTE: Another installation method is download drivers from here. Make sure you have kernel header and build-essential installed:

#sudo apt-get update && sudo apt-get install -y linux-headers-$(uname -r) build-essential  dkms lib32gcc1 libc6-i386 libqtcore4 qtcore4-l10n dh-modaliases execstack debhelper gimp-help-en libstdc++ autoconf2.64

#

# nVIDIA

#

#sudo add-apt-repository ppa:graphics-drivers/ppa -y && sudo apt-get update && sudo apt-get install nvidia-352 -y

#

# Intel Graphics Driver

# + Info: https://01.org/linuxgraphics/downloads/2015/intelr-graphics-installer-linux-1.0.8 

#

wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg -O - | \
sudo apt-key add -

wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg-2 -O - | \
sudo apt-key add -

#

# (ES) Comprueba este artículo: http://blog.soluciones-libres.com/2014/04/instalar-drivers-nvidia-33167-sistemas.html 

# (EN) Check this article: http://linuxg.net/how-to-install-the-nvidia-331-67-stable-drivers-on-linux-systems/ 

#

# (ES) NOTA POST INSTALACIÓN DE DRIVERS AMD/NVIDIA: Si una vez instalado el sistema falla, entrar a la terminal y escribir: sudo ubuntu-drivers autoinstall

# (EN) AMD/NVIDIA DRIVERS POST INSTALLATION NOTE: If the system fail, go to terminal and write: sudo ubuntu-drivers autoinstall

#

# (ES) Eliminamos paquetes innecesarios (al menos para mi).

# (EN) Remove uneeded packages

#

sudo apt-get purge -y account-plugin-flickr aisleriot appmenu-qt appmenu-qt5 apport-gtk apport-symptoms aspell-en brltty duplicity espeak-data example-content friendly-recovery gnome-mahjongg gnome-mines gnome-orca gnome-user-guide intel-gpu-tools manpages pcmciautils ubuntu-docs xterm

#

# (ES) Otros paquetes innecesarios, pero hay que tener precaucción al borrarlos. INESTABLE

# (EN) Another unneeded packages, but warning...for the brave

#

# bluez: Si no usas bluetooth

# cups: gestión de impresoras

# evolution-data-server: programa cliente de correo obsoleto, pero puede usarse aún en alguna aplicación

# gstreamer*: Biblioteca de reproducción multimedia. Si usas VLC puedes eliminarlo si no usas totem.

# hplip: Si no usas impresora HP, toca borrarlo.

# remmina-common: Si no usas control remoto de escritorio.

# totem-common: Si no usas totem

# usb-creator-common, usb-creator-gtk: Crear disco de arranque de Ubuntu

# modemmanager: Si haces uso de redes 3G no borrar

# colord: daemon gestor de perfiles de colores

# update-notifier: notificador de actualizaciones

# acpid: NO BORRAR si estás en un portátil

# apt-xapian-index: Mantiene base de datos para búsquedas rápidas con synaptic

# thunderbird: No lo uso

# libreoffice-draw, libreoffice-calc, libreoffice-math: Elimina todo menos Editor de textos

# wodim: Aplicación para consola de grabación de CD/DVDs

# whoopsie-preferences: Interface para reporte de erorres

# toshset: Para equipos Toshiba

# sane-utils: útiles para escanear

# rhythmbox: Music Player

#sudo apt-get purge -y bluez cups-common evolution-data-server gstreamer0.10-plugins-good gstreamer0.10-x gstreamer1.0-libav gstreamer1.0-plugins-bad hplip hplip-data remmina-common totem-common usb-creator-common usb-creator-gtk modemmanager colord update-notifier acpid apt-xapian-index thunderbird gnome-sudoku brasero-common libreoffice-draw libreoffice-calc libreoffice-math wodim whoopsie-preferences wamerican transmission-common transmission-gtk toshset sane-utils rhythmbox*

# NOTA: ejecutar la siguiente instrucción una vez tengamos instalada la aceleradora gráfica (nVIDIA o ATI).

sudo apt-get purge  xserver-xorg-video-all xserver-xorg-video-ati xserver-xorg-video-tdfx xserver-xorg-video-trident xserver-xorg-video-fbdev xserver-xorg-video-mga xserver-xorg-video-r128 xserver-xorg-video-openchrome xserver-xorg-video-siliconmotion xserver-xorg-video-mach64 xserver-xorg-video-qxl  xserver-xorg-video-savage xserver-xorg-video-vmware xserver-xorg-video-neomagic xserver-xorg-video-sisusb xserver-xorg-video-radeon xserver-xorg-video-cirrus

#

# Actualizamos los repositorios que vamos a necesitar.

#

# varios

sudo add-apt-repository ppa:nilarimogard/webupd8 -y

# unsettings - Tipo Ubuntu Tweak

sudo add-apt-repository ppa:diesch/testing -y

# VLC (VideoLan)

sudo add-apt-repository ppa:videolan/stable-daily -y

# Wine - NOTA: Te instala muchas dependencias. No aconsejable si te gustan los entornos “Lite”

sudo add-apt-repository ppa:ubuntu-wine/ppa -y && sudo apt-get update && sudo apt-get install wine1.7 winetricks -y

# Esenciales wine

winetricks xact vcrun2008 vcrun2010 d3dx9_42

#

# Eliminar varios lens

#

sudo apt-get remove -y unity-lens-music unity-scope-musicstores

#

# Eliminar varios Scopes (Búsquedas) como el de música, calculadora, favoritos de Crhomium, colourlovers.com, devhelp, recetas de cocina, man pages, opencliparts.com, tomboy, zotero.org en ese orden

#

sudo apt-get remove -y unity-scope-audacious unity-scope-clementine unity-scope-musique unity-scope-guayadeque unity-scope-gmusicbrowser unity-scope-calculator unity-scope-chromiumbookmarks unity-scope-colourlovers unity-scope-devhelp unity-scope-gourmet unity-scope-manpages unity-scope-openclipart unity-scope-tomboy unity-scope-zotero

#

# Se pueden desactivar las lentes con la siguiente sentencia

#

#gsettings set com.canonical.Unity.Lenses disabled-scopes "['more_suggestions-amazon.scope', 'more_suggestions-u1ms.scope', 'more_suggestions-populartracks.scope', 'music-musicstore.scope', 'more_suggestions-ebay.scope', 'more_suggestions-ubuntushop.scope', 'more_suggestions-skimlinks.scope']"

#

# Otro método para mejorar la privacidad en Ubuntu

#

gsettings set com.canonical.Unity.Lenses remote-content-search none; if [ `cat /etc/lsb-release | grep DISTRIB_RELEASE | cut -d"=" -f2` \< '13.10' ]; then sudo apt-get remove -y unity-lens-shopping; else gsettings set com.canonical.Unity.Lenses disabled-scopes "['more_suggestions-amazon.scope', 'more_suggestions-u1ms.scope', 'more_suggestions-populartracks.scope', 'music-musicstore.scope', 'more_suggestions-ebay.scope', 'more_suggestions-ubuntushop.scope', 'more_suggestions-skimlinks.scope']"; fi; sudo sh -c 'echo "127.0.0.1 productsearch.ubuntu.com" >> /etc/hosts';

#

# Actualizamos el sistema e instalamos las aplicaciones que deseemos.

#

sudo apt-get update && sudo apt-get dist-upgrade -y && sudo apt-get -y install git htop curl mc p7zip-full p7zip-rar unsettings parcellite diodon lib32z1 lib32ncurses5 lib32bz2-1.0 myspell-es ispanish unity-tweak-tool

#

# (ES) Otras aplicaciones

# (EN) Other apps

#

# mpv: media player

sudo add-apt-repository ppa:mc3man/trusty-media -y && sudo apt-get update && sudo apt-get -y mpv

# Google Chrome  

sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google.list' && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - && sudo apt update && sudo apt install -y google-chrome-stable

# NOTE: If you want to remove Firefox:

#sudo apt remove -y firefox* flash*

# shutter: programa de captura de pantallas muy potente. El comando para hacer capturas sin necesidad de software adicional es: gnome-screenshot --interactive

# sudo apt-get install shutter

# VirtualBox

sudo add-apt-repository ppa:dreibh/ppa -y && sudo apt-get update && sudo apt-get install virtualbox

# jDownloader

sudo add-apt-repository ppa:jd-team/jdownloader -y && sudo apt-get update && sudo apt-get install jdownloader-installer

# Dropbox

sudo apt-key adv --keyserver pgp.mit.edu --recv-keys 5044912E && sudo add-apt-repository "deb http://linux.dropbox.com/ubuntu $(lsb_release -sc) main" && sudo apt-get update && sudo apt-get install nautilus-dropbox

#Pragha (Music player)

sudo add-apt-repository ppa:ferramroberto/lffl && sudo apt-get update && sudo apt-get -y install pragha

# Spotify

sudo echo 'deb http://repository.spotify.com stable non-free' >> /etc/apt/sources.list && sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 13B00F1FD2C19886 && sudo apt update && sudo apt-get install spotify-client

# libcss encrypt dvd

#echo 'deb http://download.videolan.org/pub/debian/stable/ /' | sudo tee -a /etc/apt/sources.list.d/libdvdcss.list && echo 'deb-src http://download.videolan.org/pub/debian/stable/ /' | sudo tee -a /etc/apt/sources.list.d/libdvdcss.list && wget -O - http://download.videolan.org/pub/debian/videolan-apt.asc|sudo apt-key add - && sudo apt-get update && sudo apt-get install -y libdvdcss2

# PSP Emulator (Doesn’t works)

# sudo add-apt-repository ppa:noobslab/apps -y && sudo apt-get update && sudo apt-get install ppsspp-sdl

# transmageddon (Encoder)

sudo add-apt-repository ppa:nilarimogard/webupd8 -y && sudo apt-get update && sudo apt-get install transmageddon

# Classic menu indicator

sudo add-apt-repository ppa:diesch/testing -y && sudo apt-get update && sudo apt-get install classicmenu-indicator

# (Es) Scope de recetas de cocina - Spanish

sudo add-apt-repository ppa:atareao/scopes -y && sudo apt-get update && sudo apt-get install unity-scope-canalcocina

# Brackets (Code Editor)

sudo add-apt-repository ppa:webupd8team/brackets -y && sudo apt-get update && sudo apt-get install -ynode -v brackets

#App Grid

sudo add-apt-repository -y ppa:appgrid/stable -y && sudo apt-get update && sudo apt-get -y install appgrid

# Node.js

sudo add-apt-repository ppa:chris-lea/node.js -y && sudo apt-get update && sudo apt-get install -y python-software-properties python g++ make nodejs

# QWINFF (Transcoder)

sudo apt-add-repository ppa:lzh9102/qwinff -y && sudo apt-get update && sudo apt-get install -y qwinff

# Corebird (Twitter client)

sudo apt-get update && sudo apt-get install gdebi -y && wget http://ppa.launchpad.net/ubuntuhandbook1/corebird/ubuntu/pool/main/c/corebird/corebird_1.0-2~vivid_amd64.deb && sudo gdebi corebird_1.0-2~vivid_amd64.deb

# Sigram (Telegram client)

sudo add -apt-repository ppa:sialan/desktop -y && sudo apt-get update && sudo apt-get install -y sigram

# FFMPEG

sudo add-apt-repository ppa:jon-severinsson/ffmpeg -y && sudo apt-get update && sudo apt-get install -y ffmpeg

# Simple Screen Recorder

sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder -y && sudo apt-get update && sudo apt-get install -y simplescreenrecorder

# apt-fast

sudo add-apt-repository ppa:saiarcot895/myppa -y && sudo apt-get update && sudo apt-get install -y apt-fast

# Conky manager

sudo apt-add-repository -y ppa:teejee2008/ppa -y && sudo apt-get update && sudo apt-get install -y conky-manager

# Wallch (Wallpaper changer)

#sudo apt-get install wallch

# youtube-dlg (youtube downloader)

sudo add-apt-repository ppa:nilarimogard/webupd8 -y && sudo apt-get update && sudo apt-get install youtube-dlg

# Pinta (Paint.Net clone)

sudo add-apt-repository ppa:pinta-maintainers/pinta-stable -y && sudo apt-get update && sudo apt-get install -y pinta

# SDL2

sudo add-apt-repository ppa:zoogie/sdl2-snapshots -y && sudo apt-get update && sudo apt-get install -y libsdl2

# Kodi

sudo add-apt-repository ppa:team-xbmc/ppa -y && sudo apt-get update && sudo apt-get install -y kodi

# Play .torrent files with VLC

sudo add-apt-repository -y ppa:chris-lea/node.js -y && sudo apt-get update && sudo apt-get install nodejs wget vlc

sudo npm install -g peerflix

wget http://pinguyos.com/files/Torrent-Video-Player

chmod +x Torrent-Video-Player

sudo mv Torrent-Video-Player /usr/bin

#

# Hiphop music app

# http://download.gethiphop.net/releases/0.4.5/linux64/HipHop-0.4.5.tgz

#

# audience video player from Elementary OS

#

sudo add-apt-repository ppa:audience-members/ppa -y && sudo add-apt-repository ppa:vala-team && sudo apt-get update && sudo apt-get install audience

#

# Atraci

#

wget bit.ly/1q8jVdy -O install-atraci.sh && sh install-atraci.sh

#

# Urban Terror

#

wget -q -O – http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add –

sudo sh -c 'echo "deb http://archive.getdeb.net/ubuntu precise-getdeb games" >> /etc/apt/sources.list.d/getdeb.list' && sudo apt-get update && sudo apt-get install urbanterror -y

#

# Themes (Change it with Unity-tweak-tools). If installed, comment the next line:

sudo apt install -y git unity-tweak-tool

git clone https://github.com/vooze/arc-darker-ubuntu

cd arc-darker-ubuntu

sudo cp -R arc-darker-ubuntu /usr/share/themes

# Icons

sudo add-apt-repository ppa:numix/ppa && sudo apt update && sudo apt install -y numix-icon-theme numix-icon-theme-circle

#

# Developers

#

# Java 8 (JDK)

sudo add-apt-repository ppa:webupd8team/java -y && sudo apt-get update && sudo apt-get install -y oracle-java8-installer

sudo apt-get install oracle-java8-set-default

java -version

# Android Studio  (If doesn’t works, check /opt/android-studio/bin/studio.sh output)

sudo add-apt-repository ppa:paolorotolo/android-studio -y && sudo apt-get update && sudo apt-get install -y android-studio lib64stdc++6 mesa-utils

# NOTE: If you get issues with GL drivers on Emulator (x64 bits), just run:

#cp /usr/lib64/libstdc++.so.6 $HOME/Android/Sdk/tools/lib64/libstdc++/libstdc++.so.6

# Error with MaxPermSize=350m: Try comment on studio64.vmoptions the line: -XX:MaxPermSize=350m

# Sublime Text 3

sudo add-apt-repository ppa:webupd8team/sublime-text-3 -y && sudo apt-get update && sudo apt-get install -y sublime-text-installer

# ATOM text Editor

sudo add-apt-repository ppa:webupd8team/atom -y && sudo apt-get update && sudo apt-get install -y atom

# DBeaver (Database manager)

wget http://dbeaver.jkiss.org/files/dbeaver-ce_latest_amd64.deb && sudo dpkg -i dbeaver-ce_latest_amd64.deb && rm dbeaver-ce_latest_amd64.deb

# PHP environment programming & Composer

sudo apt install -y php php7.0-mbstring

php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php

php -r "if (hash_file('SHA384', 'composer-setup.php') === '7228c001f88bee97506740ef0888240bd8a760b046ee16db8f4095c0d8d525f2367663f22a46b48d072c816e7fe19959') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"

sudo mv $HOME/composer.phar /usr/bin/composer

# Node.js
sudo apt-get install -y nodejs-legacy npm

#

# Tweaks

#

# (Es) Desactivar menu de apagado

# (EN) Disable shutdown menu dialog

gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true

# Remove guest session

sudo mkdir /etc/lightdm/lightdm.conf.d

sudo sh -c 'printf "[SeatDefaults]\nallow-guest=false\n" > /etc/lightdm/lightdm.conf.d/50-no-guest.conf'

# Mostrar en aplicaciones al inicio, más servicios

sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop

# Eliminar zeitgeist que monitoriza la actividad y eventos del sistema (NO RECOMENDABLE). Para conocer los paquetes a eliminar: dpkg -l |grep zeit

# chmod -rw ~/.local/share/zeitgeist/activity.sqlite && zeitgeist-daemon --replace && sudo apt-get purge python-zeitgeist zeitgeist-core

# Desactivar menú de apagado

dconf write /org/gnome/gnome-session/logout-prompt false

# Eliminar report Daemon

sudo apt-get purge -y whoopsie

# Eliminar terminales tty3-tty6

sudo rm /etc/init/tty3.conf /etc/init/tty4.conf /etc/init/tty5.conf /etc/init/tty6.conf

# Limpiamos un poco…

sudo apt clean && sudo apt autoremove -y

#

# En /etc/fstab, modificar los parámetros de la partición ext4 por:

# discard,noatime,errors=remount-ro

# Podemos añadir a este mismo fichero lo siguiente. Consume un poco más de RAM pero los accesos al disco duro son menores (vital si tienes un SSD):

# tmpfs /tmp tmpfs defaults,noatime,noexec,nosuid,mode=1777 0 0

# Eliminar pantalla de carga. Se hace a través del fichero /etc/default/grub. Hay que eliminar la palabra splash de la línea:

# GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

# (ES) Disminuir el tiempo en el menu GRUB de 10 seg. a 1:

# (EN) Set default GRUB time out from 10 sec. to 1:

sudo sed -e 's/GRUB_TIMEOUT=10/GRUB_TIMEOUT=1/g' /etc/default/grub && sudo update-grub

# Disable AppPort (disable message ‘System Program Problem detected’ on boot) 

sudo service apport stop ; sudo sed -ibak -e s/^enabled\=1$/enabled\=0/ /etc/default/apport ; sudo mv /etc/default/apportbak ~

#

# Pair Bluetooth Keyboard: Launch discover BT service

sudo apt-get install bluez-hcidump
# and then

sudo hcidump -at | grep -A 1 "User Passkey"
# Use the bluetooth gui to add the keyboard but ignore the numbers that the gui prompts. Instead type the passkey showing on the console+ENTER.

# OTROS PROGRAMAS DE INTERÉS:

# Franz: Gestor de Mensajería multiplataforma (WhatsApp, Slack, HangOut,...)

# Double Commander: Gestor de ficheros tipo Midnight Commander para entorno gráfico

# gitkraken: Git GUI