📰 Canal de DebugLife

[texto]#Linux #Post_Installation #Artix Ahora hablaremos

#Linux #Post_Installation #Artix
Ahora hablaremos de servidores de audio y algo de su configuración.
No recuerdo bien si el servidor de audio se instalaba automáticamente cuando instalabas un DE, pero haré de cuenta que aún no has instalado uno.
Linux, por defecto, viene con ALSA, que es el conjunto de drivers que viene el kernel para configurar los dispositivos de audio en la computadora. También, es una de las alternativas para obtener sonido en tu sistema. ALSA es la opción más anticuada y ya no es tan usada hoy en día. No cubriré la configuración de ALSA porque creo que es mejor usar Pipewire o Pulseaudio en su lugar. Sin embargo, como estos programas son capas que funcionan sobre ALSA, debemos crear el archivo /etc/modprobe.d/alsa.conf y poner dentro de ese archivo lo siguiente:
 options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
options snd-pcsp index=-2
options snd-usb-audio index=-2

Esto le dirá al sistema que no configure ciertos dispositivos como placa de sonido principal. Si tienes más de una tarjeta de sonido y quieres que no se configure alguno como principal, verifica el nombre que el kernel le da y lo agregas al archivo que recién creamos con el valor -2 para que quede excluido.
Si quieres usar ALSA en vez de las opciones más modernas, entonces revisa su artículo en la wiki de Arch.

Pulseaudio es un servidor de sonido general que se apoya en ALSA para detectar los dispositivos de audio en tu computadora. Para instalarlo:
sudo pacman -S pulseaudio pamixer pavucontrol
sudo pacman -S --asdeps pulseaudio-alsa pulseaudio-bluetooth pulseaudio-equalizer

Con esto, tendrás a pulseaudio funcionando a plenitud. Si no usas auriculares bluetooth, puede que quieras evitar instalar la dependencia pulseaudio-bluetooth.
Pavucontrol es un font-end gráfico para controlar el sonido y pamixer es el front-end para consolas (útil para scripting).
Pulseaudio funciona "out of the box", es decir, no hace falta hacer nada más para que funcione. Puede que necesites reiniciar tu sistema. Sin embargo, hay gente a la que le gusta configurar un poco más su funcionamiento. Si quieres fijarte qué puedes hacer y qué no, revisa primero la wiki de Arch. No lo cubriré porque, para mí, lo que viene por defecto en Pulseaudio funciona y está bien.
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]¿Estás harto de instalar nuevos paquetes y tener

¿Estás harto de instalar nuevos paquetes y tener que reiniciar la shell o terminal para poder usar esos comandos? Pues, la solución a esto es sencilla. Usaremos un hook para pacman y así refresque la shell para que reconozca los nuevos comandos luego de una instalación o actualización en el sistema.
Para ello, crea el directorio /etc/pacman.d/hooks y /var/cache/zsh. Luego crea el hook /etc/pacman.d/hooks/zsh.hook:
[Trigger]
Operation = Install
Operation = Upgrade
Operation = Remove
Type = Path
Target = usr/bin/*
[Action]
Depends = zsh
When = PostTransaction
Exec = /usr/bin/install -Dm644 /dev/null /var/cache/zsh/pacman

Y luego, en ~/.zshrc, agregas:
zshcache_time="$(date +%s%N)"

autoload -Uz add-zsh-hook

rehash_precmd() {
if [[ -a /var/cache/zsh/pacman ]]; then
local paccache_time="$(date -r /var/cache/zsh/pacman +%s%N)"
if (( zshcache_time < paccache_time )); then
rehash
zshcache_time="$paccache_time"
fi
fi
}

add-zsh-hook -Uz precmd rehash_precmd

Y listo.

A veces, el comando pacman -F (que es para encontrar paquetes) suele lanzar el error "comando no encontrado". Para solucionarlo, agrega a tu ~/.zshrc:
function command_not_found_handler {
local purple='\e[1;35m' bright='\e[0;1m' green='\e[1;32m' reset='\e[0m'
printf 'zsh: command not found: %s\n' "$1"
local entries=(
${(f)"$(/usr/bin/pacman -F --machinereadable -- "/usr/bin/$1")"}
)
if (( ${#entries[@]} ))
then
printf "${bright}$1${reset} may be found in the following packages:\n"
local pkg
for entry in "${entries[@]}"
do
# (repo package version file)
local fields=(
${(0)entry}
)
if [[ "$pkg" != "${fields[2]}" ]]
then
printf "${purple}%s/${bright}%s ${green}%s${reset}\n" "${fields[1]}" "${fields[2]}" "${fields[3]}"
fi
printf ' /%s\n' "${fields[4]}"
pkg="${fields[2]}"
done
fi
return 127
}


Si quieres, revisa más tips y trucos de la wiki de Arch.
Si has tenido problemas, revisa esto.
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]#Linux #Tools Ahora veremos cómo instalar zsh com

#Linux #Tools
Ahora veremos cómo instalar zsh como shell para nuestro usuario y para el usuario root. Primero que nada, modificaremos los permisos del usuario común para que pueda ejecutar comandos administrativos, así no tenemos que estar todo el tiempo en el usuario root para ejecutar comandos. Edita el archivo /etc/sudoers y agrega:
root ALL=(ALL:ALL) ALL # esta linea ya debería estar en el archivo
arc ALL=(ALL:ALL) ALL

Lo mejor es instalar vi y luego correr el comando visudo para hacer la edición anterior:
pacman -S vi
visudo

Luego, cuando hablemos de seguridad, veremos las ventajas y desventajas de hacer esto.

Ahora, con tu usuario no root, procedemos con la instalación de zsh:
sudo pacman -S zsh ttf-terminus-nerd
sudo pacman -S --asdeps zsh-completions zsh-autosuggestions zsh-syntax-highlighting
yay -S --asdeps zsh-powerlevel10k-git

Aquí no solo instalamos zsh, sino también algunos plugins convenientes y una fuente para que se muestren correctamente los glyphs de una configuración de zsh que instalaremos: ohmyzsh.
Asegúrate de configurar tu terminal para que use la fuente Terminess Nerd Font, que es la que acabamos de instalar.
Ahora puedes cambiar la shell de tu usuario. Para fijarte la shell que usa tu sistema actual:
echo $SHELL

Por lo general, deberías tener bash como tu shell predeterminada. Si no quieres cambiar bash, puedes fijarte como configurar bash para que sea más cómodo de usar.
Para cambiar la shell, usamos:
chsh -s /bin/zsh

Luego, sal y entra a la sesión para que tome efecto el cambio. Cuando abras una terminal, ahora estarás usando zsh en vez de bash.
Por cierto, ahora en la terminal te saldrá un menú para configurar zsh, pero vas a salir de allí, ya que primero instalaremos ohmyzsh.
Ohmyzsh es un framework para la configuración de zsh. Es decir, nos facilita la configuración de esta shell sin necesidad de saber mucho. Para instalarlo:
sudo pacman -S --needed  curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Ya con eso, agrega al archivo de configuración ~/.zshrc las siguientes lineas:
source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh

Luego, reinicia la terminal o ejecuta:
p10k configure

Ahora tendría que salirte un menú de configuración para zsh. Cuando termines de seguir todos los pasos, ya tendrás zsh listo para funcionar plenamente en tu sistema.

Ahora, los pasos que siguen son opcionales, pero mejoran la experiencia de usuario.
Existe un problema con un conjunto de caracteres de dibujo de lineas alternativo que hace que los caracteres se muestren incorrectamente con secuencias de escape. Para solucionar esto, agrega a ~/.zshrc:
autoload -Uz add-zsh-hook

function reset_broken_terminal () {
printf '%b' '\e[0m\e(B\e)0\017\e[?5l\e7\e[0;0r\e8'
}

add-zsh-hook -Uz precmd reset_broken_terminal


Puedes configurar zsh para que recuerde directorios recientes. Puedes usar las herramientas cdr o zoxide, pero yo elijo usar dirstack. Para ello, agrega en ~/.zshrc:
autoload -Uz add-zsh-hook

DIRSTACKFILE="${XDG_CACHE_HOME:-$HOME/.cache}/zsh/dirs"
if [[ -f "$DIRSTACKFILE" ]] && (( ${#dirstack} == 0 )); then
dirstack=("${(@f)"$(< "$DIRSTACKFILE")"}")
[[ -d "${dirstack[1]}" ]] && cd -- "${dirstack[1]}"
fi
chpwd_dirstack() {
print -l -- "$PWD" "${(u)dirstack[@]}" > "$DIRSTACKFILE"
}
add-zsh-hook -Uz chpwd chpwd_dirstack

DIRSTACKSIZE='20'

setopt AUTO_PUSHD PUSHD_SILENT PUSHD_TO_HOME

## Remove duplicate entries
setopt PUSHD_IGNORE_DUPS

## This reverts the +/- operators.
setopt PUSHD_MINUS

Y luego usa
dirs -v

Este comando te mostrará los directorios que se van guardando. Si quieres almacenar más de 20 directorios, cambia el valor de DIRSTACKSIZE por el que te parezca más conveniente.
Para cambiar a uno de esos directorios, ejecuta:
cd -1 # cambia el 1 por el número del directorio al que quieres ir

mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]#Linux #Post_Installation #Artix Antes de continu

#Linux #Post_Installation #Artix
Antes de continuar con cualquier cosa, creo que es importante configurar los repositorios de Artix, ya que con ello instalamos los paquetes/programas para nuestro sistema.
El archivo de configuración es /etc/pacman.conf, así que ahí es donde haremos todas las modificaciones.

Busca y descomenta la opción ParallelDowloads y ponle un valor que creas razonable:
ParallelDownloads = 5

Esto descargará/actualizará la cantidad indicada de paquetes a la vez.

Instala:
pacman -S artix-archlinux-support

Esto es para poder usar los repositorios de Arch en Artix. Hay algunos programas en los repositorios de Arch que aún no están en Artix. Sin embargo, ten cuidado de no instalar programas dependientes de systemd, ya que podrías causar conflictos en el sistema. Usa con responsabilidad.
Luego debes configurar en /etc/pacman.conf los repositorios de la siguiente forma (al final del archivo):
 # Artix
[system]
Include = /etc/pacman.d/mirrorlist

[world]
Include = /etc/pacman.d/mirrorlist

[galaxy]
Include = /etc/pacman.d/mirrorlist

[lib32]
Include = /etc/pacman.d/mirrorlist

# Arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch

[multilib]
Include = /etc/pacman.d/mirrorlist-arch

Luego, para actualizar los repositorios y paquetes instalados, ejecuta:
pacman -Syu

Es recomendable que respetes el orden para que se le de prioridad a los paquetes de los repositorios de Artix por sobre los de Arch y evitar conflictos de compatibilidad, entre otras cosas.

Luego activa los repositorios Omniverse que suelen tener paquetes que no están en los repositorios de Artix, pero son más recomendados que los que están en AUR. Omniverse es mantenido por un dev de Artix, es por eso que puede ser más confiable que los propios de AUR. Ya si no encuentras en Omniverse lo que buscas, pues usas AUR.
Debes entender que ambos, AUR y Omniverse, suelen ser no recomendados y que los uses bajo tu propio riesgo.
Agrega antes de los repositorios de Arch en /etc/pacman.conf:
  [omniverse]
Server = https://artix.sakamoto.pl/omniverse/$arch
Server = https://eu-mirror.artixlinux.org/omniverse/$arch
Server = https://omniverse.artixlinux.org/$arch


Para poder instalar paquetes de AUR, instalaremos yay. Puedes usar otro que te guste más, como paru. Es cuestión de gustos.
# Nos aseguramos que estén instalados los siguientes paquetes
pacman -S --needed git base-devel
# Luego
git clone https://aur.archlinux.org/yay.git
cd yay/
makepkg -si

Luego solo queda esperar hasta que se compile y listo. Lo primero que debes hacer con yay antes de instalar cualquier cosa de AUR es:
yay -Syu


Y eso fue todo sobre la configuración de repositorios. Espero que te haya servido y no haya resultado ser complicado. Para el próximo post, instalaremos y configuraremos zsh para que sea más fácil el proceso de configuración e instalación de los demás paquetes. Hasta pronto!
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]#Linux #Post_Installation #Artix

#Linux #Post_Installation #Artix
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]#Linux #Post_Installation #Artix Para los que son

#Linux #Post_Installation #Artix
Para los que son realmente impacientes: si quieres ya poder usar tu sistema y preocuparte luego de hacer cualquier cosa, necesitarás un entorno gráfico. Instala primero xorg
pacman -S xorg

Luego, elije el entorno de escritorio que más te guste:
 pacman -S plasma kde-applications

pacman -S mate mate-extra system-config-printer blueman connman-gtk

pacman -S xfce4 xfce4-goodies

pacman -S lxqt

pacman -Sy moksha-artix

Para ver más información sobre el último DE (desktop environment), revisa esto.
Luego instala un display login manager. El recomendado por Artix es sddm:
 pacman -S sddm-openrc

Y luego inicias el servicio al nivel boot:
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]#Troubleshooting #Linux #Artix_Install Si tu comp

#Troubleshooting #Linux #Artix_Install
Si tu computadora, luego de la instalación, no entra al grub, lo más probable es que el hardware esté buscando el archivo bootmgfw.efi, que es el bootloader de Windows. La solución es sencilla, solo hay que
#Crear el directorio dónde se lo espera encontrar al bootloader 
mkdir -p /boot/efi/EFI/Microsoft/Boot
#Copia el archivo
cp /boot/efi/EFI/grub/grubx64.efi /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi

Cabe destacar que para esto tendrás que iniciar nuevamente el sistema en tu medio de instalación y montar el sistema en /mnt.
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]Esto ha sido todo sobre la instalación del sistem

Esto ha sido todo sobre la instalación del sistema operativo Artix con OpenRC como init. Con esto solo obtendrías un sistema sin apartado gráfico, pero eso lo dejaré para los próximos posts, donde explicaré, al detalle, casi como aquí, la forma correcta de configurar el sistema post-instalación (spoilers, será largo y cubrirá todo lo de las recomendaciones post-instalación de Arch.
Espero que les haya gustado! Hasta pronto!
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]Luego, ejecuta: wpa_cli Dentro del prompt de este

Luego, ejecuta:
wpa_cli

Dentro del prompt de este comando, corre:
scan # encuentra redes disponibles
add_network #agrega una nueva conexión
set_network 0 ssid "MYSSID" # nombre de la red
set_network 0 psk "passphrase" # conttraseña
enable_network 0 # conecta
save_config # guarda la configuración
quit # sale del prompt

Verifica la conexión con:
ping artixlinux.org


Si no logras conectarte, entonces reinicia y cambia a un puerto usb distinto. A veces eso logra hacer que funcione bien esto, ya que Ventoy suele tener mejor compatibilidad en puertos USB 2.0 o 2.5. Luego repite todo de nuevo (la parte de la carga del teclado, montaje y conexión) y prosigue.

Luego actualiza el reloj del sistema corriendo:
rc-service ntpd start


Instala el sistema base:
basestrap /mnt base base-devel openrc elogind-openrc

También, selecciona un kernel. Si quieres estabilidad, usa linux-lts, si quieres el kernel normal, linux, si quieres algo balanceado entre seguro y usable, linux-zen. Estos son los kernels que ofrece Artix, y yo siempre tengo 2 en caso de que el otro falle. También debes instalar linux-firmware, que contiene firmware importante para el kernel:
basestrap linux-zen linux linux-firmware


Ahora genera el fstab:
 fstabgen -U /mnt >> /mnt/etc/fstab        <- edita y verifica que esté bien el archivo

Ahora entrar a tu sistema Artix con:
 artix-chroot /mnt


Una vez dentro, puedes proceder a configurar el sistema base.
Configura el reloj del sistema. Antes de correr los siguientes comandos, si usas dual boot con Windows, revisa esto.
 ln -sf /usr/share/zoneinfo/Region/City /etc/localtime # por ejemplo, en argentina sería /usr/share/zoneinfo/America/Argentina/Jujuy, ajusta según tu lugar de origen

# Genera el /etc/adjtime
hwclock --systohc


Instala un editor y edita /etc/locale.gen:
pacman -S nano
nano /etc/locale.gen

Busca las lineas de tu idioma y la del ingles (en_US.UTF-8) y descomentalas. Luego:
locale-gen

Y para que se configure por todo el sistema, edita/crea el archivo /etc/locale.conf con lo siguiente:
 export LANG="en_US.UTF-8"     <-- cambia esto por tu idioma
export LC_COLLATE="C"


Ahora instala:
pacman -S intel-ucode # si usas intel
pacman -S amd-ucode # si usas amd

Estos son paquetes necesarios para los procesadores (microcodigo ) y los necesitamos ahora porque aprovecharemos que UEFI los puede cargar en tiempo de inicio con grub sin necesidad de hacer nada complicado o tareas extra.
Ahora instalamos y configuramos el grub:
 pacman -S grub os-prober efibootmgr
grub-install --recheck /dev/sda # para sistemas con BIOS
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub # para sistemas con UEFI
grub-mkconfig -o /boot/grub/grub.cfg


Ahora agrega una contraseña para el usuario root:
passwd

Luego crea el nuevo usuario con su contraseña (cambia user por el nombre de tu usuario):
 useradd -m user
passwd user


Configuración de red: Crea el arhivo /etc/hostname (reemplaza todos los myhostname con el nombre de tu gusto):
 nano /etc/hostname
myhostname

Luego agrega a /etc/hosts:
 nano /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname

También agrega a /etc/conf.d/hostname:
 hostname='myhostname'

Ahora instala:
pacman -S dhcpcd wpa_supplicant # este último solo si quieres conexión wifi
pacman -S connman-openrc connman-gtk
rc-update add connmand


Finalmente, configura el teclado editando el archivo /etc/conf.d/keymaps:
keymap="la-latin1"

Y en /etc/vconsole.conf:
KEYMAP=la-latin1


Finalmente, reinicia el sistema:
exit # sale del entorno chroot
umount -R /mnt
reboot

mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar

[texto]#Linux #Artix_Install Aquí hablaré sobre cómo i

#Linux #Artix_Install
Aquí hablaré sobre cómo instalar Artix GNU/Linux con el init OpenRC.

Primero, necesitas un medio de instalación USB. Yo uso Ventoy, que es un programa similar a Rufus, pero con mejor compatibilidad con Linux y con otras características que lo hacen un poco mejor, en comparación. El .iso lo puedes descargar del sitio oficial . Cabe destacar que aquí usaremos uno de los .iso base, siendo todo a mano. Puedes usar la instalación gráfica y librarte de este embrollo, si quieres.

Sigue los pasos de verificación de integridad que indican en el sitio de descargas y estarías listo para comenzar.

Reinicia el ordenador e ingresa a tu BIOS para iniciar el pendrive e ingresar al medio de instalación de Artix. Para poder instalar el sistema operativo a gusto, entra como root, es decir: en el campo que dice user pondrás "root" como usuario y la contraseña es "artix".

Con eso hecho, ejecutarás:
loadkeys la-latin1

Esto cargará el teclado español latino. Por defecto está cargado el teclado en inglés. Si quieres el teclado en español de España, pues cambias el comando a:
loadkeys es


Ahora particiona tu disco con:
cfdisk /dev/sda

Debes fijarte que tu disco sea en efecto /dev/sda, ya que puede que el tuyo tenga otro nombre. Aquí usaremos /dev/sda.
La forma de particionar el disco varía según el tamaño de almacenamiento que poseas y tus necesidades. Por ejemplo, yo, con un almacenamiento chico de 250GB, uso:
- Partición /efi de entre 512MiB a 1GiB
- Partición / para el resto del disco
Pero si posees más almacenamiento, podrías modificarlo a:
- Partición /efi de entre 512MiB a 1GiB
- Partición / de 50 a 100 GB
- Partición /home para el resto
Para verificar si tu sistema soporta UEFI, corre:
ls /sys/firmware/efi/

Si el directorio no está vacío, entonces tu hardware soporta UEFI. Caso contrario, tendrás que usar la partición BIOS.
También deberías evaluar si necesitas Swap o no. Para esto debes considerar cuánta RAM posees y si necesitarás virtualizar la memoria con Swap o quieres poder usar la Suspensión e Hibernación en tu sistema. Lo habitual es tener 4GiB de Swap, si la usarás.

Luego de crear las particiones, tienes que formatearlas:
 mkfs.ext4 -L ROOT /dev/sda2        <- partición root
mkfs.ext4 -L HOME /dev/sda3 <- partición home, opcional
mkfs.ext4 -L BOOT /dev/sda1 <- partición boot BIOS, opcional
mkswap -L SWAP /dev/sda4 <- partición swap

Por supuesto, debes reemplazar el número de /dev/sda con el que corresponda de cada partición que hayas creado con cfdisk.
Si tu sistema es compatible con UEFI, entonces debes formatear así:
 mkfs.fat -F 32 /dev/sda1
fatlabel /dev/sda1 ESP


Ahora monta las particiones:
 swapon /dev/disk/by-label/SWAP                 (si fue creada)
mount /dev/disk/by-label/ROOT /mnt
mkdir /mnt/boot
mkdir /mnt/home
mount /dev/disk/by-label/HOME /mnt/home (si fue creada)
mount /dev/disk/by-label/BOOT /mnt/boot (si fue creada)
mkdir /mnt/boot/efi (UEFI)
mount /dev/disk/by-label/ESP /mnt/boot/efi (UEFI)


Si conectas tu computadora por cable, puedes saltarte este paso.
Para conectarse por wifi, usaremos wpa_supplicant. Primero, revisa el estado de tu placa wifi:

# Revisar el estado del driver
ip link
# Si está "down" el driver del wifi
ip link set *interface* up # reemplazar interface con el nombre de la interfaz


Si no cambia, puede que esté bloqueado el dispositivo. Desbloquealo con:
rfkill unblock wifi


Crea el archivo /etc/wpa_supplicant/wpa_supplicant.conf:
ctrl_interface=/run/wpa_supplicant
update_config=1


Iniciar wpa_supplicant (*interface* es el nombre que muestra ip link a la interfaz, por ejemplo wlan_0):
wpa_supplicant -B -i *interface* -c /etc/wpa_supplicant/wpa_supplicant.conf


Ahora debes correr:
dhcpcd *interface* <-- la interfaz de tu placa

Esto es para que genere las IP correspondientes y puedas conectarte al wifi sin problemas. Si mal no recuerdo, este paso también se debía hacer en la conexión por cable.
mensaje original en DebugLife_Arc_I
Leer más 🗑️ Eliminar