He decidido instalar Elementary OS 7 basada en Ubuntu 22.04.2 LTS

Entonces, esta es una actualización a "Mi propia guía de ¿Qué hacer después de instalar Elementary OS?"

Disclaimer

Nota 1: La instalación la hice sobre mi Laptop Lenovo IdeaPad que tengo desde ya hace varios (muchos) años. Descargué el ISO desde el sitio oficial y usé Etcher para generar una USB booteable.

Nota 2: Aunque tengo todo particionado y separado (archivos de sistema, archivos de trabajo, etc), recuerda siempre respaldar archivos.

Nota 3: La instalación de Elementary OS 7 es, desde que recuerdo, la mas sencilla y limpia que he visto de todas las distribuciones, se instaló sin problemas.

fstab

Afortunadamente tengo backups de este archivo, por lo que pude fácilmente re-configurar el montaje de mis particiones. No voy a entrar en detalles por que al usuario lector le debería ser indiferente y debe considerarse esto mas como una nota personal del autor.

Chrome

Uno de los primeros pasos que siempre hago, es instalar Google Chrome, ya que desde hace muchos años es mi navegador predefinido (pese a lo pesado que se ha vuelto). Así me permite sincronizar mis usuarios de Google Account ya sea personales y de trabajo.

Instalando tools básicas

El primer paso para incluir (desafortunadamente) repositorios no muy del todo libres. Así que, en fin, necesario.

sudo apt install software-properties-common  

Bluetooth

Como en la versión anterior, hay que verificar primero si el bluetooth está bloqueado, y de ser así, hay que desbloquearlo.

sudo rfkill list
0: ideapad_wlan: Wireless LAN
    Soft blocked: no
    Hard blocked: no
1: ideapad_bluetooth: Bluetooth
    Soft blocked: yes
    Hard blocked: no
2: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
3: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

Desbloqueamos y reiniciamos

sudo rfkill unblock bluetooth
sudo service bluetooth start

Y reiniciamos equipo.

Codecs Multimedia

Instalamos codec's no libres (lamentablemente necesarios para reproducir algunos archivos multimedia propietarios)

sudo apt install ubuntu-restricted-extras
sudo apt install libavcodec-extra
sudo apt install libdvd-pkg

JAVA

Instalando Java (versión desde los repos, tal vez no la mas reciente)

sudo apt install default-jre default-jdk

Seahorse

Instalamos el administrador de claves GPG

sudo apt install seahorse caja-seahorse

Synapse

Synapse es el mejor lanzador de aplicaciones que he probado, es simple, sencillo, limpio y por sobre todo, efectivo, así que, procedemos a instalarlo.

sudo apt install synapse

Luego hay que configurarlo para que el Shortcut Super+Space lo dispare.

Instalando Apps de Gnome

sudo apt gnome-system-monitor gnome-terminal eog baobab

Detalle con los Workspaces

La forma en que los desarrolladores de Elementary OS decidieron dejar para trabajar con multiples Display's nunca me gusto desde OS Juno, así que, siempre tengo que recurrir a cambiar esta configuración, ya que de manera predeterminada, si conectas un display externo, este es fijo y no puede cambiar de escritorio como en tu display principal.

Basta con hacer el siguiente ajuste:

$ gsettings set org.gnome.mutter workspaces-only-on-primary false

Nota: También puedes instalar dconf-editor, ir a org.gnome.mutter y cambiar la propiedad workspaces-only-on-primary a false.

Instalando Apps

Procedemos a instalar las aplicaciones que mas uso procedente de los repos oficiales de un solo tirón.

sudo apt-get install git vim openssh-server vlc curl wget rdesktop gimp inkscape firefox gedit dconf-editor pavucontrol audacity clementine easytag obs-studio sqlitebrowser winff calibre handbrake planner simplescreenrecorder tmux screen snapd ncdu transmission-cli zsh python3-pip vim-gtk3 peco tig

Error con libdbd-pkg

Por alguna razón, algo se desconfigura y el error del libdvd-pkg aparece.

libdvd-pkg: `apt-get check` failed, you may have broken packages. Aborting...

Procedemos a reconfigurar y corregir

sudo dpkg-reconfigure libdvd-pkg

Prezto

Prezto es el framework para zsh que uso para trabajar desde la terminal, ya que aporta un montón de atajos y ayuda que me ahorra mucho trabajo, así que procedemos a instalarlo.

$ zsh
% git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"
% setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
  ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done
% chsh -s /bin/zsh

Dotfiles

Basado en mi repo.

$ git clone https://github.com/lesthack/dotfiles.git ~/.dotfiles
$ cd ~/.dotfiles
$ git submodule update --init --recursive
$ cd ~
$ ln -s ~/.dotfiles/.vim .vim
$ ln -s ~/.dotfiles/.vim/vimrc ~/.vimrc
$ sudo pip3 install -U Commitizen
$ ln -s ~/.dotfiles/.gitconfig ~/.gitconfig

Agregando bash_profile

El archivo .zshrc debe verse así:

# Source Prezto.
if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" ]]; then
  source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh"
fi
  
# Customize to your needs...
unalias rm
  
source ~/.bash_profile

Instalando Node y npm

Tengo algunos proyectos con node, así que, es imprensindible para mi contar con una herramienta que me permita tener mas de una versión y nvm lo cumple.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

Versiones instaladas:

nvm list

Versiones disponibles

nvm ls-remote

Tray Icons en Wingpanel

El Wingpanel oficial por desgracia, no soporta Try Icons de algunas aplicaciones que uso, como Dropbox, Clementine, Youtube Music, etc. Por lo que siempre me veo en la necesidad de instalar algún artilugio que me lo brinde.

Existe una versión modificada de wingpanel llamada wingpanel-ayatana, en el anterior Post indico como instalarla. Pero para esta vez, opté por instalar un paquete no oficial llamado wingpanel-community-indicators. Pueden encontrar el repo aqui.

Basta con descargar de los releases el paquete e instalarlo.

$ sudo dpkg -i com.github.mvbonin.wingpanel-community-indicators_2.0.10_amd64.deb

wingpanel-community-indicators

Y Listo

Instalando Dropbox (Opcional)

Descargamos el paquete: https://www.dropbox.com/es/install-linux

sudo dpkg -i dropbox_2019.02.14_amd64.deb
sudo apt-get -f install

VirtualenvWrapper

Después de tener años sin actualizar a una versión de Debian/Ubuntu donde la versión default antes era la 2.7; está creo que será la primera vez que instalo en entorno virtual para la versión 3.

$ pip install virtualenvwrapper

Verificamos que en nuestro .bash_profile tengamos el apartado Virtualenvwrappers:

# Virtualenvwrappers
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source ~/.local/bin/virtualenvwrapper.sh

Y teóricamente, en la siguiente sesión de terminal, las herramientas de virtualenvwrapper se generarán y ya estará disponibles.

Virtualbox & Vagrant

Vagrant y Virtualbox me han ayudado a tener maquinas virtuales con especificaciones determinadas de algunos sistemas que tengo en producción y me permite tanto experimentar antes de hacerlo en prod, como trabajar en modo desarrollo. Así que procedemos a instalarlo.

Para agregar el repo de Virtualbox, hay que crear el archivo /etc/apt/sources.list.d/virtualbox.list

deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian jammy contrib

Agregamos las keys e instalamos

$ wget -O- https://www.virtualbox.org/download/oracle_vbox_2016.asc | $ sudo gpg --dearmor --yes --output /usr/share/keyrings/oracle-virtualbox-2016.gpg
$ sudo apt update
$ sudo apt install virtualbox-6.0
$ sudo apt install virtualbox-dkms

Luego vienen los problemas:

virtualbox.service - LSB: VirtualBox Linux kernel module
   Loaded: loaded (/etc/init.d/virtualbox; generated)
   Active: failed (Result: exit-code) since Wed 2019-08-21 10:44:15 CDT; 30s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 15460 ExecStart=/etc/init.d/virtualbox start (code=exited, status=1/FAILURE)

Basado en el post anterior, regrese aquí: https://askubuntu.com/questions/900118/vboxdrv-sh-failed-modprobe-vboxdrv-failed-please-use-dmesg-to-find-out-why

Aplique primero los pasos 1, 2 y 3 de esta respuesta: https://askubuntu.com/a/900121

Reinicié el laptop, y al parecer, ya que tengo el modo UEFI activado, hay que enrollar el mod, introduciendo el password anterior y listo.

Procedemos a instalar Vagrant.

$ wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg
$ echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com jammy main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
$ sudo apt update && sudo apt install vagrant

El problema de Vagrant

Intente probar arrancando una maquina de VM y me topo con lo siguiente:

The provider 'virtualbox' that was requested to back the machine
'default' is reporting that it isn't usable on this system. The
reason is shown below:

VirtualBox is complaining that the kernel module is not loaded. Please
run `VBoxManage --version` or open the VirtualBox GUI to see the error
message which should contain instructions on how to fix this error.

Al ejecutar VBoxManage --version veo:

WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (5.19.0-35-generic) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /sbin/vboxconfig

         You will not be able to start VMs until this problem is fixed.
6.1.42r155177

Y al ejecutar /sbin/vboxconfig

vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
This system is currently not set up to build kernel modules.
Please install the Linux kernel "header" files matching the current kernel
for adding new hardware support to the system.
The distribution packages containing the headers are probably:
    linux-headers-generic linux-headers-5.19.0-35-generic
This system is currently not set up to build kernel modules.
Please install the Linux kernel "header" files matching the current kernel
for adding new hardware support to the system.
The distribution packages containing the headers are probably:
    linux-headers-generic linux-headers-5.19.0-35-generic

There were problems setting up VirtualBox.  To re-start the set-up process, run
  /sbin/vboxconfig
as root.  If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system's documentation for more information.

Acá, regreso al post de los pasos y realizo 5, 6 y 7

Pero antes, tengo que instalar los generics de la versión del kernel que tengo instalada.

$ sudo apt install linux-headers-$(uname -r)

Y listo (Tal vez deba documentar eso un poco mejor).

Shortcuts

El siguiente apartado básicamente copie y pegue del anterior post, así que solo hago mención y dejo tal cual lo había escrito: Personalmente, uso mucho el teclado, y por tanto, me gusta tener shortcuts para las cosas mas repetitivas que hago, como abrir la terminal, abrir la carpeta home, cambiar de canción, etc. Los settings de Elementary OS permiten a gusto esto, pero, hay algunos adicionales que siempre me gusta incluir, entre ellos, estos:

# Uso el terminak de gnome
Ctrl + Alt + T : gnome-terminal --hide-menubar
# Mi lanzador de Apps
Super + Space : synapse
# Monitor de procesos
Ctrl + Alt + Del : gnome-system-monitor
# Captura de pantalla de gnome
Super + PrintScrn : gnome-screenshot -i
# Cambiar wallaper random
Ctrl + Shift + F2 : $HOME/code/Utils/autowallpaper_unsplash.sh
# Bloquear pantalla
Super + L : dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
  
# Pause/Play
Ctrl + Alt + x : dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.google-play-music-desktop-player /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause
# Next Song
Ctrl + Alt + v : dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.google-play-music-desktop-player /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next
# Prev Song
Ctrl + Alt + z : dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.google-play-music-desktop-player /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous
# Stop
Ctrl + Alt + c : dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.google-play-music-desktop-player /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Stop

Nota: En /org/gnome/desktop/wm/keybindings/ están la mayoría de los shortcuts registrados.

Hasta acá llega la guía actualizada, omití algunas instalaciones por que creo que son mas sencillas de hacer y no necesitan estar documentadas.

Si esta cosa le sigue sirviendo a alguien, pues bien, el fin es que me ayude a mi en el futuro como lo hizo la anterior para volver a instalar todo.

Jorge Hernandez :: http://jorgeluis.com.mx

Publicaciones que te pueden interesar...

Evangelion 3.0 + 1.0

Finalmente pude ver Evangelion 3.0+1.0

Resumen 2021

2021 fue un año extraño y todos sufrimos las consecuencias de la pandemia. Por lo pronto, este es mi reporte anual.