Post instalación Debian GNU/Linux 9 (Stretch)

Más o menos cada dos años (aunque debería decir “when ready“) sale una nueva versión de la rama estable de Debian, y así fue el caso en junio del corriente, pues liberaron Debian 9 “Stretch”.
Para continuar la secuencia de recomendaciones post-instalación que inició con un post de Tomás, es buen momento de llevar mi humilde sugerencia de paquetes para obtener un escritorio usable en esta última versión.

Haciendo un copy-paste del post previo, éste tiene dos destinatarios principales:

  • para el que quiera tener una instalación de debian stretch (estable) usable, vale decir, con algunas aplicaciones más modernas que las que trae por defecto pero tratando de no salir demasiado de los repos oficiales;
  • y para mí, para no perder tiempo haciendo memoria en el caso de tener que reinstalar el sistema.

Y en la constante búsqueda de comodidad digital, cambio nuevamente de entorno de escritorio. Ahora el elegido es Cinnamon (las veces anteriores fueron GNOME y KDE) por tres cuestiones principales:

  • en primer lugar -y fundamentalmente- porque el explorador de archivos Nemo tiene árbol de directorios. Nautilus no lo tiene y eso lo hace inutilizable;
  • en segundo lugar, porque el entorno es estéticamente agradable y razonablemente liviano;
  • y finalmente, porque a diferencia de Mate, está hecho con GTK3 e integra adecuadamente la mayoría de las aplicaciones de escritorio.

Podría haber seguido utilizando KDE, la verdad es que está muy bien armado también, pero me di cuenta que sigo utilizando aplicaciones gtk (gedit, evince, meld) y pareció razonable el cambio.

Bueno, sin mas charla, vamos a lo que nos trae.

Paso 1

Esta instalación ocupará al menos 6 GB, por lo que tengan en cuenta cuanto desean dejar libre para los directorios de usuario y para el crecimiento/mantenimiento del sistema. Para comenzar, partimos de la instalación base de Debian Stretch. Para que se den una idea, hay que seguir la instalación tradicional y cuando presenta el uso que se dará (escritorio, servidor, etc) desmarcar todas las opciones y continuar normalmente.

Paso 2

Una vez instalado y hecho el primer arranque, luego de iniciar sesión lo que suelo hacer al toque es deshabilitar la opción de instalación de paquetes recomendados, puesto que pocas veces son necesarios y además engordan sobremanera el espacio ocupado por el sistema. Para ello basta con ejecutar la línea siguiente para que las próximas instalaciones eviten instalarlos.

echo "APT::Install-Recommends \"false\";" > \
    /etc/apt/apt.conf.d/90-powerup-disable-recommends.conf

Paso 3

Luego, sólo si están detrás de un proxy, hay varias formas de configurarlo: puede ser globalmente mediante las variables de entorno http_proxy y https_proxy o bien mediante la configuración de APT para aquellos casos donde dispongan de un servidor de caché como APT-Cacher. Por ejemplo:

PROXY="http://proxy.miorganizacion.com.ar:8080/"
export http_proxy=$PROXY
export https_proxy=$PROXY
echo "Acquire::http::Proxy \"$PROXY\";" > /etc/apt/apt.conf.d/90-powerup-proxy.conf

Paso 4

Verificar que están configurados los repositorios oficiales de la distribución. Para ello, el archivo /etc/apt/sources.list debería listar, al menos, los siguientes:

deb http://debian.unnoba.edu.ar/debian/ stretch main contrib non-free
deb http://security.debian.org/debian-security/ stretch/updates main contrib non-free
deb http://debian.unnoba.edu.ar/debian/ stretch-updates main contrib non-free
deb http://deb.debian.org/debian/ stretch-backports main contrib non-free

Aquí utilizo el mirror que cordialmente provee la UNNOBA pues gracias a la Asociación Redes de Interconexión Universitaria estamos a pocos saltos de distancia. Traten de no atosigarla de peticiones o utilicen cualquier otro de los mirrors listados oficialmente.

Paso 5

Agregar repositorios externos (no oficiales) que contienen software útil. Este paso es un tanto complejo pues a partir de Stretch es necesario incorporar las claves públicas para poder descargar software adicional. Además, algunas aplicaciones sólo están disponibles para arquitectura de 64 bits. Desde luego, tengan en cuenta que adicionar un repositorio no oficial implica confiar en lo que sus administradores publiquen allí.

Paso 5.1. Paquetes requeridos para las operaciones posteriores

apt install apt-transport-https ca-certificates gnupg wget

Paso 5.2. Instalar las claves públicas de los repositorios

El nombre final indica qué aplicación contiene cada repositorio. Las claves deben alojarse en el directorio siguiente:

cd /etc/apt/trusted.gpg.d/
wget -q https://dl.google.com/linux/linux_signing_key.pub -O- | gpg --dearmor > google-chrome.gpg
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | gpg --dearmor > vscode.gpg
wget -q "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xFC918B335044912E" -O- | gpg --dearmor > dropbox.gpg
wget -q "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xA87FF9DF48BF1C90" -O- | gpg --dearmor > spotify.gpg
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | gpg --dearmor > virtualbox.gpg

Paso 5.3. Definir los repositorios externos

Van todos en el directorio siguiente:

cd /etc/apt/sources.list.d/
# software solo disponible para amd64
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > google-chrome.list
echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > vscode.list
# software disponible para i386 y amd64
echo "deb [arch=i386,amd64] http://linux.dropbox.com/debian sid main" > dropbox.list
echo "deb http://repository.spotify.com stable non-free" > spotify.list
echo "deb http://download.virtualbox.org/virtualbox/debian stretch contrib" > virtualbox.list

Paso 6

Clásico: actualizar la lista de paquetes. Utilizaremos apt en vez de apt-get sólo por cuestión de gusto. Ustedes utilicen el que prefieran.

apt update

Paso 7

Instalar un entorno gráfico. Para la interfaz gráfica hay varios metapaquetes que se corresponden a cada entorno de escritorio: para Cinnamon instalaremos task-cinnamon-desktop; para KDE, instalen kde-plasma-desktop; para GNOME supongo que gnome-core alcanza (no lo sé con certeza); para XFCE instalen xfce4; para LXQT (lo que antes era LXDE) instalen lxqt; y para Mate el paquete mate-desktop-environment . Si alguno quedó afuera me avisan.

Tengo entendido que para placas GPU AMD/ATI ya no es necesario ningún driver privativo, pues el driver open-source Radeon alcanza, pero eventualmente podría ser necesario para placas GPU nVidia, donde el paquete a instalar es xserver-xorg-video-nvidia o alguno de los drivers que aparecen con el nombre nvidia-legacy. Si tienen un chipset Intel, con lo que viene por defecto suele alcanzar.

Sobre el entorno gráfico, como comentaba al inicio del artículo, mi recomendación esta vez es utilizar Cinnamon, pero instalo Openbox también pues suele ser útil para casos de urgencia. Los demás componentes de nombre extraño son bibliotecas que evitan que Cinnamon arroje advertencias o aplicaciones que se prefieren antes de las que vendrían por defecto.

apt install xorg lightdm mesa-utils openbox xserver-xorg-input-all \
    xserver-xorg-input-synaptics

apt install task-cinnamon-desktop cinnamon-l10n desktop-base \
    gir1.2-gtop-2.0 gir1.2-nmgtk-1.0 network-manager-gnome \
    pulseaudio firefox-esr firefox-esr-l10n-es-ar thunderbird \
    thunderbird-l10n-es-ar

Superpaso 8

Instalar paquetes desde los repositorios oficiales. Como en la línea anterior, cada paquete está enlazado a su descripción en el sitio de Debian.

Paso 8.1. Controladores y servicios útiles

apt install acpi-support amd64-microcode cifs-utils dkms fail2ban \
    intel-microcode ntfs-3g ssh unattended-upgrades uptimed

Paso 8.2. Herramientas útiles de línea de comando

apt install acpi alsa-utils aptitude buku bash-completion clamav \
    curl deborphan dialog ffmpeg file fish flac hexedit htop \
    iotop imagemagick iptraf-ng irqbalance jmtpfs less lftp \
    livestreamer manpages markdown mc mlocate nano \
    netcat-openbsd nethogs nmap p7zip-full pv pxz qemu-kvm \
    screen smbclient sshfs tcpdump trickle tshark unrar unzip \
    vbindiff w3m wavemon wget youtube-dl zip

Paso 8.3. Lenguajes de programación, herramientas y documentación

apt install build-essential git git-doc git-man idle3 ipython3 \
    pylint3 python3 python3-doc sqlite3 sqlite3-doc

Paso 8.4. Programas gráficos para fines variados (editores, reproductores, etc)

apt install default-jre filezilla fslint gufw hardinfo keepassx \
    mpv pavucontrol sound-theme-freedesktop sqlitebrowser \
    synaptic vlc wireshark-gtk xdg-user-dirs-gtk xterm

apt install baobab blueman brasero cheese gnome-font-viewer \
    gnome-system-monitor gnote gvfs-backends gvfs-fuse \
    nemo-fileroller rhythmbox transmission-gtk audacious \
    file-roller gedit-plugins ghex gimp gksu gucharmap leafpad \
    meld sound-juicer 

Paso 8.5. Soporte y drivers para impresoras

apt install cups cups-browsed foomatic-db-compressed-ppds \
    foomatic-db-engine openprinting-ppds printer-driver-cups-pdf \
    system-config-printer system-config-printer-udev

Paso 8.6. Iconos y temas de escritorio

apt install arc-theme breeze-icon-theme clearlooks-phenix-theme \
    faba-icon-theme gnome-colors lxde-icon-theme mate-icon-theme \
    mate-icon-theme-faenza tango-icon-theme

Paso 8.7. Versión más moderna del kernel (4.17) y encabezados

Reemplacen amd64 por i386 si su arquitectura es de 32 bits. La primera línea instala la versión de kernel de Estable. La segunda línea (que dice stretch-backports) instala adicionalmente una versión más moderna.

apt install firmware-linux linux-headers-amd64 linux-image-amd64 \
    linux-doc
apt -t stretch-backports install firmware-linux \
    linux-headers-amd64 linux-image-amd64 linux-doc

Paso 8.8. Versión más moderna de la suite LibreOffice (6.1)

apt -t stretch-backports install libreoffice \
    libreoffice-help-es libreoffice-l10n-es \
    libreoffice-gtk3 hunspell-es \
    libreoffice-style-breeze libreoffice-style-sifr \
    libreoffice-style-tango libreoffice-gnome \
    libreoffice-style-colibre \
    libreoffice-style-elementary

Paso 8.9. Firefox más moderno

Omitido pues la que viene por defecto (ERS 52) es una versión bastante moderna.

Paso 8.10. Tipografías

apt install fonts-cantarell fonts-croscore fonts-crosextra-caladea \
    fonts-crosextra-carlito fonts-dejavu fonts-dkg-handwriting \
    fonts-awesome fonts-humor-sans fonts-liberation fonts-noto \
    fonts-oxygen fonts-roboto

Paso 9

Instalar paquetes desde repositorios externos.

apt install dropbox spotify-client virtualbox-5.2

Las aplicaciones siguientes sólo están disponibles en versión de 64 bits, por lo que si su arquitectura es 32… lo siento…

apt install code google-chrome-stable

Con eso queda listo prácticamente todo lo que proviene por fuera de Debian. Lo único queda pendiente es PyCharm, que como no tiene paquete disponible hay que bajarse el comprimido y alojarlo donde crean conveniente.

Paso 10

Listo, con eso les queda un sistema operativo, a mi juicio, casi perfecto.

El tema de escritorio de las capturas es Arc Darker, el conjunto de iconos es Gnome Wine y fuentes son Noto Sans UI Regular en su mayoría.

Todo lo documentado aquí está disponible en un sencillo script que instala Cinnamon y ejecuta todos estos pasos de un saque. Lo dejo disponible por si les sirve: stretch-powerup.sh (20180802)

Algunos consejos adicionales:

  • Para iniciar un programa rápidamente, usen la tecla Win y escriban parte del nombre. Alt+F2 también funciona, pero no tiene autocompletado.
  • La fuente Noto tiene un montón de variantes para distintos idiomas y por ello los cuadros de dialogo de selección de fuente se hacen eternos. Como usualmente uno sólo utiliza los alfabetos latinos, es posible desactivar aquellas fuentes que no se utilizan y reducir el listado. Para ello, descarguen este archivo 95-powerup-restrict-noto.conf y guardenlo en el directorio /etc/fonts/conf.d/
  • Para tener la tipografía clásica en las terminales Fx, ejecuten dpkg-reconfigure console-setup y en “Tipo de letra para la consola” seleccionen “No cambie la tipografía del arranque”.

Falta un paso adicional (súmamente útil) para mejorar toda la tipografía del sistema, pero eso queda para el post del mes que viene. Mientras tanto, si me olvido de algo, o ven algo que sobra, abajo están los comentarios…

Add a comment »3 comments to this article

  1. Buenos dias desde España. Estoy intentando hacer uns distro Linux personalizada basada en Debian para mi trabajo. Es muy especifica, ya que tengo que instalar herramientas para el trabajo diario.
    Me gustaria saber como localizar las claves publicas de los repos que necesito de ciertas herramientas.
    Por cierto, el resto perfecto y muchisimas gracias por el aporte

    Reply

    • Muchas gracias, Javier.

      Si bien muchas de las claves están en keyservers públicos como el de Ubuntu, no encontré un lugar central que las posea a todas. Cada proveedor de software publica las claves públicas de sus repositorios en distintos lados, por lo que es necesario tomarse un tiempo para hallarlas. Usualmente suelen aparecer en alguna página que documente cómo instalar el software o bien en alguna página que indique qué repositorios existen para ese software.

      Por ejemplo, la ubicación de las claves de los repositorios de Google aparece en esta página, mientras que las de Microsoft se indica aquí y la de VirtualBox en este link.

      Para otras aplicaciones he encontrado que los desarrolladores solo indican el keyID, tal el caso de Dropbox y Spotify. En estos casos, mediante wget armo un enlace que descarga la clave que corresponde a ese keyID desde el keyserver de Ubuntu, agregando un prefijo 0x y queda de esta forma.

      A veces no es posible encontrar dónde está publicada una clave. En tales situaciones lo que he hecho es descargar los paquetes .deb correspondientes a cada aplicación, fijarme qué claves añaden al sistema mediante el comando

      apt-key list

      y luego buscar el correo correspondiente a dicha clave en el keyserver de Ubuntu o el del MIT, por caso. Por ejemplo, una que no aparece en este post es la de Steam, que está asociada al correo linux@steampowered.com. Buscando ese correo en el keyserver aparecen varias, de las cuales ésta coincide con el keyID de la que tengo en mi computadora. Esa misma URL es la que utilizaría con wget para descargarla y agregarla al anillo de claves del sistema.

      Pero desde luego, siempre hay que observar estos cambios con cuidado, pues estamos añadiendo repositorios no oficiales, que no tienen el mismo control que los repos de la propia distribución.

      Espero que la información te sea de utilidad y suerte con el proyecto!

      Reply

  2. Hola,
    Lo estoy instalando en estos momentos y he utilizado el script que as creado. de momento me parece genial.
    Lo pruevo en una maquina virtual, y si me justa como queda lo instalare en mi disco dura.
    Saludos y gracias.
    Gente como vosotros hace grande la comunidad…..

    Reply

Leave a Reply to Javier Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Copyright © All Rights Reserved · Green Hope Theme by Sivan & schiy · Proudly powered by WordPress