Llevaba mucho tiempo buscando algo que me permitiera agrupar las pestañas de Chrome por grupos, de forma que pudiera tener un grupo para cada proyecto en el que estoy trabajando, y por fin lo he encontrado: Workona. 100% recomendable.
Category: GNU Linux
Montar Google Drive como unidad en Linux Mint 18
Al parecer en la versión 19 de Linux Mint está un poco más integrado, pero en la 18 lo más sencillo es instalar este programa: FUSE filesystem over Google Drive.
Una utilidad imprescindible para línea de comandos: screen
Cuando trabajamos con línea de comandos en servidores remotos hay veces que debemos ejecutar alguna tarea que requiere tiempo. En estos casos, si perdemos la conexión con el servidor no podremos saber de una forma sencilla cuándo se ha terminado de ejecutar esa tarea, ya que aunque podamos reconectarnos la sesión de terminal se habrá perdido.
Para evitar esto podemos usar screen, que nos permite tener varias “sesiones” abiertas. Si perdemos la conexión al servidor mientras estamos dentro de una de las sesiones al volver a conectar podremos recuperar la sesión en la que estábamos sin problema. Esa es su ventaja número uno.
Su segunda ventaja es que permite dividir la pantalla en dos de forma horizontal y vertical. Esto es algo que pueden hacer los programas gráficos de terminal, podemos tener tantas pestañas abiertas en un servidor como queramos, pero no está de más conocerlo porque hay casos en los que nos resultará más cómodo tener la información de dos sesiones a la vista al mismo tiempo. Aquí hay un listado con los comandos más habituales de screen.
Bonus tip: para simplificar un poco el uso de screen existe una utilidad llamada screenie que no es más que un pequeño interfaz de texto para crear nuevas sesiones o conectarse a las existentes.
¿Cómo hacer que mi teléfono Android aparezca en adb para hacer debug remoto en Linux Mint?
Lo primero es conectar el teléfono por USB al ordenador, si nos pregunta qué modo de conexión queremos usar seleccionaremos el de imágenes.
A continuación ejecutamos lsusb, que nos devolverá varias líneas con información sobre nuestros dispositivos USB, el que nos interesa es el del teléfono, en mi caso (Huawei P Smart):
Bus 001 Device 075: ID 12d1:107e Huawei Technologies Co., Ltd.
Con esta información crearemos el fichero /etc/udev/rules.d/51-android.rules con este contenido:
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", ATTR{idProduct}=="107e", MODE="0666" GROUP="plugdev", SYMLINK+="android%n"
Hecho esto reiniciamos el servicio udev:
/etc/init.d/udev restart
Editamos el fichero ~/.android/adb_usb.ini y añadimos una línea con el identificador del fabricante (12d1 en mi caso) en formato hexadecimal:
0x12d1
Y arrancamos el servidor de adb:
adb kill-server && adb start-server
Y ¡listo! Nos vamos a las opciones del desarrollador del teléfono, activamos la opción Depuración por USB y ya podremos inspeccionar desde el ordenador las ventanas de Chrome.
Acceder a Cisco ASDM desde Linux
Para acceder a la configuración del firewall:
sudo apt-get install icedtea-plugin
javaws https://xx.xx.xx.xx/admin/public/asdm.jnlp
Eliminar cadenas en nombres de ficheros
Para eliminar una cadena que está presente en un conjunto de ficheros podemos usar este pequeño script:
for i in *.avi
do
mv "$i" "`echo $i | sed 's/CADENA//'`"
done
Dos trucos para aumentar la productividad con el ordenador
Me he encontrado con este magnífico artículo llamado Avoiding the productivity mouse-traps. Es una lista de consejos para ganar tiempo al usar el ordenador utilizando el teclado en vez del ratón. Voy a listar aquí dos que no conocía y que me parecen imprescindibles:
- Aumentar la velocidad de repetición del teclado y disminuir el intervalo de repetición. Esto me ha llamado mucho la atención, en todos los años que llevo trabajando con ordenadores nunca me había dado cuenta. Al seleccionar texto con el teclado pasa un pequeño intervalo de tiempo entre que pulsamos la tecla del cursor y la selección empieza a rellenarse. Reduciendo este tiempo se gana un poco de tiempo (milésimas de segundo, quizá, pero a lo largo de un día entero suma). Igualmente aumentando la velocidad de repetición la selección se lleva a cabo más deprisa. Adjunto aquí una captura de la pantalla de propiedades del teclado para referencia en el futuro:
- El plugin Ace Jump para Sublime Text 3. Esto también me ha dejado asombrado, me parece genial. Nos permite saltar rápidamente a cualquier línea que tengamos en pantalla. Lo he estado usando diez minutos y creo que ya nunca podré dejarlo.
Eliminar elementos del listado de ventanas en Cinnamon
Me permití un caprichillo en el Black Friday de este año, un monitor de 10 pulgadas que básicamente voy a usar para las ventanas de Developer Tools de Chrome.
Cuando me llegó estuve un rato probándolo y me di cuenta de que como normalmente tengo varias de esas ventanas abiertas se me iba a llenar el panel inferior (donde tengo la lista de ventanas) de botones para esas ventanas. Me acordé de que Cinnamon está escrito en JS así que investigué un poco a ver si podía evitarlo, y efectivamente se puede.
Lo que hay que hacer es editar el fichero /usr/share/cinnamon/applets/window-list@cinnamon.org/applet.js, y añadir este código en la línea 1063 (después de la línea let appButton = new AppMenuButton(this, metaWindow, alert);):
if (appButton._label.text.indexOf("Developer Tools") > -1) return;
De esta forma evitamos que se incluyan en la lista de ventanas los botones correspondientes a las ventanas de las Developer Tools. Por supuesto funciona cambiando el texto por cualquier otro si queremos esconder alguna otra ventana de la lista.
Algo que me vino muy bien es tener abierta una ventana de consola con este comando:
tail -f ~/.cinnamon/glass.log
que nos permite ver el log de Cinnamon y escribir en él desde JS con la función global.log(). Para recargar el applet de la lista de ventanas ejecutamos el siguiente comando:
dbus-send --session --dest=org.Cinnamon.LookingGlass --type=method_call /org/Cinnamon/LookingGlass org.Cinnamon.LookingGlass.ReloadExtension string:'window-list@cinnamon.org' string:'APPLET'
Al final después de conseguirlo me di cuenta de que no me hacía falta todo esto. Basta con crear un nuevo panel en el segundo monitor y añadirle el applet de lista de ventanas, y los botones para las ventanas de ese monitor se muestran ahí, liberando la lista de ventanas del monitor principal.
Actualización 8/2/2018: para que las ventanas de Developer Tools se abran siempre en el nuevo monitor he instalado devilspie, un programa que nos permite definir reglas para ejecutar acciones sobre las ventanas que se vayan creando. Con este programa puedo hacer que estas ventanas (y las de la terminal, por ejemplo) se abran siempre en el monitor auxiliar, pero además este programa permite que esas ventanas no aparezcan en la lista de tareas, lo cual es justo lo que quería hacer al principio. ¡Hurra!
Copio aquí la regla, hay que tener en cuenta que el monitor auxiliar lo tengo a la izquierda del principal, por lo que sus coordenadas empiezan en 0,0.
; Regla para Chrome Developer Tools, skip_tasklist es lo que hace que no salga en la lista de ventanas ( if ( begin ( contains ( application_name ) "chrome-devtools" ) ) ( begin ( skip_tasklist ) ( geometry "600x800+0+0" ) ( maximize ) ) )
Arreglar micrófono en Linux Mint Cinnamon 18
Hay un bug en Linux Mint Cinnamon 18 que hace que el sistema no reconozca el micrófono. Para solucionarlo hay que editar el fichero /usr/share/cinnamon/cinnamon-settings/modules/cs_sound.py y en la línea 607 sustituir
self.inputSelector = self.buildDeviceSelect("output", self.inputDeviceList)
por
self.inputSelector = self.buildDeviceSelect("input", self.inputDeviceList)
Debug de Safari iPad desde VirtualBox en Linux
Para poder hacer debug desde una imagen de Mac osX de Virtualbox de una web corriendo en el Safari de un iPad el procedimiento es este:
- Asegurarnos de que nuestro usuario está en los grupos vboxusers y vboxsf (lo miramos en /etc/group, si no está lo añadimos y reiniciamos).
- Instalar en VirtualBox el pack de extensiones (es un fichero con un nombre como Oracle_VM_VirtualBox_Extension_Pack-5.0.14.vbox-extpack, se instala desde dentro de VirtualBox, en Preferencias -> Extensiones). Esto habilitará USB 2.0 y 3.0. Seleccionamos 2.0.
- Añadir el iPad como dispositivo USB y, atención que esto es lo importante, en la opción Remote seleccionar Any.
- No hay que olvidarse de marcar la opción “Inspector Web” en las opciones de Safari del iPad, está en la sección “Avanzado”.