Void Linux Tips
151 subscribers
3 photos
4 videos
16 links
Este canal tratará de tener el mayor número de consejos o soluciones a las dudas más frecuentes de los usuarios de Void Linux
Download Telegram
INSTALACIÓN EXPRESS VOID LINUX

Sistema de archivos
# mkfs.vfat /dev/sda1
# mkfs.ext4 /dev/sda2 | mkfs.xfs /dev/sda2
---
# mount /dev/sda2 /mnt/
# mount /dev/sda1 /mnt/boot/

Instalación método XBPS
=> Variables
XBPS_ARCH=x86_64
XBPS_ARCH=x86_64-musl
—-
xf86-video-amdgpu
xf86-video-ati
xf86-video-intel
xf86-video-nouveau
—-
# export XBPS_ARCH=x86_64 && xbps-install -S -R https://alpha.de.repo.voidlinux.org/current -r /mnt base-minimal alsa-utils bash bc bgs dejavu-fonts-ttf dhcpcd dmenu dracut dwm ethtool eudev ffmpeg file firefox gcc git grub herbe iproute2 iputils kbd kmod less libreoffice man-pages mesa-vaapi mksh mpv ngetty nnn opendoas pciutils scrot setxkbmap slock slstatus st sxiv tabbed telegram-desktop traceroute trash-cli unzip usbutils vim xclip xdotool xf86-video-ati xfsprogs xorg-minimal xrandr xtools xz zathura-pdf-poppler

Chroot
# for i in sys dev proc; do $(mount --rbind /$i /mnt/$i && mount --make-rslave /mnt/$i); done && cp /etc/resolv.conf /mnt/etc && PS1='(chroot) # ' chroot /mnt /bin/bash

/etc/fstab

# <fs> <dir> <type> <options> <dump> <pass>
/dev/sda1 / xfs defaults,noatime 0 1
tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
tmpfs /home/luis/Git/void-packages/masterdir/builddir tmpfs defaults,noatime,size=16G 0 0

/etc/fstab (EFI)

# <fs> <dir> <type> <options> <dump> <pass>
/dev/sda1  /boot  vfat  defaults,noatime   0     2
/dev/sda2 / xfs defaults,noatime 0 1
tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
tmpfs /home/luis/Git/void-packages/masterdir/builddir tmpfs defaults,noatime,size=16G 0 0

/etc/rc.local
# Default rc.local for void; add your custom commands here.
#
# This is run by runit in stage 2 before the services are executed
# (see /etc/runit/2).
ip link set wlp2s0 up
ip a add 192.168.1.7/24 dev wlp2s0
ip route add default via 192.168.1.1 dev wlp2s0
wpa_supplicant -B -D nl80211,wext -i wlp2s0 -c /etc/wpa_supplicant/wpa_supplicant.conf

Locales (Glibc)
# sed -i "s/#es_ES.UTF-8 UTF-8/es_ES.UTF-8 UTF-8/g" /etc/default/libc-locales && xbps-reconfigure -f glibc-locales

Root
# passwd
# chown root:root / && chmod 755 /

Kernel
=>linux-firmware subpackages
linux-firmware-amd
linux-firmware-intel
linux-firmware-nvdia
linux-firmware-network
linux-firmware-broadcom (dependencia de linux-firmware-network)
linux-firmware-qualcom (target armv7*|aarch64*)
linux-firmware-dvb

# xbps-install linuxX.XX dracut linux-firmware

Grub
# xbps-install -y grub && grub-install --target=i386-pc /dev/sdX

Grub EFI
# xbps-install -y grub-x86_64-efi && grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Void"

Reconfigurar el sistema
# xbps-reconfigure -fa

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

Doas
# touch /etc/doas.conf && echo "permit nopass keepenv :wheel" > /etc/doas.conf

Ngetty
# rm -f /var/service/{agetty-tty3,agetty-tty4,agetty-tty5,agetty-tty6} && ln -s /etc/sv/ngetty /var/service

Salir
# exit
# umount -R /mnt
# shutdown -r now
—-
Referencias:
Guía instalación mínima Void Linux
Guía postinstall Void Linux

Enlaces de interés:
BTRFS configuración básica
Principales bases de sistema (minimal, voidstrap, system)
Reemplazar agetty por ngetty (Si habéis seguido este tip, omitir pasos 1, 2 y 4)
👍71
PRINCIPALES BASES DE SISTEMA PARA VOID LINUX

base-minimal
base-files coreutils findutils diffutils dash grep gzip sed gawk util-linux which tar shadow procps-ng iana-etc xbps nvi tzdata runit-void removed-packages

base-voidstrap
base-files ncurses coreutils findutils diffutils dash bash grep gzip file sed gawk less util-linux which tar man-pages  mdocml>=1.13.3 shadow e2fsprogs btrfs-progs xfsprogs f2fs-tools dosfstools kbd  procps-ng tzdata pciutils iana-etc eudev runit-void openssh dhcpcd  iproute2 iputils iw xbps nvi sudo traceroute kmod removed-packages

base-system
base-files>=0.77 ncurses coreutils findutils diffutils libgcc dash bash grep gzip file sed gawk less util-linux which tar man-pages mdocml>=1.13.3 shadow e2fsprogs btrfs-progs xfsprogs f2fs-tools dosfstools procps-ng tzdata pciutils usbutils iana-etc openssh dhcpcd kbd iproute2 iputils iw wpa_supplicant xbps nvi sudo wifi-firmware void-artwork traceroute ethtool kmod acpid eudev runit-void removed-packages
👍6
Pasos para reemplazar agetty por ngetty:

1. Partimos de un entorno ideal con 2 agetty-tty, en caso de tener las 6 activas, las podemos eliminar:
# rm -f  /var/service/{agetty-tty3,agetty-tty4,agetty-tty5,agetty-tty6}

2. Instalar el paquete:
# xbps-install -S ngetty

3. Cambiar a una tty distinta a la que se utiliza para levantar X11 y que exceda +1 del número de agetty, por ejemplo la tty 3 ya sería de ngetty, lo mejor sería no estar con sesión activa en ninguna, dejo los atajos :
Si estamos en tty => Alt + F3
Si estamos en X => Ctrl + Alt + F3

4. Activar el servicio de ngetty:
# ln -s /etc/sv/ngetty /var/service

5. Verificamos que el servicio está activo y funcionando:
# sv status /var/service/*
run: /var/service/ngetty: (pid 314) 5363s

6. Desactivar los servicios de agetty:
# rm -fv /var/service/agetty*
👍7
Autor: @Visone_Selektah

*El modelo exacto de tu gpu puedes averiguarlo usando lscpi o inxi, es una aplicación que procura información sobre el sistema

# Nvidia Drivers Guía

1.- Después de los recientes cambios en los drivers nvidia y la división de drivers según el modelo de tu gpu, y el abandono de los drivers legacy, se puede hacer esta clasificación según la serie de tu gpu.

1.1. - Para modelos desde la serie GTX 800 tienen que usar los drivers 510, en Manjaro corresponden al driver Nvidia

1.2. - Existen 3 modelos de la serie 7xx que todavía siguen teniendo soporte con los últimos drivers, 510, estos modelos son:
* GTX 750 ti
* GTX 750
* GTX 445

1.3. - El resto de modelos de la serie 7xx usaran los drivers 470 que en Manjaro corresponden al driver nvidia470xx

1.4. - Para modelos anteriores o modelos que usen el driver legacy se usara nvidia390

2.- Instalación de drivers recomendados Nvidia en Manjaro:
doas xbps-install -S nvidia Para los drivers privativos
doas xbps-install -S xf86-video-nouveau mesa-nouveau-dri Para los drivers libres (nouveau)

3.- Dual GPU

3.1- Existen varias formas de manejar dual-gpu dependiendo de las marcas/modelos del combo

3.2- Bumblebee

3.2.1- Comprobar funcionamiento bumblebee
   optirun glxgears -info 

3.2.2- Lanzar aplicaciones con GPU Nvidia
   optirun [opciones] aplicación [parámetros-de-la-aplicación] 

3.2.3- Utilizar nvidia-settings
   optirun nvidia-settings -c:8 

3.2.4- Ejemplos
   optirun wine app/win.exe 

   optirun blender 

3.2.5- Archivo de configuración
  /etc/bumblebee/bumblebee.conf 


3.2.6- Mas información
https://wiki.archlinux.org/index.php/Bumblebee
https://forum.manjaro.org/

3.3- Prime

3.3.1- Lanzar aplicaciones con GPU Nvidia
      prime-run aplicación 

3.3.2- Editar aplicaciones especificas para que usen GPU Nvidia
- Busca en el menú la aplicación, clicka con el botón derecho, elige preferencias y añade en "comando" prime-run al principio.

3.3.3 Mas información
https://wiki.archlinux.org/index.php/NVIDIA_Optimus#Use_switchable_graphics

3.4.- PRIME con Nouveau

3.4.1.- Por defecto los drivers libres en Linux son compatibles con PRIME.
Con la variable de entorno DRI_PRIME podemos elegir con que gpu usar para aplicaciones especificas.
Por defecto las gpu integradas son las que se utilizan por defecto y tienen asignado en valor 0, las gpu dedicadas el 1.
Así para lanzar una aplicación con la gpu dedicada se utilizara:
$DRI_PRIME=1 aplicación

Por Ejemplo para lanzar google-chrome con la gpu dedicada se utilizara:
      $DRI_PRIME=1 google-chrome

3.4.2.- Este método es valido tanto para los drivers nouveau,amdgpu, video-ati, video-intel

3.4.3.- Para comprobar la lista de gpu's disponibles se utiliza:
      xrandr --listprovidersa

3.4.4.- Podemos verificar la información de cada una de las GPU con:

3.4.4.1.- GPU Integrada
DRI_PRIME=0 glxinfo

3.4.4.2.- GPU Dedicada
DRI_PRIME=1 glxinfo

3.5- Optimus switch

3.5.1- Esta opción solo permite usar una gpu a la vez, no como las opciones anteriores.
Tu eliges que gpu usar en cada momento.

3.5.2- Combo Intel/Nvidia

3.5.2.1- Usuarios con LightDM
https://github.com/dglt1/optimus-switch

3.5.2.2- Usuarios con GMD
https://github.com/dglt1/optimus-switch-gdm

3.5.2.3- Usuarios con SDDM
https://github.com/dglt1/optimus-switch-sddm

3.5.3- Combo AMD/Nvidia

3.5.3.1- Usuarios con LighDM
https://github.com/dglt1/optimus-switch-amd

3.5.3.2- Usuarios con GDM
https://github.com/dglt1/optimus-switch-amd-gdm

3.5.3.3- Usuarios con SDDM
https://github.com/dglt1/optimus-switch-amd-sddm
👍7
Media is too big
VIEW IN TELEGRAM
#xbps-src #kernel #custom #nueva #version

Os dejo este vídeo dónde se explica como instalar una nueva versión de kernel que aún no está publicada en los repos oficiales, partiendo de una versión anterior.
👍117
#xbps #xlocate #files #view

Si por alguna razón llegan a eliminar la configuración predeterminada de un archivo del sistema y quieren recuperar el contenido, pueden recurrir a xbps-query:

$ xbps-query -R --cat /path foo

Ejemplo:

$ xbps-query -R --cat /etc/rc.conf runit-void

Nota: si no saben qué paquete contiene el archivo que buscan utilicen xlocate para averiguarlo. Ejemplo:

$ xlocate /etc/rc.conf
👌13🔥3👏2
Media is too big
VIEW IN TELEGRAM
#shell #korn #ksh93 #caracteristicas

A través de este video quiero mostrarles funcionalidades interesantes de este shell, funcionalidades que pocos se han atrevido a usar y que podrían ayudar a mejorar la productividad
🔥12👏1
This media is not supported in your browser
VIEW IN TELEGRAM
#script #cache #pkg #packages #void #posix
Les comparto un script que hice cuya función es mostrar los paquetes que se encuentran en la caché y que ya no están en uso, es decir, versiones de paquetes que ya fueron eliminados.
xbps-install por lo general siempre guarda una versión de los paquetes por si el usuario requiere realizar un downgrade. Este script se encarga de eliminar esos paquetes.
Les dejo un pequeño video para que vean cómo funciona.
https://git.disroot.org/tuxliban/scripts/raw/branch/master/varios/purge_pkgs.sh
🔥10👍31👌1
#tip #xbps #query

Cuántas veces no les ha pasado que cuando quieren buscar un paquete en los repositorio de Void lo primero que hacen es algo similar a esto:

xbps-query -Rs <patrón>

Sin embargo, hacer una búsqueda así terminará mostrando las coincidencias de aquellos paquetes cuyos nombres seas similares al patrón de búsqueda, pero también mostrará coincidencias en la descripción de los paquetes.
Ante esta situación si lo que deseamos es que nos muestre solo coincidencias en el nombre de los paquetes hay que hacer lo siguiente:

xbps-query --regex -p pkgver -Rs '^<patrón>' | cut -d ":" -f1

De este modo podrán tener un enfoque de búsqueda más preciso.

Por ejemplo, supongan que buscan un programa llamado at. Sí solo se usa xbps-query -Rs at, lo único que tendremos será una extensa lista que podría ser abrumadora, en cambio al usar:

xbps-query --regex -p pkgver -Rs '^at-' | cut -d ":" -f1

La búsqueda será más precisa.

Si por el contrario buscan un programa que no logran encontrar por nombre en el repositorio entonces pueden aplicar algo similar, pero para buscar el patrón en la descripción de los paquetes. Por ejemplo:

xbps-query -R --regex -s 'simple screen recorder'

Esto nos devolverá el nombre con el cual el binario fue empaquetado que, para nuestro ejemplo, el paquete se llama ssr
🔥18👏4👍3
#find #template #restricted
El siguiente comando les servirá para mostrar aquellos paquetes que se consideran como "restringidos" y que no se encuentran disponibles en los repositorios oficiales de Void, sin embargo, es posible construirlos a través de xbps-src.

find /path/void-packages/srcpkgs/ -name "template" | xargs grep "^restricted=" | cut -d/ -f2 | column

Adicionalmente, pueden modificar el comando anterior reemplazando la coincidencia en grep para buscar otro patrón en el contenido de las plantillas y, si añaden el flag -i, la búsqueda no será sensible entre mayúsculas y minúsculas.


Enjoy 😎
🔥15👍5👏4🤯1
#xbps #query

Si por alguna razón necesitan revisar el registro de actualización de paquetes, pueden consultarlo a través del siguiente comando:

xbps-query -p install-date -s '' | sort -k2

Esto mostrará una lista ordenada por fecha y hora sobre sobre qué y cuándo se instaló
👍9🔥7