David Bohm

Hay dos frases que definen mi manera de pensar:
Realmente no hemos prestado mucha atención al pensamiento como un proceso; hemos participado en pensamientos, pero sólo hemos prestado atención al contenido, no al proceso.
La capacidad de percibir o pensar de manera diferente es más importante que el conocimiento adquirido.
Ambas son de David Bohm.

viernes, 22 de julio de 2022

Microsoft Edge en Fedora workstation 36

Instalar Microsoft Edge en Fedora es bastante sencillo, y de momento tiene bastante estabilidad. Yo lo uso para los productos microsoft que tengo contratados y la verdad es que me da buenas senaciones usar su navegador para sus productos.

Tras realizar una actualización completa de Fedora, importamos la clave GPG:

   # rpm --import https://packages.microsoft.com/keys/microsoft.asc

Añadimos el repositorio:

   # dnf config-manager --add-repo https://packages.microsoft.com/yumrepos/edge

Refrescamos la lista de repositorios:

   # dnf update --refresh

Ya podemos instalar el navegador Edge:

   # dnf install microsoft-edge-stable

Una vez terminada la instalación, podemos buscarlo en Gnome y lanzarlo. Lo primero que hago es elegir el tema focalizado, sincronizar mi cuenta y así ya dispongo de todas mis extensiones y favoritos.

SaluDOS

miércoles, 20 de julio de 2022

Instalando y predeterminando zsh en Fedora 36 workstation

No soy un fan de grandes personalizaciones en cuanto al shell que utilizo en mi día a día. Cuando accedo a un servidor, donde he intentado cambiar lo menos posible para que todo cumpla un estándar básico, habitualmente uso bash, el shell predeterminado en muchas distribuciones para servidores.

Para instalar zsh solo tenemos que ejecutar:

   # dnf install zsh

Si ejecutamos zsh cambiamos a ese shell:

   # zsh

Podemos comprobar el shell predeterminado que tiene nuestro usuario, para eso consultaremos el archivo /etc/passwd y extraeremos la linea de nuestro usuario:

   # cat /etc/passd | grep usuario

   usuario:x:1000:1000:Nombre Apellido:/home/usuario:/bin/bash

El final de la linea establece el shell por defecto para el usuario, en este caso /bin/bash

Para predeterminar zsh para nuestro usuario utilizaremos el comando chsh:

   # chsh -s $(which zsh) usuario

Obviamente 'usuario' tendremos que cambiarlo por el alias de nuestro usuario. Podemos comprobar si se ha predeterminado zsh:

   # cat /etc/passd | grep usuario

   usuario:x:1000:1000:Nombre Apellido:/home/usuario:/usr/bin/zsh

Si en algún momento queremos hacer lo contrario, y predeterminar bash, solo tenemos que volver a ejecutar el mismo comando pero indicando que deseamos predeterminar bash:

   # chsh -s $(which bash) usuario

Si cuando estamos en la terminal queremos saber con que shell estamos trabajando podemos ejecutar:

   # echo $SHELL

Esto mostrará la shell que se está ejecutando, dando como resultado la ruta:

   /bin/bash

O si es zsh:

   /usr/bin/zsh

Cuando lanzamos zsh por primera vez, aparecerá un asistente zsh-newuser-install, esto se debe a que no tenemos todavía configurados los ficheros de inicio de zsh, como por ejemplo .zshrc, aparecerá este menú o similar:

This is the Z Shell configuration function for new users, zsh-newuser-install.
You are seeing this message because you have no zsh startup files (the files .zshenv, .zprofile, .zshrc, .zlogin in the directory ~). This function can help you with a few settings that should make your use of the shell easier.

You can:

(q) Quit and do nothing. The function will be run again next time.

(0) Exit, creating the file ~/.zshrc containing just a comment.

That will prevent this function being run again.

(1) Continue to the main menu.

--- Type one of the keys in parentheses ---

Si vamos al menú principal pulsando 1, tendremos varias opciones:

Please pick one of the following options:

(1) Configure settings for history, i.e. command lines remembered and saved by the shell. (Recommended.)

(2) Configure the new completion system. (Recommended.)

(3) Configure how keys behave when editing command lines. (Recommended.)

(4) Pick some of the more common shell options. These are simple "on" or "off" switches controlling the shell's features.

(0) Exit, creating a blank ~/.zshrc file.

(a) Abort all settings and start from scratch. Note this will overwrite any settings from zsh-newuser-install already in the startup file. It will not alter any of your other settings, however.

(q) Quit and do nothing else. The function will be run again next time.

--- Type one of the keys in parentheses ---

Si seguimos las recomendaciones del asistente, podemos hacer una configuración básica, para ello vamos pulsando:

   1 para configurar el historial, aceptamos los valores que propone y pulsamos 0 para volver al menú principal.

   2 para configurar el autollenado, aceptamos los valores predeterminados pulsando 1 para volver al menú principal.

   3 para configurar el editor predeterminado, pulsamos 1 y en mi caso selecciono vi pulsando v y volvemos al menú principal pulsando 0.

   4 para configurar las opciones de zsh. Podemos verlas ejecutando man zshoptions; inicialmente se recomienda no configurarlas hasta que no controles un poco mas zsh

   0 para guardar la configuración realizada. Se creará .zshrc

Te advierte que no se volverá a ejecutar el asistente, pero nos ofrece que ejecutar si queremos volver a ejecutarlo:

The function will not be run in future, but you can run it yourself as follows:

  autoload -Uz zsh-newuser-install
  zsh-newuser-install -f

The code added to ~/.zshrc is marked by the lines

# Lines configured by zsh-newuser-install
# End of lines configured by zsh-newuser-install

You should not edit anything between these lines if you intend to run zsh-newuser-install again.  You may, however, edit any other part of the file.

Veremos que el prompt cambia, mostrando un % y si comprobamos el shell que se está ejecutando veremos que es zsh.

Podemos mostrar el archivo .zshrc para ver que tiene una estructura básica según lo que hemos configurado en el asistente, solo por curiosidad merece la pena

   # cat .zshrc

 SaluDOS.

martes, 7 de junio de 2022

Primeros pasos tras instalar Fedora 36 Workstation

Una vez que tenemos Fedora 35 Workstation con Gnome Shell 41 recien instalado me gusta hacer varios pasos para estar cómodo desde el primer momento:

  • Configuramos la cuenta principal de usuario que utilizaremos y marcamos las opciones de privacidad o envío de telemetría para ayudar en el proyecto. Esto es muy personal yo nunca activo la ubicación.
  • Configuramos la red para que tengamos conectividad. En mi caso configuro tanto la red de cable como la WiFi.
  • Instalamos una cuenta en la nube que es la que utilizo como repositorio documental, eso permitirá tener acceso rápido a toda la documentación a través de Archivos, como si fuese una unidad de red convencional. Solo activamos la sincronización de archivos.
  • Desinstalamos las aplicaciones que no nos interesan o no vamos a utilizar jamás. En mi caso son calendario, contactos, mapas, editor, etc. Esto depende de como trabajes con Linux y las aplicaciones que utilices de normal. Es verdad que Fedora no te instala mucha aplicación extra.
  • Vamos a retoques y elegimos en apariencia el tema oscuro. Necesito que mi vista esté lo mas descansada posible a lo largo del día. Si te cuesta al principio localizar las cosas... insiste, merece la pena.
  • Vamos a accesibilidad y cambiamos el tamaño del cursor. Si eres joven no lo necesitas.
  • Instalamos las extensiones de gnome shell, lo he comentado en esta entrada. Ojo hasta día de hoy en Fedora 36 hay un problema haciendolo desde firefox o chromium y es por el paquete gnome-shell, es mejor hacer un downgrade ejecutando:

# dnf install gnome-shell-42.0-3.fc36

  • Abrimos la terminal y la fijamos en el dock, debe estar siempre a mano. Habitualmente fijo en el dock algunas de las aplicaciones que uso de forma continua para tener un acceso rápido.
  • Antes de instalar nada nuevo realizamos un update completo. En fedora ejecutariamos:
# dnf update -y
  • Instalamos tweaks (retoques) y hacemos aparecer los botones maximizar y minimizar en la barra de título de las ventanas.
  • Comprobamos la versión de python e instalamos python3-pip.
  • Instalamos los repositorios rpmfusion:

Non-free:
# dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Free:
# dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm

Comprobamos con:
# dnf repolist
  • Configuramos la VPN para tener conectividad a nuestra red desde cualquier sitio.
  • Instalamos o descargamos (AppImages) las aplicaciones que utilizo de normal:
    • vim: Mi editor principal en la terminal .
    • htop: Para poder ver los procesos en ejecución en la terminal.
    • lnav: Una forma que ayuda y mucho a ver los logs en la terminal.
    • wget: Para descargar contenido directamente en la terminal.
    • curl: Para trabajar con URLs directamente en la terminal.
    • git: Imprescindible para control de versiones.
# dnf install vim htop lnav wget curl git
    • Remmina: Para realizar conexiones remotas a los servidores que administro.
    • Discord: Para participar en los grupos en los que tengo algo que decir. Para el hacking hay grupos muy interesantes.
    • OBS studio para la grabación de videos.
# dnf install remmina discord obs-studio
    • Visual Studio Code: Mi editor de código principal para casi todo. Comento su instalación en esta entrada. Es la instalación oficial de Microsoft, puedes optar por instalar VS Codium desde aqui.
    • PyCharm Community: Mi editor de código para python, se puede instalar directamente desde el repositorio oficial de Fedora.
    • Code::Blocks: Mi editor de código para C y C++, se puede instalar directaemnte desde el repositorio oficial de Fedora.
# dnf install pycharm-community codeblocks
    • VMware Workstation pro: Instalo mi licencia profesional para trabajar con máquinas virtuales. Tengo que hacer una entrada con estas instrucciones.
    • Docker Desktop. Gestión de contenedores, últimamente todo son dockers. Comento su instalación en esta entrada.
    • Telegram desktop: Para participar en los grupos en los que tengo algo que decir, pero sobre todo para que mis bots me informen de las alertas realmente importantes. Lo descargo como appimage de appimagehub.com
    • Balena Etcher: habitualmente necesito crear pendrives de arranque. Lo descargo desde su página web oficial.
    • yt-dlp: para descargar videos de youtube y verlos sin conexión a internet y sobre todo sin publicidad. La forma más cómoda de instalarlo es con pip.
# pip install yt-dlp
  • Restauramos las copias de seguridad, máquinas virtuales, archivos, notas, dot files, etc... y terminamos de comprobar el comportamiento de cada aplicación o herramienta.
  • Con las comprobaciones anteriores aprovechamos a fijar en el dock las aplicaciones que uso de continuo: terminal, firefox, archivos, VS Code, PyCharm, Code::blocks, VMWare, Docker desktop, Remmina, Software, Configuración, OBS Studio, Telegram y discord.
Estos mismos pasos, excepto la parte de VMWare workstation pro los he reproducido tal cual para Fedora 36 y también funcionan.
 
SaluDOS

sábado, 21 de mayo de 2022

Extensiones en Gnome Shell que pueden ayudarte en tu día a día

Estas son algunas de las extensiones que utilizo en Gnome Shell 42.1 sobre Fedora 36 y me aportan mejoras al manejar el sistema operativo:

Si, está claro que sin cambiar el fondo de escritorio o sin que las ventanas se cierren prendiendo en llamas se puede vivir, pero el resto de extensiones son interesantes.

SaluDOS

miércoles, 18 de mayo de 2022

Instalando Docker Desktop en Fedora 36

Una vez que te acostumbras a hacerlo todo con comandos, la verdad es que resulta hasta cómodo, pero es verdad que el usuario que no es conocedor de la terminal, docker y ciertas peculiaridades de este mundillo puede sufrir bastante.

Para quien lo ha utilizado en entorno Windows, docker se instala con una versión de escritorio que te lo hace mas sencillo, y esta versión de escritorio al fin ha llegado a Linux.

Vamos a la página oficial de docker, sigamos las instrucciones y veamos como instalarlo en Fedora 36:

Lo primero será desinstalar docker y docker-compose si ya lo tenemos como es mi caso:

   # dnf remove docker docker-compose

Instalamos el repositorio:

   # dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

Descargamos el paquete .rpm de la última versión que tengamos en la página oficial de docker, actualmente la versión 4.8.1, y realizamos la instalación:

   # dnf install ./docker-desktop-4.8.1-x86_64.rpm

Lo buscamos en gnome y lo lanzamos...ya tenemos nuestra aplicación de escritorio para gestionar los dockers.

SaluDOS

Visual Studio Code en Fedora

Si vamos a la página oficial de VS Code, podremos encontrar unas maravillosas instrucciones para instalar VS Code en Linux.

Para distribuciones basadas en Red Hat, tendríamos que seguir los siguientes pasos:

# rpm --import https://packages.microsoft.com/keys/microsoft.asc

# sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'

Actualizamos la caché e instalamos, para Fedora 22 o superior:

# dnf check-update 

# dnf install code

Para versiones mas antiguas:

# yum check-update 

# yum install code

SaluDOS
 

sábado, 7 de mayo de 2022

Crear una página web con python en 4 sencillos pasos

1. Preparar el entorno de desarrollo

Obviamente debemos tener instalado python y python-pip. 

Instalaremos flask con pip:

   $ pip install flask

Depende del sistema operativo y como tengamos el entorno pero ultimamente con flask se instala jinja. Nos lo indicará al finalizar la instalación de flask, pero si no lo vemos claro no cuesta nada ejecutar:

   $ pip install jinja2

Utilizaremos visual studio y vamos a necesitar las siguientes extensiones para que la creación del código base sea instantánea:

   - Bootstrap 4

   - Flask-Snippets

2. Preparar el directorio y los archivos

Estos pasos se pueden realizar desde el propio VS Code.

   - Creamos un directorio, por ejemplo: /home/usuario/web

   - Dentro del directorio web creamos el fichero web.py y un subdirectorio llamado: templates

   - Dentro del subdirectorio templates creamos el fichero: index.html

3. Crear el código fuente utilizando la ayuda de las extensiones

Abrimos el fichero web.py, comenzamos a teclear la palabra fapp, la extensión de Flask lo detectará, pulsamos enter y nos genera el código necesario, algo como esto:

from flask import Flask, render_template
app = Flask(__name__)


@app.route('/')
def index():
return render_template('index.html')

if __name__ == '__main__':
app.run(host='127.0.0.1', port=8000, debug=True)

De este código lo importante a tener en cuenta es:

   - el fichero index.html en la parte de template debe ser el mismo nombre que el archivo que hemos generado en el subdirectorio templates. Si cambiamos el nombre en el código de python debemos cambiar el nombre al ficher .html

   - el puerto podemos elegir el que queramos, 8080, 8081, etc... Luego la conexión debemos hacerla a ese puerto.

Ahora abrimos el fichero index.html y volvemos a utilizar la magia de las extensiones de VS Code. Comenzamos a teclear b4 y veremos que aparecen varias opciones, la primera es b4-$, pulsamos enter y ya tenemos el código de la plantilla creado.

Podemos personalizar algo dentro de <body> para que sepamos al comprobar que es nuestra web, por ejemplo: <p>Hola mundo!</p>

Quedaría algo así:

<!doctype html>
<html lang="en">
<head>
<title>Title</title>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width...

<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn...
</head>
<body>
<p>Hola Mundo!</p>
</body>
</html>

Guardamos los dos archivos antes de seguir.

4. Ejecutar python y comprobar la página web

Desde el propio VS Code, en la terminal o desde una consola entrando al directorio web, podemos ejecutar:

   $ python web.py

Veremos que se ejecuta el programa y nos muestra algo similiar a esto:

   $ python web.py
      * Serving Flask app 'web' (lazy loading)
      * Environment: production
         WARNING: This is a development server. Do not use it in a production deployment.
         Use a production WSGI server instead.
      * Debug mode: on
      * Running on http://127.0.0.1:8000 (Press CTRL+C to quit)
      * Restarting with stat
      * Debugger is active!
      * Debugger PIN: 481-632-688

Si nos ponemos sobre el enlace a la web http://127.0.0.1:8000, veremos que se nos indica que si mantenemos pulsado Ctrl y hacemos clic sobre el enlace, se abrirá el navegador predeterminado donde podremos ver la página web que hemos creado.

Veremos ese maravilloso Hola Mundo! que indica que lo hemos hecho todo correctamente.

SaluDOS


Instalar Visual Studio Code en Arch Linux

Los pasos son sencillos:

Debemos tener instalado git. Vamos a usar los repositorios AUR (Arch User Repository), así que comenzamos clonando el repositorio:

   $ mkdir /home/usuario/git

   $ cd /home/usuario/git

   $ git clone https://aur.archlinux.org/visual-studio-code-bin.git

Entramos al directorio y hacemos el make:

   $ cd visual-studio-code-bin.

   $ makepkg -si.

Instalamos con yay o paru:

   $ yay -S visual-studio-code-bin

 Listo!

SaluDOS