Docker – change default installation folder on Ubuntu

Images and containers can be hard drive space killers. So it’s a good idea to use a separated HD for docker. So, to change docker folder you must edit the file that starts docker service. On Ubuntu this file is located on /lib/systemd/system/docker.service You have to edit the line starting with ExecStart, adding -g flag with path of the target folder.
ExecStart=/usr/bin/dockerd -g /docker -H unix://
In this case docker will use /docker folder, that is a separated ext4 partition from a secondary HD.
UUID=162fa297-c10f-4b23-b839-a7d915ea4979 /docker ext4 defaults 0 2

Consola / Terminal :)

Instalar zsh y establecer como predeterminado 

sudo apt install zsh
chsh -s $(which zsh)

Instalar Oh My Zsh

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

Configurar Oh My Zsh

nano ~/.zshrc
...................
ZSH_THEME="agnoster"

plugins=(
  git
  bundler
  rake
  rbenv
  ruby
)

Para usar theme agnoster debe instalar poweline fonts 

sudo apt install fonts-powerline

Para que se vea bien en la terminal de vscode debe instalar Menlo For PowerLine

https://github.com/abertsch/Menlo-for-Powerline

En VsCode debe configurar sus preferencias de usuario

 {"terminal.integrated.fontFamily": "Menlo for PowerLine"}

Notebook como segunda pantalla virtual ( x11vnc en ubuntu 16.04

 Instalar x11vnc

sudo apt-get install x11vnc
Agregar la siguiente configuración a xorg /usr/share/X11/xorg.conf.d/20-intel.conf  (En mi caso es intel porque mi placa usa ese controller, pero puedo variar para cada placa de video)
Section "Device"
    Identifier "intelgpu0"
    Driver "intel"
    Option "VirtualHeads" "2"
EndSection
Copiar el script para activar la segunda pantalla en su carpeta principal local de ejecutables. Normalmente /home/{{user}}/bin
#!/bin/bash

WIDTH=1366
HEIGHT=768
x11_cmd=x11vnc

echo "Segunda Pantalla activada..."
if [[ ! -z $(pgrep ${x11_cmd}) ]]; then
    pkill ${x11_cmd}
fi

MODE=$(gtf ${WIDTH} ${HEIGHT} 60| egrep -v '#' |  awk '{first = $1; $1 = ""; print $0, first; }')
MODE_NAME=$(echo ${MODE} | awk '{ print $1}')

OFFSET=$(xrandr | grep primary | awk '{ print $4}' | sed 's/\([0-9]*\)\(.*\)/\1/')
PRIMARY=$(xrandr | grep primary | awk '{print $1}')

VIRTUAL=VIRTUAL1

xrandr --newmode ${MODE} 2> /dev/null
xrandr --addmode ${VIRTUAL} ${MODE_NAME} 2> /dev/null
xrandr --output ${VIRTUAL} --right-of ${PRIMARY}

LOG=/var/log/x11vnc.log

if [[ ! -f "${LOG}" ]]; then
    sudo touch ${LOG}
    sudo chown ${USER}. ${LOG}
fi
echo "OFFSET: ${OFFSET}"
echo "DISPLAY: ${OFFSET}"

x11vnc -bg -forever -display $DISPLAY -clip "${WIDTH}x${HEIGHT}+${OFFSET}+0" -o ${LOG}
xset r
Asignar permiso de ejecución al script
sudo chmod +x ~/bin/activarMonitor.sh
Luego para activar el servidor deberá ejecutar el script, normalmente lo hago usando Alt + F2 y escribiendo el comando. 

En la notebook…

Instalar un cliente vnc, funciona muy bien remmina
sudo apt install remmina
Desde el remina nos conectamos al ip de la máquina host. En mi caso las tengo conectadas por un cable de red y tengo una conexión directa para que sea más rápido. Pero se puede hacer en cualquier LAN

¿ Como abrir mi editor de texto preferido desde el explorador ?

Buenas,

Para poder abrir mi editor de texto predilecto, desde el chrome utilizando xdg-open y el protocolo txmt:// deberán seguir los siguientes pasos.

  1. Crear un script para adaptar el link al tipo de comando soportado por su editor de texto. Este ejemplo sirve para vscode y sublime code 2.
#!/usr/bin/env bash
request=${1:23} # Borra los primeros 23 caracteres
request=${request//%2F//} # Reemplazo %2F con /
request=${request/&line=/:} # Reemplazo &line= con :
request=${request/&column=/:} # Reemplazo &column= con :
code -g $request # Abro vscode


Ubicamos el script en $HOME/bin/vscode_handler

2) Crear una app desktop, linkeando el mime type txmt a el handler creado en el punto 1

sudo nano /usr/share/applications/vscode-handler.desktop

[Desktop Entry]
Name=VSCODE URL Handler
GenericName=Editor de texto
Comment=Gestiona las URL Scheme txmt://
Exec=/home/<nombre de usuario>/bin/vscode_handler %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/txmt;
Icon=vscode
Categories=TextEditor;Development;Utility;
Name[en_US]=VSCODE URL Handler

3) Actualizar la base de datos de apps

sudo update-desktop-database

Configurar VPN (PPTP) en Ubuntu con network manager

Para conectarse a una VPN desde Ubuntu utilizando el protocolo PPTP deberá seguir los siguiente pasos.

  1. Desde configuración de redes, crear una nueva VPN
    Elegir PPTP

  2. Indicar el IP en pasarela,  luego usuario y contraseña. Es importante guardar la contraseña para todos los usuarios, porque quien se conecta es root.

  3. Ingresar en avanzado…. y dejar la configuración como esta en la siguiente imagen.

  4. Listo ✔ ya puede conectarse a la VPN desde el menú lateral

Para poder usar los DNS del servidor VPN debe configurarlos en la solpa ipv4

 

Por último si quiere agregar una search-domain, que permite usar test en lugar de test.example.com. Hay que editar el archivo
de la conexión VPN y agregarlo a mano.  El mismo normalmente se encuentra en /etc/NetworkManager/system-connections y agregar
el dominio del VPN

[ipv4]
dns=10.0.0.151;10.0.0.152;
dns-search=example.com
ignore-auto-dns=true
method=auto

Tab only in current workspace – Tips for Ubuntu Desktop

Using lots of windows can be messy,  ubuntu desktop (unity and now gnome) gives us the possibility to have multiple virtual desktops to have a better organization of the working space. This excelent feature can be easily enhance by limitin the alt-tab switching command to current space. If not it can be counterproductive.

To make that configuration you can follow this guide

  1. Install dconf-editor
  2. Open  and go to  org -> gnome -> shell -> app-switcher
  3. Set current-workspace-only propertie to true

That’s all!