tutoriales_void/Guías/Postinstall.md

36 KiB

Guía de instalación postinstall para Void Linux

Autores

Telegram

  • @tenshalito Tuxliban Torvalds
  • @lumaro Luis

ÍNDICE


Creación de usuario normal

Para añadir la cuenta de nuestro usuario se requiere del programa useradd. Con ayuda de éste agregaremos nuestra cuenta a los grupos que sean necesarios, también debemos definir la contraseña de esta cuenta. Procedemos a crear la cuenta y añadirla a varios grupos del siguiente modo. Para un correcto funcionamiento del sistema, prestad atención a los grupos en los que debe estar presente el usuario:

# useradd -m -s /bin/bash -U -G wheel,disk,lp,audio,video,optical,storage,scanner,network,xbuilder USUARIO

NOTA: Al crear el nombre del usuario asegurarse de que sea con letras minúsculas.

Vamos a explicar, brevemente, el significado de cada comando y opción:

  1. useradd: Comando para crear un nuevo usuario o actualizar información predeterminada del nuevo usuario
  2. -m: crea el directorio home del usuario en caso de que no exista
  3. -s: asignará la shell predeterminada a la cuenta que se está creando
  4. /bin/bash: Shell seleccionada para el usuario. Aquí puedes asignar otras como zsh, fish, oksh, loksh o mksh siempre y cuando se instale previamente el shell ya que de manera predeterminada el sistema solo tiene instalados a dash y bash.
  5. -U: crea un nuevo grupo con el mismo nombre para del usuario, y agrega al usuario a este grupo
  6. -G: grupos suplementarios a los que el usuario también formará parte. Cada uno de ellos debe estar separado por una coma y sin espacios entre ellos.
  7. wheel: grupo utilizado para otorgar permisos administrativos temporales teniendo acceso de lectura y escritura a archivos del sistema
  8. disk: acceso a dispositivos de almacenamiento como disquetes, discos duros, ópticos, etc
  9. lp: acceso a impresoras
  10. audio: acceso directo al hardware de sonido para todas las sesiones
  11. video: acceso a dispositivos de captura de video, aceleración de hardware, framebuffer, etc
  12. optical: acceso a dispositivos ópticos como unidades de CD o DVD
  13. storage: acceso a unidades extraíbles como pendrives USB o reproductores MP3; asimismo, permite al usuario montar los dispositivos de almacenamiento
  14. scanner: acceso a hardware de escáner
  15. network: grupo necesario para, generalmente, otorgar acceso a NetworkManager o wpa_supplicant para la gestión de las redes
  16. xbuilder: grupo para poder utilizar el binario xbps-uchroot en la construcción de paquetes con xbps-src
  17. USUARIO: reemplazar con el nombre que deseen para la cuenta o cuentas que vayan a a hacer

NOTA: Si pretende utilizar QEMU para virtualizar otros sistemas, entonces no olvide añadir a su usuario al grupo kvm

Establecer contraseña de usuario

# passwd USUARIO

Permisos administrativos para la cuenta de usuario

En los sistemas unix like, de manera predeterminada, la cuenta que puede ejercer permisos administrativos siempre es root. Para que la cuenta de usuario común pueda ejecutar tareas administrativas como root, es necesario otorgarle los permisos necesarios y utilizar una herramienta que permita la escalada de privilegios desde un usuario común a root. Void permite hacer este tipo de tareas a través de dos herramientas: sudo y opendoas

sudo

sudo es el administrador de sistema predeterminado para delegar permisos de administración en casi todos los sistemas unix like.

Para configurar los permisos hay que editar el fichero /etc/sudoers y es altamente recomendable utilizar visudo y no directamente a otros editores como nano, vim, mousepad, kate, etc porque en caso de algún error de sintaxis hará que sudo quede inutilizable. Al editarlo con visudo éste bloqueará el archivo y guardará los cambios en un archivo temporal para verificar que la sintaxis sea la correcta y después pueda copiarlo al archivo /etc/sudoers

De manera predeterminada visudo tiene asignado a VI, sin embargo, es posible cambiarlo por un editor más amigable exportando la variable del editor antes de llamar a visudo. Por ejemplo:

# EDITOR=nano visudo

Usuario normal con permisos de superusuario

Para permitir que la cuenta de usuario normal pueda realizar la escalada de permisos de administrador, es necesario añadir la siguiente línea a la configuración de sudoers

# visudo
USUARIO	ALL=(ALL) ALL

Añadir usuario al grupo wheel

Para permitir que todos los usuarios miembros del grupo wheel puedan ejecutar tareas administrativas descomentarla quitando #, al inicio de la línea

# visudo
%wheel	ALL=(ALL) ALL

doas

El comando doas es simple en su diseño, contrastando con la complejidad del diseño de sudo. Para la mayoría de las personas (como @tenshalito y @lumaro), es más que suficiente para las tareas administrativas del sistema.

Instalación

# xbps-install opendoas

Eliminar sudo (opcional)

Una vez instalado doas se puede eliminar a sudo para dejar que el primero se encargue de la escalada de privilegios a root para la administración del sistema.

Como sudo forma parte del metapaquete base-system no es posible eliminarlo de la forma habitual, ya que el sistema mostrará un aviso de conflicto impidiendo su eliminación. Para eliminar sudo (o cualquier otro programa que forme parte de base-system) hay que añadir la excepción a una lista de paquetes ignorados por xbps del siguiente modo.

# echo "ignorepkg=sudo" > /etc/xbps.d/10-ignore.conf
# xbps-remove sudo

NOTA: En caso de que el paquete que se desee eliminar tenga dependencias, añadir el flag -R para eliminar de manera recursiva las dependencias no necesitadas por otros paquetes. Ejemplo:

# xbps-remove -R foo

Usuario normal con permisos de superusuario

Para configurarlo basta con crear y editar el fichero /etc/doas.conf del siguiente modo:

# touch /etc/doas.conf
# echo "permit :wheel" > /etc/doas.conf

Lo anterior permitirá que todos los usuarios que se encuentren en el grupo wheel puedan ejecutar comandos con permisos de administración.

Activar persistencia en doas

Algo que diferencia a doas respecto a sudo es que éste último se caracteriza de la persistencia que permite a sus usuarios ingresar la contraseña una vez y no ingresarla de nuevo por un periodo de tiempo corto. Si desea hacer esto con doas, entonces añada esto a su configuración:

# echo "permit persist :wheel" >> /etc/doas.conf

No ingresar la contraseña

Si desea nunca tener que ingresar su contraseña añada lo siguiente a la configuración:

# echo "permit nopass :wheel" >> /etc/doas.conf

Permisos específicos para usuarios

Si desea agregar a un usuario en específico para ejecutar tareas administrativas, entonces la configuración debe quedar así:

permit nopass USUARIO		# No solicitar ingresar contraseña al usuario especificado
permit USUARIO			# Solicitar contraseña para tareas que requieran escalar permisos

Negar la ejecución de comandos

Si fuera necesario negar la ejecución de comandos que requieran permisos de administrador (en caso de que compartan su equipo), pueden hacer una regla sencilla como esta:

permit :wheel		# Usuarios del grupo wheel pueden escalar permisos
deny USUARIO		# Usuario tiene restringida la escalada de permisos incluso si estuviera en el grupo wheel

Si sólo se desea restringir la ejecución de por ejemplo reiniciar el sistema entonces se haría así:

permit :wheel
deny USUARIO cmd /bin/reboot

Para mayor información sobre cómo funciona doas consulte los manuales de doas y doas.conf


Sevicios de runit

Ahora que ya tiene el sistema funcionando, es un buen momento para revisar qué servicios están ejecutándose actualmente y ver cuáles no necesita. Si no está seguro acerca de un servicio en particular, mejor déjelo activo, sin embargo, los siguientes servicios son relativamente seguros eliminar:

  1. Probablemente no necesite tener seis tty, por lo que podría eliminar las que no necesite y dejar por lo menos una activa para poder iniciar sesión. Como recomendación, podría dejar activadas sólo dos tty's y eliminar las demás:
# rm /var/service/{agetty-tty3,agetty-tty4,agetty-tty5,agetty-tty6}
  1. Si no planea conectarse a través de ssh desde otra computadora, entonces puede eliminar el servicio
# rm /var/service/sshd
  1. Si está utilizando una configuración de red estática, puede eliminar el servicio de dhcpcd
# rm /var/service/dhcpcd

NOTA: Cuando se deshabilita un servicio de runit que viene activado de forma predeterminada, si runit recibe una actualización esos servicios se activarán nuevamente. Para evitar que eso pase realizar el siguiente proceso para cada servicio que no se desee que se active nuevamente:

# touch /etc/sv/<nombre del servicio>/down

Conexión a internet (ip dinámica)

Ethernet

Para una conexión rápida es necesario activar el servicio dhcpcd

# ln -s /etc/sv/dhcpcd /var/service

Conexión inalámbrica

Antes de establecer la conexión es necesario revisar que las interfaces no se encuentren bloqueadas, por lo que en caso de estar bloquedas se habilitan con ayuda de rfkill:

# rfkill unblock all

wpa_supplicant

NOTA: Si instaló el sistema a través de una instalación mínima mediante base-minimal o con base-voidstrap, entonces instale wpa_supplicant.

# xbps-install wpa_supplicant

Si instaló el sistema desde una ISO live o desde una instalación normal desde el paquete base-system, entonces no es necesario instalar wpa_supplicant ya que viene incluído en las opciones antes mencionadas.

Identificar interfaz:

$ ip link

A continuación, encontrar el ssid (nombre) de las redes inalámbricas disponibles:

# iw dev INTERFAZ scan | grep -i ssid

Configuración wpa_supplicant:

# cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant-INTERFAZ.conf
$ wpa_passphrase <ssid> <password> | sudo tee -a /etc/wpa_supplicant/wpa_supplicant-INTERFAZ.conf

Activar el servicio de wpa_supplicant y de dhcpcd (de ser necesario, instálelos):

# ln -s /etc/sv/{dhcpcd,wpa_supplicant} /var/service/

Establecer conexión:

# wpa_supplicant -B -D wext -i wlp2s0 -c /etc/wpa_supplicant/wpa_supplicant-INTERFAZ.conf 

NOTA: wlp2s0 es el nombre de la interfaz wifi, en su sistema posiblemente sea distinto.

NetworkManager

Instalar el programa:

# xbps-install NetworkManager

Crear una regla polkit en el siguiente directorio /etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules que contenga lo siguiente:

polkit.addRule(function(action, subject) {
	if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
		return polkit.Result.YES;
	}
});

Por ejemplo usando vim

# vim /etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules

En caso de que su usuario aún no se encuentre en el grupo network, añádalo del siguiente modo:

# gpasswd -a USUARIO network

Desactive los servicios de dhcpcd y wpa_supplicant en caso de que estén activos, ya que ellos y NetworkManager son mutuamente excluyentes:

# rm -fr /var/service/{dhcpcd,wpa_supplicant}

Active los siguientes servicios:

# ln -s /etc/sv/{NetworkManager,dbus} /var/service/

Conectarse a la red de su preferencia usando nmtui. Le ofrecerá una cómoda interfaz gráfica en modo ncurses

$ nmtui

eiwd (opcional)

eiwd es iNet Wireless Daemon (iwd) pero sin dbus. Este paquete sólo proporciona el demonio iwd y no incluye ningún cliente. El uso se basa en el archivo de configuración.

Instalación

Compile e instale el paquete eiwd. Por último, habilite el servicio iwd

$ ./xbps-src pkg eiwd
# xbps-install -R hostdir/binpkgs eiwd
# ln -s /etc/sv/iwd /var/service
Configuración

La configuración de la red, incluidos los ejemplos, se documenta en iwd.network(5). iwd almacena información sobre redes conocidas y lee información sobre redes proporcionadas previamente desde archivos de configuración de red ubicados en /var/lib/iwd; iwd supervisa el directorio en busca de cambios. Los nombres de archivo de configuración de red consisten en la codificación del SSID seguido de .open, .psko .8021x según lo determine el tipo de seguridad.

El archivo de configuración principal se encuentra en /etc/iwd/main.conf.

Conexión a redes

El demonio iwd vigila el directorio /var/lib/iwd en busca de cambios en las configuraciones de red. Cuando detecta la creación de una configuración, inmediatamente se da cuenta de ella. Otras operaciones del sistema de archivos también cambian su comportamiento.

Al ejecutar la herramienta iwd_passhprase mostrará un mensaje de ayuda en stderr. Ejecute la herramienta una vez para obtener información y una segunda vez con > var/lib/iwd/FILE para guardarla directamente.

$ printf password | iwd_passphrase ssid
# printf password | iwd_passphrase ssid > /var/lib/iwd/FILE

NOTA: eiwd no requiere tener un cliente dhcp para asignar una ip

iwd no arranca

Asegúrese de que las siguientes opciones están activadas en su kernel

CONFIG_CRYPTO_USER_API_HASH
CONFIG_CRYPTO_USER_API_SKCIPHER
CONFIG_KEY_DH_OPERATIONS
CONFIG_CRYPTO_ECB
CONFIG_CRYPTO_MD5
CONFIG_CRYPTO_CBC
CONFIG_CRYPTO_SHA256
CONFIG_CRYPTO_AES
CONFIG_CRYPTO_DES
CONFIG_CRYPTO_CMAC
CONFIG_CRYPTO_HMAC
CONFIG_CRYPTO_SHA512
CONFIG_CRYPTO_ARC4
CONFIG_CRYPTO_SHA1

Conexión a internet (ip estática)

Ethernet

  1. Activar la interfaz
# ip link set dev <interfaz> up

NOTA: La interfaz puede llamarse eth0 o enp0s0 o tener un nombre similar a esos dos.

  1. Editar el fichero rc.local
# vim /etc/rc.local

NOTA: reemplazar vim por el editor de su preferencia

  1. Añadir lo siguiente para asignar manualmente una dirección IP
# ip addr add 192.168.1.250/24 dev <interfaz>
  1. Establecer una puerta de enlace predeterminada, ésta debe de ser la misma ip del router:
# ip route add default via 192.168.1.254 dev <interfaz>
  1. Guardar cambios y cerrar el fichero que se estaba editando

  2. Comprobar que ya se tenga conexión a internet

# ping -c 3 8.8.8.8

Al finalizar la prueba deberían tener algo similar a esto:

--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 52.125/52.355/52.537 ms

La segunda línea indica el total de paquetes enviados con éxito o si hubo alguna falla en transmitirlos.

La tercera línea indica las estadísticas de latencia en la transmisión de los datos.

Conexión inalámbrica

Antes de establecer la conexión es necesario asegurarse que la interfaz no se encuentre bloqueada y de ser necesario, desbloquearla con ayuda de rfkill:

# rfkill unblock all
  1. Activar la interfaz
# ip link set dev <interfaz> up

NOTA: La interfaz puede llamarse wlan0 o wlp2s0 o tener un nombre similar a esos dos.

  1. Editar el fichero rc.local
# vim /etc/rc.local
  1. Asignar manualmente una dirección IP
# ip addr add 192.168.1.245/24 dev <interfaz>
  1. Establecer una puerta de enlace predeterminada:
# ip route add default via 192.168.1.254 dev <interfaz>
  1. Guardar cambios y cerrar el fichero que se estaba editando.

  2. Establecer la conexión inalámbrica con ayuda de wpa_supplicant.

NOTA: Se da por hecho que ya se tiene una configuración hecha. Si aún no se tiene, revisar aquí.

# wpa_supplicant -B -D nl80211,wext -c /etc/wpa_supplicant/wpa_supplicant-wlan0.conf -i <interfaz>
  1. Comprobar que ya se tenga conexión a internet
# ping -c 3 8.8.8.8

Configuración de mirrors y repositorios

Selección de mirror

Dependiendo de la ubicación del usuario, cambiar los mirrors ayudarán seriamente con las velocidades de descarga de los paquetes. Los siguientes son mirrors que se sincronizan directamente desde el build-master y, por lo tanto, siempre tendrá los últimos paquetes disponibles.

Repositorio Ubicación
https://repo-fi.voidlinux.org/ UE: Finlandia
https://mirrors.servercentral.com/voidlinux/ USA: Chicago
https://repo-us.voidlinux.org/ USA: Kansas, City

Si estos mirrors no le parecen lo suficientemente rápidos, podrían usar el siguente script que genera una lista de los mirror de primer nivel (los tres anteriores) y los de segundo nivel (no administrados por Void) según su tiempo de respuesta.

Una vez detectado el mirror más cercano a su localización, proceda a reemplazar el mirror predeterminado en caso de ser necesario.

Primero hay que crear el siguiente directorio que servirá para guardar los mirrors:

# mkdir -p /etc/xbps.d

Después copiar las configuraciones predeterminadas al directorio previamente creado:

# cp /usr/share/xbps.d/*-repository-*.conf /etc/xbps.d/

Ahora reemplazar el contenido del mirror predeterminado por el que hayan elegido:

# sed -i 's|https://alpha.de.repo.voidlinux.org|<repositorio>|g' /etc/xbps.d/*-repository-*.conf

Por último, sincronizar el índice del repositorio remoto

# xbps-install -Sf

Instalación de repositorios

Independientemente del repositorio principal que viene activado en una instalación vanilla, Void también proporciona otros dos repositorios para poder ampliar los paquetes disponibles para instalar software, nonfree para paquetes cuyas licencias son no libres; multilib el cual contiene librerías de 32 bits para sistemas de 64 bits.

Para instalar los repositorios proseguir del siguiente modo:

  1. Repositorio nonfree
# xbps-install void-repo-nonfree
# xbps-install void-repo-multilib-nonfree

NOTA: El repositorio multilib-nonfree no está disponible para la versión de Void + Musl

  1. Repositorio multilib
# xbps-install void-repo-multilib

NOTA: El repositorio multilib-nonfree no está disponible para la versión de Void + Musl


Interfaz gráfica de usuario

Los siguientes pasos le ayudarán a ejecutar una configuración básica para un WM o para un entorno de escritorio. Los pasos son esencialmente los mismos

Instalar xorg (servidor gráfico)

El paquete xorg es un metapaquete que instala todo lo relacionado con Xorg. Dicho paquete le dará un inicio "rápido", pero también llenará su sistema de paquetes innecesarios. Una buena práctica sería instalar el paquete xorg-minimal para tener menos dependencias, pero será necesario especificar el controlador de video; o si lo prefiere, instalar todo manualmente para que sepa lo que se instala en el sistema:

# xbps-install xorg-server xauth xinit xf86-input-libinput xf86-video-XXX

Drivers de video

Para identificar qué tipo de tarjeta tenemos instalada en nuestro equipo escribir lo siguiente en la consola:

$ lspci | grep VGA
  1. AMD Raedon: xf86-video-amdgpu
  2. ATI Raedon: xf86-video-ati
  3. Open source NVIDIA: xf86-video-noveau
  4. Intel: xf86-video-intel
  5. Driver genérico: xf86-video-vesa

NOTA: Tenga en cuenta que el driver xf86-video-intel no se requiere en procesadores basados en Sandy Brige o en más nuevos

También puede optar por utilizar el driver modesetting que viene incluído en el kernel. Si se decide por esta opción, asegúrese de tener instalado también el paquete mesa-dri

Window manager

Existen diferentes tipos de WM que manejan las ventanas de manera diferente. Los más comunes que se suelen usar en Void son los siguientes:

  1. Flotante: openbox
  2. Tiling: bspwm, i3wm, sway (Wayland)
  3. Dynamic: awesome, dwm

Entorno de escritorio

Void Linux cuenta en sus repositorios oficiales con soporte para varios entornos de escritorio. De manera oficial soporta a los siguientes:

  1. Cinnamon
  2. Enlightenment
  3. lxde
  4. lxqt
  5. Mate
  6. xfce

De manera no oficial dispone de:

  1. Budgie
  2. Gnome
  3. Plasma
  4. Lumina

Cinnamon Desktop

El escritorio Cinnamon es una bifurcación de GNOME Shell, desarrollado por el proyecto Linux Mint. Se caracteriza por ser un escritorio que apuesta por mantener la ligereza de su predecesor GNOME 2. Para instalar este entorno de escritorio proceder del siguiente modo:

# xbps-install cinnamon gnome-terminal lightdm lightdm-gtk-greeter dbus
# ln -s /etc/sv/{lightdm, dbus} /var/service/

NOTA: Se sabe que Cinnamon actúa de manera extraña al ejecutarlo desde Musl.

Enlightenment Desktop

Para instalar el escritorio proceder del siguiente modo:

# xbps-install enlightenment lxdm lxterminal dbus
# ln -s /etc/sv/{lxdm, dbus} /var/service/

LXDE Desktop

El escritorio lxde es uno de los más ligeros y una buena opción para aquellos equipos que se ven limitados en hardware. Para instalarlo proceder de la siguiente manera:

# xbps-install lxde dbus
# ln -s /etc/sv/{lxdm, dbus} /var/service/

LXQT Desktop

El escritorio lxqt es otro de los proyectos que apuesta por la ligereza, pero sin sacrificar lo estético. Es el resultado de la fusión de Razor-Qt y LXDE. Para instalarlo proceder del siguiente modo:

# xbps-install lxqt lxqt-l10n dbus lxdm
# ln -s /etc/sv/{lxdm, dbus} /var/service/

MATE Desktop

El escritorio Mate está basado en Gnome 2 y se encuentra en constante desarrollo para ofrecer a sus usuarios un entorno atractivo e intuitivo. Para instalar el escritorio proceder del siguiente modo:

# xbps-install mate dbus ligtdm lightdm-gtk-greeter
# ln -s /etc/sv/{lightdm, dbus} /var/service/

Opcionalmente también podría optar por instalar el paquete mate-extra el cual le brindará al usuario una mejor experiencia al proporcionarle por ejemplo salvapantallas, visor de documentos, visor de imágenes, calculadora, terminal, etc

XFCE Desktop

El escritorio xfce se caracteriza por ser también uno de que consumen poco recursos del sistema sin dejar de ser visualmente atractivo y, por supuesto, sencillo de usar. Para instalarlo proceder del siguiente modo:

# xbps-install xfce4 dbus lxdm
# ln -s /etc/sv/{lxdm, dbus} /var/service/

Opcionalmente también podría instalar el paquete xfce4-plugins el cual le brindará al usuario una amplia gama de plugins para el panel, notificaciones o herramientas del sistema.

Budgie Desktop

El escritorio budgie está basado en Gnome 3 y es desarrollado por el projecto Solus. Para instalar el escritorio proceder del siguiente modo:

# xbps-install budgie-desktop gnome-terminal dbus gdm
# ln -s /etc/sv/{gdm, dbus} /var/service/

GNOME Desktop

Para instalar el escritorio proceder del siguiente modo:

# xbps-install gnome dbus gdm
# ln -s /etc/sv/{gdm, dbus} /var/service/

PLASMA Desktop

Para instalar el escritorio proceder del siguiente modo:

# xbps-install kde5 dbus
# ln -s /etc/sv/{sddm, dbus} /var/service/

Opcionalmente también puede instalar el paquete kde-5-baseapp el cual le proveerá de un editor de texto plano, un gestor de archivos y un emulador de consola

Lumina Desktop

El escritorio Lumina tiene la particularidad de caracterizarse por no requerir ninguno de los marcos de implementación de escritorio de uso común (dbus, policykit, consolekit, systemd, hald, etc.) Para instalar el escritorio proceder del siguiente modo:

# xbps-install lumina slim
# ln -s /etc/sv/slim /var/service/

Instalar un gestor de inicio

Void provee distintos Display Managers o Gestor de Inicio para poder iniciar sesión en el escritorio que hayamos instalado de manera gráfica. Algunos escritorios tienen sus DM el cual lo instala de manera automática, sin embargo, es posible reemplazarlo por otro que sea del agrado del usuario. A continución se mencionarán los más comunes

GDM

Para instalarlo y activarlo proceder del siguiente modo:

# xbps-install gdm
# ln -s /etc/sv/gdm /var/service/

LightDM

Para instalarlo y activarlo proceder del siguiente modo:

# xbps-install lightdm lightdm-gtk-greeter
# ln -s /etc/sv/lightdm /var/service/

LXDM

Para instalarlo y activarlo proceder del siguiente modo:

# xbps-install lxdm
# ln -s /etc/sv/lxdm /var/service/

SDDM

Para instalarlo y activarlo proceder del siguiente modo:

# xbps-install sddm
# ln -s /etc/sv/sddm /var/service/

SLIM

Para instalarlo y activarlo proceder del siguiente modo:

# xbps-install slim
# ln -s /etc/sv/slim /var/service/

Inicio manual a través del comando startx

Para iniciar sesión a través del comando startx es necesario tener instalado el paquete xinit y tenerlo configurado correctamente. Para ello, primeramente será necesario crear un fichero llamado xinitrc y guardarlo en nuestro directorio home con la característica de oculto.

$ touch "$HOME"/.xinitrc

Ahora, dependiendo del escritorio se haya instalado, habrá que añadir la linea correspondiente para poder iniciar X11

exec mate-session	# Para iniciar Mate-Desktop
exec startxfce4		# Para iniciar XFCE
exec startlxde		# Para iniciar LXDE
exec startkde		# Para iniciar KDE-Plasma
exec gnome-session	# Para iniciar Gnome
exec cinnamon-session	# Para iniciar Cinnamon
exec startlxqt		# Para iniciar LXQT

Autologin e inicio automático de X11

Crear un servicio de autologin para runit

# cp -R /etc/sv/agetty-tty1 /etc/sv/agetty-autologin-tty1

El nombre del servicio que se vaya a crear es necesario que termine con el nombre válido de alguna de las consolas virtuales activadas. De lo contrario el servicio no funcionará.

Ahora hay que editar el siguiente fichero /etc/sv/agetty-autologin-tty1/conf para añadir lo siguiente:

GETTY_ARGS="--autologin USUARIO --noclear"
BAUD_RATE=38400
TERM_NAME=linux

Si se inició sesión en la consola virtual uno (tty1), ahora es un buen momento para cambiar a otra para continuar con la configuración.

Desactivar el servicio de la tty1 y activar el servicio para el autologin:

# rm /var/service/agetty-tty1
# ln -s /etc/sv/agetty-autologin-tty1 /var/service

Ahora, cada vez que el sistema inicie, el autologin a la consola virtual uno será de forma automática pero no en X11, por lo tanto, para conseguirlo añadir en el archivo de perfil de su shell en uso (bash de manera predeterminada) lo siguiente:

if [ -z "$DISPLAY" ] && [ "$(fgconsole)" -eq 1 ]; then
	exec startx
 fi

Configuración de teclado

Para establecer de forma permanente la distribución de nuestro teclado en X11, es necesario agregar un archivo de configuración en el que se defina la clase de entrada preferida estableciendo la opción XkbLayout. Para ello, será necesario crear el siguiente directorio: /etc/X11/xorg.conf.d/10-keyboard-user.conf

Section "InputClass"
	Identifier		"system-keyboard"
	MatchDriver		"libinput"
	MatchIsKeyboard		"on"
	Option			"XkbLayout"	"latam" 		# Para la distribución de español latinoamericano. Si se desea la distribución para español España, reemplazar *latam* por *es*
	Option			"XkbOption"	"grp:alt_shift_toggle"	# Alternar distribución de teclado en caso de tener definido dos opciones

NOTA: Si no sabe qué tipo de distribución de teclado tiene, revisar los siguientes ejemplos:

  1. Distribución de teclado en español latinoamericano
  2. Distribución de teclado en español España

Panel táctil (opcional)

Para habilitar el panel táctil (touchpad) de las computadoras portátiles basta con añadir la configuración al mismo directorio en el que se definió la configuración del teclado, con la diferencia de que el fichero tendrá un nombre similar a 15-touchpad.conf al que se le añadirá lo siguiente:

Section "InputClass"
	Driver "libinput"
	MatchIsTouchpad "on"
	Option "Tapping"		"on"		# Activar comportamientos al hacer clic
	Option "NaturalScrolling"	"true"		# Desplazamiento natural (inverso)
	Option "ScrollMethod"		"foo"		# Método utilizado para el scroll: edge para desplazamiento de borde (vertical) y twofinger para hacerlo con dos dedos
	Option "DisableWhileTyping"	"true"		# Desactivar touchpad mientras se escribe 

Ajustar brillo de pantalla

Después de haber instalado Void, lo más probable es que el brillo de la pantalla sea demasiado alto. Para arreglarlo, a continuación se indicará cómo solucionar ese tipo de problemas.

Brillo de pantalla

Para cambiar el brillo de la pantalla existen varias utilidades, entre las más comunes se encuentran xbacklight, brighnessctl, brillo, light, sin embargo, el programa que se recomendará en esta sección será light debido a que entre sus diversas funciones, también nos permitirá realizar los ajustes de intensidad de brillo de pantalla tanto en X11, como en modo totalmente CLI desde una tty y además, también es posible utilizar este program sin ninguna restricción en la versión de Void Musl.

Instalación

Para instalar el programa basta con lo siguiente:

# xbps-install light

Uso de light

Para efectos de uso concretos, sólo se usarán tres comandos de ajuste del brillo: disminuir, aumentar y definir. Ejemplos:

light -A 5		# Incrementa la intensidad de brillo de la pantalla en intervalos de 5%
light -U 10		# Reduce la intensidad de brillo de la pantalla en intervalos de 10%
light -S 80		# Ajusta la intensidad del brillo de la pantalla al 80%

Para ver las otras opciones que soporta light consulta su manual

Una vez se conoce los comandos básicos, lo que que falta es definir los atajos de teclado que se utilizarán para realizar los cambios del brillo.


Fuentes