Saltar al contenido

Categoría: Gnu/Linux

Cómo tener un terminal de Ghostty siempre disponible al presionar una tecla (en Linux)

Si estas inmerso en el mundo tech, habrás notado que hace unas semana salió la version 1.0 de Ghostty. Un terminal multi-plataforma, con aceleración por GPU y enfocado a usar código nativo. Lo he estado desde entonces y remplazé a Yakuake (que siempre lo he usado en KDE) por este gran terminal, principalmente por el rendimiento que se siente al presionar las teclas. Sin embargo, uno de los problemas que tengo es que por ahora, no tiene una opción para mostrar un terminal al presionar una tecla, que es la principal razón por la que usaba Yakuake. Pues hoy te enseñaré cómo puedes lograr esto en tu sistema.

¿Por qué Ghostty?

Ghostty es una terminal que combina lo mejor de ambos mundos: la simplicidad de las terminales clásicas y las características modernas que necesitamos hoy en día. Es rápida, ligera y altamente personalizable. Además, su rendimiento es notable, especialmente en comparación con otras terminales que he usado en el pasado. La respuesta al presionar las teclas es instantánea, algo que valoro mucho como desarrollador.

Mis requerimientos

Desde los días que jugaba Quake y otros FPS. Me acostumbré a abrir la consola con ~, pero al momento de usar Linux necesito esa tecla así que la cambie por F1, porque esta mas arriba en la mayoría de teclados. En este ejemplo usaré F1 como la tecla que abrirá Ghostty.

Otro requerimiento en Linux es que sea pantalla completa para simular las terminales de antes (nunca superé esto) que ocupan toda la pantalla. Creo que me ayuda a comprender a separar la UI del terminal y evitar mezclar acciones.

Configurando abrir Ghostty con una tecla

Para abrir Ghostty con una tecla, hay 2 cosas que se deben hacer, un script para iniciar la aplicación si no está abierta. Pero si esta abierta, configurar Ghostty para que muestre la ventana de la terminal al abrir.

Paso 1: crear el script

Una vez instalado Ghostty, podemos empezar a crear el script. En mi caso como estoy usando Wayland con KDE, utilizo kdotool para ejecutar acciones a ventanas/aplicaciones. Si utilizas X11 puedes usar xdotool bajo cualquier entorno para controlar la ventana, solo remplaza el comando donde sea necesario.

Luego puedes usar este script detectar si Ghostty está abierto, si lo está, se enfoca la ventana. De lo contrario, se ejecuta el terminal. Puedes guardar este script en un lugar accesible, por ejemplo, en ~/scripts/open_ghostty.sh

#!/bin/bash

APP_NAME="ghostty"
CLASS_NAME="com.mitchellh.ghostty"

if [[ $(pgrep -x "$APP_NAME") ]]; then
# App is running. Get the window ID. Using tail -1 handles multiple instances.
WINDOW_ID=$(kdotool search --class "$CLASS_NAME" | head -1)

if [[ -n "$WINDOW_ID" ]]; then # Check if a window ID was actually found
# Check if the window is minimized (using window state)
WINDOW_STATE=$(kdotool getactivewindow)

if [[ "$WINDOW_STATE" == "$WINDOW_ID" ]]; then # Check if x position is negative (likely off-screen = minimized)
    kdotool windowminimize "$WINDOW_ID"
 else
    kdotool windowactivate "$WINDOW_ID"
    kdotool windowstate --add NO_BORDER --add FULLSCREEN "$WINDOW_ID"
    kdotool windowunmap "$WINDOW_ID" # Important for restoring from   minimized state
  fi
 else
   echo "Error: Could not find a valid window ID for $APP_NAME."
 fi
 else
   # App is not running, launch it
   "$APP_NAME" & # Important: Quote the variable to handle spaces in app name
 fi

Asegúrate de darle permisos de ejecución al script:

chmod +x ~/scripts/open_ghostty.sh

Paso 2: Asignar el script a la tecla F1

  • Abre la aplicación de Configuración del sistema de KDE Plasma.
  • Busca y selecciona «Atajos de teclado» (Shortcuts).
  • Haz clic en «Editar» > «Nuevo» > «Acción global» > «Comando/URL».
  • En el campo «Nombre», escribe algo descriptivo, como «Abrir Ghostty».
  • En el campo «Comando», ingresa la ruta completa a tu script, por ejemplo: /home/tuusuario/scripts/open_ghostty.sh.
  • Haz clic en el campo «Atajo de teclado» y luego presiona la tecla F1 en tu teclado.
  • Si la tecla F1 ya está asignada a otra función, deshabilita o cambia ese atajo antes de continuar.
  • Cierra la ventana de configuración y presiona F1 para probar si el script se ejecuta correctamente.
  • ¡Listo! Ya tienes tu terminal configurada.

Conclusión

Si eres un amante de las terminales y buscas una experiencia rápida y eficiente, te recomiendo probar Ghostty. Con lo leído en este artículo podrás tener acceso inmediato a un terminal y ser mas productivo.

Y tú, ¿qué terminal usas? ¿Has probado Ghostty? ¡Déjame tus comentarios!


Espero que este artículo te haya sido útil. Si tienes alguna pregunta o sugerencia, no dudes en dejarla en los comentarios. ¡Hasta la próxima! 🚀

Deja un comentario

Cómo solucionar el error: Failed to load LUKS superblock on device /dev/dispositivo: Invalid argument

Luego de configurar mi nueva computadora, estuve cifrando las particiones con información personal o del trabajo para mejorar mi privacidad y seguridad. Luego de crifar una de mis particiones que estaba sobre LVM (Logical Volume Manager), me empezó a salir el error Failed to load LUKS superblock on device /dev/dispositivo: Invalid argument en el arranque del sistema.

systemd-cryptsetup[346]: Failed to load LUKS superblock on device /dev/lvm_group/docs: Invalid argument

Al entrar al sistema la partición se montaba correctamente, pero era incómodo ver ese único error en el arranque. Entonces como buen Geek, me puse a averiguar y conseguí solucionar el problema.

¿Por qué aparece el error de Failed to load LUKS superblock on device /dev/dispositivo: Invalid argument?

Este error aparece cuando el sistema intenta montar automáticamente la partición cifrada, pero no puede hacerlo porque la partición donde se encuentra la llave de desencriptación no ha sido montada previamente. Como resultado, el proceso de montado se interrumpe, se muestra el error: Failed to load LUKS superblock on device /dev/dispositivo: Invalid argument, y no se pueden acceder a los datos.

Solución al problema

La solución a este problema es asegurarnos de que las particiones se monten en el orden correcto. Para lograr esto, modifica el archivo /etc/fstab de manera que la partición que debe descifrarse con la llave de desencriptación, no se monte automáticamente durante el arranque. Para hacer esto, debemos editar el archivo /etc/fstab y agregar la opción noauto a la partición que contiene la llave de desencriptación, quedando la partición de esta forma:

NOMBRE_VOLUMEN /dev/lvm_group/NOMBRE_VOLUMEN /etc/ruta_llave        luks,noauto

Esto evitará que el sistema intente montarla automáticamente al inicio, permitiéndonos montar primero la partición que contiene la llave de desencriptación y luego, manualmente, la partición cifrada. Yo elegí montarla al momento de colocar la contraseña para entrar al entorno gráfico y me funcionó.

Así que para arreglarlo, lo que hice fue:

  • Partición con la llave LUKS: montarla automáticamente.
  • Partición cifrada: colocar noauto en fstab para montarla luego manualmente.
  • Montarla utilizando el gestor de unidades de KDE como lo pueden ver a continuación
Aplicación de KDE para automontar unidades
Aplicación de KDE para automontar unidades

¡Listo! Ya pude utilizar mi partición en Linux sin tener errores durante el arranque.

Deja un comentario

Google optimizó en un 40% la gestión de red en Linux

Hace un par de días vi un parche para Linux por parte de Google, sobre como lograron optimizar la gestión de red hasta en un 40% en plataformas con muchas conexiones y procesadores AMD.

Linux en un disquete
Al decir Linux me refiero al kernel

Me llamó la atención por la simplicidad del código, pues solo consiste en re-ordenar el contenido de unas estructuras de red del kernel Linux para evitar que la data quede separada en 2 líneas de cache L3. Claro, Google para poder llegar a este parche tuvo que realizar varias pruebas de bajo nivel para conocer que atributos re-ordenar.

Como este es el tipo de problemas que suelo enseñar en la materia de Sistemas Operativos de la UNET. Me animé a hacer un breve video para mis alumnos y lectores de este blog. El contenido del mismo es sobre como el CPU accede a la memoria, los niveles de caché, el contenido del parche de Linux y los resultados obtenidos en procesadores AMD e Intel.

Como Google optimizó en un 40% la red del kernel Linux

Espero les haya gustado y si desean conocer sobre Sistemas Operativos o Linux, pueden suscribirse a mi canal de Youtube sobre Sistemas Operativos, donde hospedo mis clases de la universidad y publico contenido similar.

Deja un comentario

¡Felices 20 años Archlinux!

Hoy hace 20 años se anunció el lanzamiento de la primera versión de Archlinux 0.1 denominada Homer. Desde hace 16 años es mi distribución de uso diario y he escrito sobre Arch a lo largo de estos años. Una vez que la probé no tuve que seguir buscando una mejor distribución a mis necesidades.

Las principales ventajas de Archlinux

En ese entonces Archlinux era una distribución compilada para la micro-arquitectura i686 en vez de i386, por lo que si tenías un equipo moderno para la época podrías disfrutar de mayor velocidad que el resto de las distribuciones sin tener que recompilar todo como en Gentoo.

Otra de sus principales ventajas, era su simplicidad debido que sigue la filosofía KISS (Keep it Simple Stupid, en español sería Manténlo Estúpidamente Simplemente). A diferencia de otras distribuciones (y creo aún se mantiene) donde al instalar un paquete te instala también las dependencias opciones, documentación, librerías que ofrece, etc. En Archlinux sólo tendrás lo necesario y el resto de cosas va en paquetes separados por lo que tendrás una instalación sencilla y limpia.

Uno de los mayores puntos de Archlinux es que es rolling-release. Esto significa que sólo necesitas instalarlo una vez y puedes actualizarla cada día sin instalar de nuevo. Otras distribuciones requieren que reinstales de nuevo para actualizar o lanzan actualizaciones grandes cada cierto tiempo para mejorar el sistema, como Ubuntu que cada 6 meses saca una nueva versión con nuevo Gnome, nuevos paquetes, etc. En Archlinux, todo los días hay actualizaciones y tienes un sistema seguro. De hecho, tuve instalaciones de 5 años que por problema de disco tuve que reinstalar, pero el sistema siempre fue estable y sin problemas luego de tanto tiempo.

Mi distribución favorita desde el 2006

La wiki de Archlinux

Cuando empecé a usar Arch, me di cuenta que su Wiki era muy simple y a la vez muy concisa. Solo tiene la información necesaria para informarte de algo o resolver un problema. Por esta razón es muy utilizada por otras distribuciones porque la calidad es muy buena.

La wiki de Archlinux es uno de los puntos fuertes de esta distribución de Linux. Al seguir el principio KISS le ha permitido crear excelentes entradas a lo largo de estos años. De hecho uno de mis primeros aportes al software libre, fue traducir artículos al español en la antigua comunidad de Archlinux en Español.

A lo largo de estos años, no ha parado de tener contenido nuevo y de calidad. Mantiene su principio KISS y estoy seguro que seguirá siendo así en los próximos años por venir.

El crecimiento de Arch

Cuando empecé a usar esta distribución en el 2006. No era muy conocida ni las principales, pero poco a poco a ido creciendo por las ventajas mencionadas anteriormente y la disponibilidad para nuevas arquitecturas. Por ello, ahora vez Archlinux en la Raspberry PI, en la SteamDeck de Valve, con núcleo BSD, entre otros.

De hecho ahora se ha popularizado la frase «Yo uso Archlinux» porque inicialmente sus usuarios se sentían orgullosos de usar una distribución no popular pero que erá medio complicada de instalar para un novato, rápida y excelente. Pero como cada vez somos mas usuarios de Arch ya es algo común y se volvió meme.

Deseo que Archlinux siga cumpliendo muchos años mas y tenga la misma visión que actualmente posee. Hasta los momentos, ha sido una excelente distribución que ha crecido gracias a su filosofía.

¡Gracias Archlinux por todos estos años!

Deja un comentario