Saltar al contenido

Etiqueta: shell

Usando fish shell y Starship para hacer la terminal más bonita y productiva

Soy de los usuarios de computadoras a los que les encanta usar la terminal para todo lo que sea posible. Tal vez porque vengo de los días de MS-DOS y nunca me acostumbré del todo al mouse ni a las interfaces gráficas de usuario. De hecho, esa es una de las razones por las que amo Linux, pues todo es posible desde la consola. Por ello, hace tiempo decidí dedicarle tiempo a hacerla bonita y agradable visualmente, porque paso más tiempo allí y para ser más productivo. En este caso migré a fish, una shell rápida y con funcionalidades de zsh incluidas por defecto. Adicionalmente, agregué starship para mejorar la apariencia rápidamente utilizando diseños preexistentes.

Ejemplo de mi terminal con fish + starship
Ejemplo de mi terminal con fish + starship

¿Por qué decidí probar fish?

Durante mucho tiempo usé zsh junto con Oh My Zsh. No tengo quejas graves, al contrario, es una buena combinación y permite tener plugins, temas, autocompletado, integración con Git y muchas mejoras sobre Bash. Sin embargo, con el tiempo también puede sentirse un poco pesada o depender de demasiadas configuraciones.

Uno de los detalles que más me gustaron de fish es que muchas de esas cosas que normalmente uno instala con plugins en zsh ya vienen listas desde el inicio. El autocompletado inteligente, las sugerencias basadas en el historial y el resaltado de sintaxis funcionan prácticamente sin esfuerzo.

Eso, para mí, tiene mucho valor. No quería pasar una tarde completa ajustando plugins, revisando compatibilidades o copiando configuraciones de otras personas. Quería una shell moderna, cómoda y rápida, pero sin convertir la configuración de la terminal en otro proyecto paralelo.

Fish se siente más amigable desde el primer uso. Cuando escribes un comando, te sugiere opciones según lo que ya has ejecutado. Si escribes mal algo, el resaltado te ayuda a darte cuenta. Si navegas entre carpetas o usas comandos repetidos, la experiencia se vuelve bastante fluida.

¿Para qué usar Starship?

Después de migrar a fish, quería que la terminal también se viera bien. Pero, siendo honesto, tampoco quería perder demasiado tiempo configurando un prompt desde cero. Ya he pasado por esa etapa de probar temas, mover símbolos, cambiar colores y revisar capturas de pantalla hasta que todo se vea bonito.

Por eso decidí usar Starship. Es un prompt moderno, rápido y compatible con varias shells, como fish, zsh y bash. La idea es sencilla: instalarlo, activarlo y tener una terminal visualmente agradable sin dedicarle demasiadas horas. Staship tiene una base de datos de configuraciones y diseños ya existentes, en la que basta con seleccionar el que más te guste y luego editar detalles menores. Así ahorras mucho tiempo.

Starship muestra información útil directamente en el prompt. Por ejemplo, la rama actual de Git, el estado del repositorio, las versiones de lenguajes como Node.js, Python, Rust o Go, la duración de los comandos y otros datos según el proyecto en el que estés trabajando. Esto es especialmente útil al trabajar con varios repositorios. Puedes estar en un proyecto frontend, luego pasar a un backend, revisar algo viejo en PHP o abrir una carpeta con scripts personales. Tener esa información visible ayuda a evitar errores menores, como ejecutar un comando en la rama equivocada o no notar el entorno en el que estás trabajando.

Ejemplo del terminal de Skatox mostrando el historial de comandos SVN
Ejemplo de mi terminal mostrando el historial de comandos SVN

Instalación en Arch Linux

Como uso Arch Linux, la instalación fue bastante sencilla. En mi caso lo hice directamente con pacman.

sudo pacman -S fish starship

Si todo funciona bien y queremos dejarla como shell por defecto:

chsh -s /usr/bin/fish

Después de cerrar sesión y volver a entrar, fish debería iniciarse como shell principal. Luego hay que activarlo en la configuración de fish. El archivo normalmente está en:

~/.config/fish/config.fish

Allí agregué esta línea:

starship init fish | source

Con eso ya Starship empieza a funcionar al abrir una nueva terminal.

Conclusión

Usar fish y Starship no va a convertirnos mágicamente en mejores programadores, pero sí puede hacer que la terminal sea un lugar más cómodo para trabajar. Y eso importa bastante cuando pasamos muchas horas al día escribiendo comandos, moviéndonos entre carpetas, usando Git, ejecutando pruebas o levantando servicios.

En mi caso venía de zsh con Oh My Zsh, y aunque sigue siendo una gran combinación, fish me pareció más directo. Muchas cosas que antes configuraba con plugins ahora vienen listas desde el inicio. Menos tiempo para ajustar la herramienta y más tiempo para usarla.

Starship completó la experiencia porque me permitió contar con una terminal bonita, informativa y moderna sin dedicar demasiado tiempo a personalizarla. A veces uno solo quiere que las cosas funcionen y se vean bien, sin tener que pasar horas configurando cada detalle.

La terminal sigue siendo uno de mis espacios favoritos en Linux. Personalizarla no es solo una cuestión estética, también es una forma de hacer más agradable el lugar donde trabajamos todos los días. Fish y Starship me dieron justamente eso: una terminal más cómoda, más útil y visualmente mucho mejor.

Deja un comentario

Script para detener servicios en Windows y liberar recursos para mejorar velocidad de videojuegos

Bueno el tí­tulo es largo y verán que prácticamente explica todo, bueno lo que vamos a hacer es crear un Script (mejor conocido en el mundo Windows como un archivo de secuencia de comandos) que desactive cada uno de los servicios necesarios (los innecesarios deberí­as desactivarlos en el arranque) que estan corriendo pero no necesitamos tenerlos en ejecución mientras jugamos, ya que en Windows generalmente tenemos muchísimos servicios corriendo pero nunca utilizamos (sobre todo en Windows Vista) pero estan allí­ para garantizar que el S.O. tenga compatiblidad con las necesidades de todo el mundo, trayendo como consecuencia que el sistema sea mas pesado.

En palabras simples, vamos a crear un archivo que al darle doble clic desactivará servicios (ejem: antivirus, servicios de red, antispyware, actualizadores de software, programas para acelerar el arranque de software, entre otros) que pondrán la computadora un poco mas rápida y poder jugar con gráficos mas fluidos. Para ello primero abrimos Notepad ó Bloc de notas (mejor si tienen Notepad++ del que les hablaré en un futuro artí­culo) y por cada servicio que queremos desactivar escribiremos una lí­nea con la siguiente sintaxis:

NET STOP «NOMBRE_SERVICIO»

Donde NOMBRE_SERVICIO es el nombre de servicio que deseamos detener, el problema es que si tenemos Windows en español, algunos servicios tienen el nombre traducido y otros no, por lo que toca entrar a la lista de servicios con el comando services.msc y leer el nombre de los servicios.

Una vez hecho el proceso para todos los archivos les quedará un archivo como el mí­o, que pueden usarlo para optimizar desactivando muchos servicios de red (no recomendable para usuarios de juegos en línea):

NET STOP "Dispositivo host de UPnP"
NET STOP "AntiVirService"
NET STOP "PDAgent"
NET STOP "Telefonia"
NET STOP "Temas"
NET STOP "Centro de Seguridad"
NET STOP "Windows Defender"
NET STOP "Firewall de Windows"
NET STOP "Ready Boost"
NET STOP "Busqueda de Windows"
NET STOP "Windows Update"
NET STOP "Inicio de Sesion secundario"
NET STOP "TapiSrv"
NET STOP "CryptSvc"
NET STOP "WPDBusEnum"
NET STOP "BITS"
NET STOP "seclogon"

Guardamos el archivo con cualquier nombre pero con la extensión .bat , fijarse que no quede con la extensión .txt como DesactivarServicios.bat.txt ya que no servirá, si sucede esto debes deshabilitar la opción de Ocultar Extensiones del explorer. Una vez guardado, le damos clic derecho, luego en «Ejecutar como Administrador» pues requerimos permisos administrativos para desactivar servicios y empezará a aparecer una pantalla de MSDOS con mensajes sobre la desactivación de servicios. ¡Y listo! a jugar.

Pueden crear otro archivo pero con comandos NET START para iniciar cada servicio desactivado para seguir usando la PC normalmente luego de jugar, y así­ no tener que reiniciar para volver todo a la normalidad.

2 comentarios