11 agosto 2018

Debian 9 + Firefox + Thunderbird actualizados



De todos es conocida DEBIAN, "madre de todas", denominado por muchos "el sistema operativo universal". Y aprovechando que el día 16 será su cumpleaños (25 añitos lleva ya con nosotros), vamos a dejar nuestro Debian todoterreno con el mayor grado de actualización y estabilidad posibles.

De Debian destaca su estabilidad,, pero como todo en la vida, esta estabilidad tiene un precio:
  • el software suele ser algo más antiguo que en otras distribuciones
  • en cuanto a controladores (drivers) pueden faltarle algunos, correspondientes a hardware bastante reciente.
Hay versiones de Debian que son consideradas 'no oficiales' únicamente por incluir firmware adicional no libre (cerrado), que no cumple con la filosofía de Debian. Cada usuario puede usar la que quiera: la completamente libre o la que incorpora firmware adicionales de otros fabricantes que no han abierto su código para que pueda ser analizado. Aquí tenéis, por si lo queréis, el enlace directo a la distribución llamada 'non-free'.

Debian mantiene como mínimo 3 líneas de trabajo:

  1. ESTABLE. Su propio nombre lo dice. Es la ultima versión estable liberada. A fecha de esta guia, es la 9.5 (Stretch) 
  1. PRUEBAS (testing), que contiene paquetes que aún no han sido aceptados en la rama estable, pero están a la espera de ello. Esta rama dará lugar a la futura nueva versión, que en este caso se llamará 'Buster'.
  1. INESTABLE (sid). En esta rama es donde trabajan los desarrolladores. Todos es demasiado nuevo y no está totalmente probado.
En mi caso, voy a descargar la última versión estable con Gnome (lo siento, pero me gusta este escritorio...qué le voy a hacer) y después la actualizaré lo más posible, haciendo los siguientes pasos:
  • Cambiaré los repos, para que apunten a "testing", que es el sitio donde se encuentra el software un poco más actualizado, y que está pendiente de enviar a la versión estable.
  • Si fuera necesario, buscaré los drivers que correspondan a los componentes que no me haya localizado la instalación (generalmente la controladora de la wifi). Éstos se encontrarán en "sid".
  • Al cambiarme a la rama 'testing' el kernel se me actualizará a la 4.17 (por defecto, Debian 9 viene con la 4.9 y los que estamos en este mundillo sabemos que acabamos de estrenar la 4.18). Puede obtenerse un kernel actualizado a la última en las construcciones mainline de Ubuntu, que son totalmente compatibles con Debian, pero dado que voy a estar en la rama 'testing' y que esta rama puede presentar incidencias frente a las construcciones mainline de Ubuntu, no actualizaré por esta vía. Si en vez de actualizar a la rama testing me hubiera quedado en la rama estable, entonces sí puedo actualizar el kernel de 2 formas: a través de 'mainline de ubuntu' o añadiendo los repositorios backport de Debian.
  • Actualizaré la versión del navegador Firefox que viene por defecto. En la distribución montan la denominada Firefox ESR 52, pero Mozilla ya va por la versión 60, con muchas mejoras. Entre otras cosas, con la versión 52 no podría acceder al sitio web de las extensiones de Gnome... por lo que ya sabéis que voy a instalar dicho escritorio.
  • Por último, también actualizaré el cliente de correo Thunderbird (será de una forma similar a como voy a hacer con Firefox).
Al final tendré una versión Debian muy actualizada, con un Kernel más moderno, y con el navegador y cliente de correo actualizados, lo que me permitirá usar las extensiones de Gnome que considere conveniente y, en definitiva, darme un airecillo nuevo a esta maravarilla de distribución.

Inconvenientes
Todavía no he tenido ninguno, y todo funciona rapidísimo y estable, pero no olvidéis que estáis mezclando repositorios "testing" con repositorios "sid" (éstos últimos los usaremos para el tema de drivers).

Una buena opción para minimizar riesgos es que, después de que confirméis que vuestra wifi funciona perfectamene, desactivéis el repo 'sid' añadiendo por delante del símblo de la almohadilla #.  Si después véis que algun programa no os lo instala, a lo mejor es que sólo está en 'sid', por lo que volvéis a habilitarlo y ya está; no hay mayor problema.

Tambień tenéis que tener en cuenta que, como instalaremos Firefox y Thunderbird directamente, el sistema ya no podrá actualizarlos desde los repositorios... En el fondo es lo de menos ya que, en Debian, siempre serán versiones anteriores a la última. Este último inconveniente se soluciona muy fácil: cuando sepamos que hay versión nueva, la descargamos y descomprimimos en el mismo lugar... ¡¡Y ya está!!.

Manos a la obra.

Descarga e instalación


  • https://www.debian.org/distrib/ (elegiré la versión Live, para 64 bits). La versión netisntall pesa muy poco porque el grueso de la instalación se lo descarga en red... cada uno podéis usar lo que queráis.
  • Grabación en un USB.  Hay muchas herramientas. Lo más rápido es hacerlo por terminal, pinchando un USB mínimo de 4 GB (recomendable 8 si os habéis bajado la versión DVD completa) y haciendo lo siguiente:
    • Localizo su identificador (por ejemplo con el comando lsblk -fm), y lo 'desmonto'. En mi caso el usb está en /dev/sdc.
    • Grabo la ISO descargada al USB. La forma más rápida es con el comando 'dd'.  Para evitar problemas me suelo cambiar a root y luego ejecuto el siguiente comando: 
    •  # dd if=/home/miguel/Descargas/debian-live-9.5.0-amd64-gnome.iso of=/dev/sdc bs=4M  (ojo con el nombre de vuestro usuario y de la unidad donde tengáis mapeado el USB, para adaptarlo según vuestras necesidades)
Luego ya sólo queda realizar la instalación, arrancande desde el USB.

Nada más instalar Debian, por defecto no tendremos 'sudo', por lo que si queréis poner los comandos tal y como los pongo yo, deberéis instalarlo y crear un archivo para darle permisos a vuestro usuario a usar 'sudo'. Al final del todo de este artículo, en el apartado Post-instalación, he puesto cómo hacer esto.

Cambio a versión "testing"

Una vez que el sistema está instalado completamente, antes de actualizar nada, modificamos el archivo SOURCES.LIST (los repositorios), cambiando todas las referencias a 'stretch' por 'testing', y añadiendo a continuación de main el resto de repos habituales:  contrib y non-free. En la imagen véis cómo lo tengo yo.

Guardamos los cambios con Control+O y salimos del editor con Control+X

Ahora actualizaremos y limpiaremos el sistema:

$ sudo apt clean && sudo apt update && sudo apt upgrade
$ sudo apt install -f    (corrige y elimina paquetes con dependencias rotas)
$ sudo apt autoremove   (elimina paquetes que ya no son necesarios)


Instalando última versión de Firefox
La versión Firefox ESR que viene con esta distribución es la 52 y no incorpora las últimas novedades; además es incompatible con la versión web de las extensiones de Gnome.

Vamos a descargar la última versión estable existente y aprovecharemos los accesos ya existentes, creando un enlace simbólico que apuntará a nuestra nueva versión:

Primero descargamos la última versión estable, desde el sitio de Mozilla, con:


(si no funciona 'wget' posiblemente haga falta instalarlo:  sudo apt install curl wget)
Creamos un directorio en /opt y descomprimimos sobre el mismo:
$ sudo mkdir /opt/firefox
$ sudo tar xjf FirefoxSetup.tar.bz2 -C /opt/firefox/

Es recomendable crear una copia del ejecutable de Firefox anterior que vamos a sustituir, por si la "cagamos" en nuestro ansia de actualización... :-), y por último crearemos un enlace simbólico nuevo que, en vez de apuntar al binario que viene con la distribución, apuntará al binario nuevo que nos hemos descargado y descomprimido en /opt/firefox/:

$ sudo mv /usr/lib/firefox-esr/firefox-esr /usr/lib/firefox-esr/firefox-esr_bak
$ sudo ln -s /opt/firefox/firefox/firefox /usr/lib/firefox-esr/firefox-esr

Así aprovechamos el lanzador de la aplicación que ya existe.
Para futuras actualizaciones simplemente tendréis que:

  1. descargar la nueva versión (con el comando wget anterior o directamente desde la web de Mozilla)
  2. borro completamente el contenido de /opt/firefox con el siguiente comando:   $ sudo rm -rf /opt/firefox/*
  3. descomprimir el archivo descargado sobre /opt/firefox/ (si has descargado desde la web de Mozilla, tu descarga estará en /home/tu_usuario/Descargas; no lo olvides a la hora de descomprimirlo). El proceso de descompresión creará nuevamente la carpeta /firefox dentro de /opt/firefox
  4. por último, eliminar el binario anterior y crear nuevamente el enlace al nuevo binario, de la siguiente forma:
          $ sudo rm /usr/lib/firefox-esr/firefox-esr
          $ sudo ln -s /opt/firefox/firefox/firefox /usr/lib/firefox-esr/firefox-esr


Instalando última versión de Thunderbird
Aquí tenemos que hacer lo mismo:
  • localizar primero dónde está el binario de la distribución, para cuando generemos el enlace simbólico.
  • descargar la ultima versión de 'thunderbird' 
  • crear en /opt un directorio llamado 'thunderbird' y descomprimir el archivo descargado en él.
  • copia de seguridad del ejecutable anterior.
  • creación del nuevo enlace simbólico que apunte a nuestra nueva versión.
Una forma de localizar dicho ejecutable es haciendo uso del 'menú' de aplicaciones. Si vuestra distribución no tiene dicho editor, podéis instalar el programa "alacarte" que nos permite editar fácilmente dicho menú:

$ sudo apt install alacarte

Después, en el dash, teclearemos la palabra "menú" para acceder a dicho programa:


Y una vez dentro del programa navegaremos hasta donde se encuentra el programa Thunderbird, lo seleccionaremos y miraremos sus propiedades.


En 'Command' podemos ver dónde está el binario actual, y lo tendremos en cuenta en la creación del nuevo enlace simbólico.

Ya sabiendo dónde está el binario al que luego llamaremos, sólo queda descargar la última versión, crear un directorio y descomprimir en él, y por último crear el enlace dinámico al nuevo ejecutable descargado:

Descargar en español

Crear el directorio thunderbird en /opt:

$ sudo mkdir /opt/thunderbird

Descomprimir el archivo descargado (si la descarga está en vuestra carpetas de Descargas, cambiaros a ella o poner la ruta entera en el comando de descompresión) en el nuevo directorio creado con:

$ sudo tar xjf thunderbird-60.0.tar.bz2 -C /opt/thunderbird/

Y por último la copia de seguiridad y el enlace apuntando a nueva versión:

$ sudo mv /usr/lib/thunderbird/thunderbird /usr/lib/thunderbird/thunderbird_bak
$ sudo ln -s /opt/thunderbird/thunderbird/thunderbird /usr/lib/thunderbird/thunderbird

Y de esta forma ya podemos usar la última versión, aprovechando el lanzador que ya existe en la distribución.

El proceso de actualización a nuevas versiones es el mismo que en el caso del navegador: 
  1. descarga de la nueva versión
  2. borrado del contenido previo en /opt/thunderbird
  3. descompresión del programa descargado
  4. eliminación del binario anterior (el que habíamos enlazado)
  5. creación del nuevo enlace llamando a la nueva versión del programa
Ahora es buen momento para hacer otra vez la actualización y limpieza.

Drivers no localizados durante la instalación
Durante la instalación, os habréis dado cuenta de que si había algún componente con firmware que no estuviera incluido en la distribución, el propio Debian os habrá avisado.  Lo correcto sería haber apuntado qué componentes son los que faltan de instalar y configurar completamente.
En mi caso, la controladora wifi que tengo es una Atheros QCA9337, y su controlador está contenido en "Ath10k" (que no viene por defecto en esta distribución, aunque ya está incluido en los kernels más nuevos), así que:
Primero vamos a instalar un paquete llamado 'firmware-linux-free' por si tenemos suerte de que el nuestro esté ahí:
$ sudo apt install firmware-linux-free

Si después de reiniciar vemos que seguimos igual (sin wifi), entonces tenemos que intentar localizarlos en los paquetes de debian.org:

https://packages.debian.org/source/sid/firmware-nonfree

Como veis, en esta página, los controladores están separados por categorías:

En mi caso, entro en la sección de firmware-atheros y en la parte inferior de esta nueva página tendréis todas las arquitecturas para este paquete.
Pincháis sobre la vuestra (en este caso sólo hay una -all-, que engloba tanto a 32 como 64 bits) y os descargáis el paquete desde el servidor que queráis.
Una vez descargado lo podéis instalar de varias formas. La más rápida sería entrar con la terminal en la carpeta donde lo habéis descargado y ejecutar el siguiente comando:
$ sudo dpkg -i paquete_descargado.deb

También podéis hacer lo que os indican arriba del todo en esta última pantalla: añadir el repositorio "sid" a vuestro SOURCES.LIST y luego usar Synaptic para localizar el paquete.
Yo lo hice de esta última forma.Mi sources.list ha quedado de la siguiente forma:
Después, a través de Synaptic, podemos localizar nuestro firmware, poniendo en el buscador de synaptic la palabra Atheros...

... marcamos para instalar y en principio ya no nos debería dar ningún problema, salvo que el ordenar sea tan nuevo que ni siquiera esté todavía compilado para el Kernel.

Pues esto es todo.

Ahora mismo disfrutando de un Debian, pura sangre, y actualizado en las aplicaciones que más me interesan y, sobre todo, sabiendo que seguirá siendo muy estable.


Post Instalación
Lo que yo suelo hacer después de una instalación limpia como la que hemos hecho ahora es:
  • instalar y habilitar sudo, ya que por defecto no viene. Para hacer esto debéis cambiaros a 'root'
  • añado mi usuario para permitirle usar sudo
  • genero el filtro de búsquedas rápidas en synaptic
  • instalo los programas que me interesen
# apt install sudo
# nano /etc/sudoers.d/username

Se os abrirá un fichero en blanco donde únicamente tenéis que añadir la siguiente línea:

vuestro_usuario ALL=(ALL)ALL

Programas que suelo instalar (codecs, descompresores, fuentes, etc...)

$ sudo apt install curl wget gdebi linux-headers-$(uname -r) build-essential checkinstall make automake cmake autoconf git git-core aptitude synaptic rar unrar unace p7zip-full p7zip-rar lzip arj sharutils mpack lzma lzop unzip zip bzip2 lhasa cabextract lrzip rzip zpaq kgb xz-utils ttf-mscorefonts-installer fonts-inconsolata fonts-droid-fallback ttf-dejavu ttf-liberation xfonts-terminus fonts-droid-fallback ttf-liberation ttf-dejavu ttf-bitstream-vera fonts-cantarell fonts-liberation ttf-dejavu fonts-oflb-asana-math fonts-mathjax gstreamer1.0-libav x265 hardinfo mplayer smplayer vlc libdvd-pkg ffmpeg libavcodec-extra gstreamer1.0-fluendo-mp3 gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-pulseaudio vorbis-tools sshfs libfolks-eds25 libfolks-dev python-nautilus gir1.2-nautilus-3.0 gir1.2-goa-1.0 gir1.2-gdata-0.0 gnome-session-canberra screenfetch hplip hplip-gui qtcreator inkscape gimp scribus shutter network-manager-vpnc-gnome remmina remmina-plugin-rpd

Si instalas fuentes de forma manual (buscadas en internet) hay que crear de nuevo la caché:

$ sudo fc-cache -fv


Filtro rápido en búsquedas para Synaptic:

$ sudo apt install apt-xapian-index
$ sudo update-apt-xapian-index -vf




Último post

Preparando un espacio de trabajo

            Ahora que tengo tiempo, retomo el blog. Por comodidad (y por capricho) he elegido la siguiente configuración: He optado por un ...