Fuera avahi, xss-lock, chrony y nemo; .bashrc más limpio

- inactivo: slock cuando salta el salvapantallas de X (xssstate), en vez
  de xss-lock (glib, D-Bus y logind).
- openntpd en vez de chrony.
- Fuera avahi y nss-mdns (la impresora va por IP fija); quitar limpia
  nsswitch.conf.
- Fuera nemo y upower (y con ellos gvfs y udisks2): las carpetas se abren
  en yazi dentro de st.
- .bashrc: PATH sin repetidos y ex con bsdtar.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C5v1qWDwgkaVM5kjVHGGh8
This commit is contained in:
Alejandro Guerrero 2026-09-28 15:36:16 +02:00
parent ed6bdc080a
commit 73d005dd30
Signed by: alejandrogs73
GPG key ID: 1CFF10953BEE333C
8 changed files with 110 additions and 63 deletions

View file

@ -3,8 +3,15 @@
# =====================================================================
# --- 1. Entorno y Rutas ---
# Priorizar binarios locales y scripts de usuario
export PATH="$HOME/.local/bin:/usr/local/bin:$PATH"
# Priorizar binarios locales y scripts de usuario. Si ya estaban (un bash
# dentro de otro), se quitan antes para no repetirlos.
for d in /usr/local/bin "$HOME/.local/bin"; do
PATH=":$PATH:"
PATH=${PATH//:$d:/:}
PATH=${PATH#:}
PATH="$d:${PATH%:}"
done
export PATH
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
export GPG_TTY=$(tty)
gpg-connect-agent updatestartuptty /bye >/dev/null 2>&1
@ -71,27 +78,20 @@ alias esp32='doas chmod a+rw /dev/ttyUSB0'
# --- 5. Funciones Útiles ---
# Comando 'ex': Descomprime LITERALMENTE CUALQUIER COSA
# Uso: ex archivo.zip | ex archivo.tar.gz
# ex: descomprime lo que sea. bsdtar se entiende con tar (gz, bz2, xz, zst),
# zip, 7z, rar e iso; los comprimidos sueltos, con su herramienta.
# Uso: ex archivo.zip [otro.tar.gz ...]
ex() {
if [ -f "$1" ]; then
case $1 in
*.tar.bz2) tar xjf "$1" ;;
*.tar.gz) tar xzf "$1" ;;
*.bz2) bunzip2 "$1" ;;
*.rar) unrar x "$1" ;;
*.gz) gunzip "$1" ;;
*.tar) tar xf "$1" ;;
*.tbz2) tar xjf "$1" ;;
*.tgz) tar xzf "$1" ;;
*.zip) unzip "$1" ;;
*.Z) uncompress "$1";;
*.7z) 7z x "$1" ;;
*) echo "'$1' formato no reconocido por la función ex()" ;;
for f; do
case $f in
*.tar|*.tar.*|*.t?z|*.tbz2|*.zip|*.7z|*.rar|*.iso) bsdtar -xf "$f" ;;
*.gz) gunzip -k "$f" ;;
*.bz2) bunzip2 -k "$f" ;;
*.xz) unxz -k "$f" ;;
*.zst) unzstd "$f" ;;
*) echo "ex: no sé descomprimir '$f'" >&2 ;;
esac
else
echo "'$1' no es un archivo válido"
fi
done
}
# Forzar IPv4 en Nix (IPv6 del sistema está roto)

View file

@ -1,4 +1,5 @@
[Default Applications]
inode/directory=yazi-st.desktop
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/chrome=firefox.desktop
@ -11,6 +12,7 @@ application/x-extension-xhtml=firefox.desktop
application/x-extension-xht=firefox.desktop
[Added Associations]
inode/directory=yazi-st.desktop;
x-scheme-handler/http=firefox.desktop;
x-scheme-handler/https=firefox.desktop;
x-scheme-handler/chrome=firefox.desktop;

12
home/.local/bin/inactivo Executable file
View file

@ -0,0 +1,12 @@
#!/bin/sh
# Bloquea con slock cuando salta el salvapantallas de X (xset s en .xinitrc:
# 30 minutos sin tocar nada). Mira el estado con xssstate cada 5 s. Los
# vídeos que piden no apagar la pantalla (mpv, Firefox) paran el salvapantallas
# y así tampoco bloquea. Al suspender ya bloquea el hook de zzz.
while :; do
if [ "$(xssstate -s)" = on ] && ! pgrep -x slock >/dev/null; then
slock
fi
sleep 5
done

View file

@ -0,0 +1,8 @@
[Desktop Entry]
Type=Application
Name=yazi
Comment=Carpetas con yazi en st (para xdg-open y Firefox)
Exec=st -e yazi %f
Terminal=false
MimeType=inode/directory;
NoDisplay=true

View file

@ -35,10 +35,10 @@ luz &
bateria &
marcadores &
# Bloquear con slock tras 30 minutos sin tocar nada, y apagar la pantalla un
# minuto después. Al suspender ya bloquea el hook de zzz (--ignore-sleep).
# Bloquear con slock tras 30 minutos sin tocar nada (salvapantallas de X,
# lo vigila inactivo) y apagar la pantalla un minuto después.
xset s 1800 1800
xset dpms 0 0 1860
xss-lock --ignore-sleep -- slock &
inactivo &
exec dwm