Luego de que ayer «Tuneara» la terminal de mi laptop cual honda civic de los 90 y ciertamente sea una configuración que ya he usado antes y me sigue gustando, entonces, aprovecharé este pequeño tiempo libre para mostrarles como Instalar la terminal de ZSH pasar la capa de personalización de OH MY ZSH y agregarle el tema de POWERLEVEL10K además de algunos plugins opcionales . Todo esto lo montaremos en un WSL (la solución de Micrososft para emular sistemas operativos Linux de manera sencilla) que está corriendo el sistema operativo UBUNTU 20.04 aunque funciona para los sistemas nativos (que no sean de wsl como los instalados en el pc directo).

INSTALACIÓN ZSH

Lo primero que haremos es instalar el ZSH en caso de que no lo tengamos, para comprar esto simplemente escribimos zsh en la terminal y si nos lanza un error significa que debemos de instalar la terminal.

Por lo cual procederemos con la instalación, esto es solo una linea de código como cualquier instalación de una herramienta en ubuntu, por lo cual tipiamos el siguiente código.

sudo apt install zsh -y

Una vez hecho esto simplemente nos queda escribir nuevamente zsh en la consola y entraremos a nuestra nueva terminal

zsh

Una vez hecho esto y debido a que es la primera vez nos dirá que si queremos aplicar algunas configuraciones o usarlo sin configuración. En este caso presionaremos la tecla 2 que aplicará una configuración algo personalizada pero igualmente modificaremos unas cosas luego.

Presionamos la tecla 2 para seleccionar esa opción

Una vez hecho esto solo toca esperar un par de segundos y listo. Nuestra terminal se debe ver de la siguiente manera y podremos pasar a la instalación de OH MY ZSH!

INSTALACIÓN OH MY ZSH!

Para la instalación del OH MY ZSH! vamos hacerlo mediante curl con un pequeño script de una línea por lo cual solo tenemos que pegar lo siguiente en nuestra terminal y dar enter pero primero les recomiendo estar en el directorio de su usuario, en mi caso sería en /home/oslo para poder irnos directamente a ese directorio simplemente escribimos cd en la terminal y damos enter.

cd
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

Aquí inicia lo interesante, lo primero es que no dice que hizo un back up de nuestra configuración previa del zsh por si en algún momento queremos regresar a la que teníamos. La parte importante de aquí es que nos pregunta si queremos establecer la zsh como nuestra shell/terminal por defecto, en mi caso sí quiero que se así por lo cual simplemente pero la tecla Y y damos enter. Nos pedirá la contraseña porque hará un cambio que necesita permisos de super usuario.

Y listo, nuestra shell o terminal se debe ver así

INSTALACIÓN POWERLEVEL10K

Para instalar el tema lo haremos clonando su repositorio y luego haciendo una pequeña modificación en el archivo de configuración del OH MY ZSH!. Para empezar les recomiendo estar en el directorio de su usuario, en este caso /home/oslo o simplemente escriben cd en su terminal y los enviará ahí. Una vez dentro de ese directorio pegamos la siguiente línea y damos enter.

cd
git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k

Ahora toca activar el tema, para esto tenemos que abrir el archivo de configuración del zsh el cual está en ~/.zshrc y le cambiaremos el tema por POWERLEVEL10K, para esto borramos el tema actual y pegamos el siguiente.

nano ~/.zshrc

Dentro del archivo borramos el tema y pegamos esto

ZSH_THEME="powerlevel10k/powerlevel10k"

Nos debe quedar de la siguiente manera

Tema cambiado por powerlevel10k

Para guardar los cambios presionamos ctrl+x luego presionamos Y y finalizamos presionando enter

OPCIONAL

Antes de configurar el tema y que todo se nos vea bonito les recomiendo instalen la fuente FiraCode NF, en este caso como lo estamos haciendo en un WSL tenemos que descargar la versión de windows que está justo aquí la descargamos, la abrimos y le damos a instalar.

Luego descargamos la fuente a nuestro ubunto con el comando wget a esta url

wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/Medium/complete/Fira%20Code%20Medium%20Nerd%20Font%20Complete.ttf

Y la ejecutamos con el comando file al archivo que se nos descargó

file Fira\ Code\ Medium\ Nerd\ Font\ Complete.ttf

A continuación modificamos la fuente en nuestro gestor de terminales. En mi caso uso tabby y esta me permite de una manera sencilla cambiar la fuente.

Terminal Tabby con la nueva fuente colocada

CONFIGURACIÓN DE POWERLEVEL10K

Para iniciar la configuración simplemente debemos escribir la siguiente línea en nuestra terminal

p10k configure

Es muy posible que nos de un error y diga que el comando no funcione o sea reconocido, esto debido a que debemos reiniciar la shell/terminal, pero para esto yo prefiero cambiar de terminal y regresar a la zsh para que el cambio pueda hacerse por lo cual solo escribiré bash en la terminal y luego zsh y listo, se debería de iniciar la instalación.

Lo primero es que nos preguntará si vemos algunos iconos, esto variará dependiendo de las fuentes y la configuración previa que tengamos así que aquí pueden ir simplemente seleccionando Yes o No. Les dejo un ejemplo acá abajo en el cual presionaré la N porque no me aparece el diamante.

Presionamos N porque el diamante no aparece

Una vez listo eso viene la parte aun más bonita, la de tunear nuestra terminal, por lo cual aquí casi solo vendrán imágenes.

Estilo de la terminal (Prompt) en este caso yo prefiero el 3 así que toco la tecla 3
En esta sección escogemos que carácter queremos, yo prefiero UNICODE por lo cual presiono 1
Ahora seleccionamos como queremos el formato del tiempo, yo prefiero el formato de 12 horas por lo cual selecciono la opción 3
En la cabecera del prompt elijo la opción 2
Para el pie del prompt selecciono la opción 1
Para el tamaño del prompt selecciono la opción de una línea la tecla 1
Y en el espacio selecciono la opción 2, esparcido
Para el flujo del prompt selecciono la opción 1, concisa
En esta selecciono la opción N para habilitar la transición
Aquí selecciono la opción 1 para tener mayor flujo de información
Por ultimo presionamos Y para aplicar los cambios

Y listo, nuestra terminal debería verse de la siguiente manera

Así se ve la terminal si instalas la fuente que dejamos en la sección opcional

Con esto ya tendríamos listo la configuración de la terminal que estoy ocupando actualmente en mi laptop, aunque esto no termina acá, en la siguiente entrada les enseñaré mi configuración de tmux (Multiplicador de terminales) que ocupo a diario. Hasta acá ya pueden ir felices pero les mostraré como instalar un par de plugin que seguro les van a gustar.

NOTA: SI QUIEREN QUE ESTO LES FUNCIONE PARA EL SUPER USUARIO ENTONCES DEBEN DE HACER LO MISMO PERO DESDE EL USUARIO ROOT Y EL DIRECTORIO DE USUARIO EN ESTE CASO SERÍA /ROOT AUNQUE SIMPLEMENTE CON EL COMANDO CD SE VAN DIRECTAMENTE AHÍ SIEMPRE Y CUANDO ESTEN EN EL USUARIO ROOT

PLUGIONS OPCIONALES PERO RECOMENDADOS

Seremos breve en esta parte, el primer plugin es zsh syntax highlighting el cual nos resalta los comandos en dependencia de sí están bien escritos o no, será muy útil para saber si estamos escribiendo bien un comando o no. para instalarlo nos vamos a la carpeta de nuestro usuario y pegamos la siguiente linea.

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

El segundo y ultimo comando es zsh autosuggestions el cual nos sugiere comandos según nuestro historial de tipeo. para instalarlo el método es el mismo, solo pegamos lo siguiente en la terminal.

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Y para activar estos plugin simplemente pegamos la siguiente línea en el archivo de configuración del zsh así que escribimos el siguiente comando para abrir el archivo

nano ~/.zshrc

Y dentro buscamos el área de plugin borramos y pegamos lo siguiente

plugins=( git zsh-syntax-highlighting zsh-autosuggestions )

Y listo, podemos aplicar lo mismo de ir al bash y luego regresar al zsh en caso de que los cambios no estén aplicados automáticamente.

También les recomiendo pasar por aquí si quieren instalar tmux (un multiplexor de terminales) y tunearlo también cual Honda civic de los 90. Lo recomiendo personalmente, lo uso en mi día a día.

Y listo, con esto ya los puedo dejar ir en paz pero los espero pronto en una nueva entrada del blog. Lo tenía abandonado por más de un año pero ya estamos regresando un poco renovados pero mejores :D.