44

La versión 44 de Fedora ya está disponible para su instalación desde cero o bien su actualización https://blog.linuxitos.com/post/actualizar-fedora-43-a-44, en éste pequeño artículo resumo algunas acciones y configuraciones que son necesarias después de instalar fedora desde cero.
ES NECESARIO ESPECIFICAR QUE ÉSTE TUTORIAL ESTÁ ORIENTADO A FEDORA Y ESPECÍFICO CON EL ESCRITORIO DE GNOME.
A partir de la versión 29 de fedora, es necesario asignarle una contraseña al usuario root después de iniciar el SO, ya que durante la instalación no solicita la contraseña para el usuario root
sudo passwd root
Antes de instalar cualquier paquete, yo sugiero agregar todos los repositorios disponibles, y de esa forma no preocuparse si algún paquete requiere dependencias de terceros.
Aquí pueden descargar el siguiente archivo repos_fc_44.tar.zx, que contiene una lista de repositorios no oficiales para fedora.
- MySQL
- VirtualBox 7.2
- RPM fusion
- Kernel vanilla (desactivado por defecto, habilitarlo) con el comando sudo dnf config-manager --set-enabled kernel-vanilla-stable
- Dropbox
- Google Chrome
- Yandex Browser
- Russian Repos
- Visual Studio Code
- Opera Developer
- SublimeText
- Postgresql
- Skype
- Brave
- VScode
- Peek
- Qgis
- Opera
Una vez descargado el archivo con los repositorios, abrir la terminal y ubicarse en la ruta donde se haya guardado la descarga, en caso de ser la carpeta <Descargas> seguir lo siguientes pasos:
cd ~/Descargas
tar -xvf repos_fc_43.tar.xz
sudo cp ~/Descargas/repos_fc_43/*.repo /etc/yum.repos.d
Si algún repositorio aún no está disponible para fedora, con el siguiente comando se puede deshabilitar y volver a habilitar cuando ya lo esté:
sudo gnome-text-editor /etc/yum.repos.d/nombre-repo.repo
Abrirá el editor de texto y en la opción que dice enabled y ponerlo a 0:
[...] enabled=0 [...]
Una vez agregado los repositorios, configurar que se utilicen los repositorios más rápidos y permitir varias descargas al mismo tiempo
sudo gnome-text-editor /etc/dnf/dnf.conf
Agregar las siguientes líneas:
fastestmirror=true max_parallel_downloads=5 deltarpm=true
Actualizar los paquetes del sistemas:
sudo dnf -y update
Reiniciar el equipo (es necesario en caso de haber actualizaciones de kernel)
reboot
Los paquetes necesarios son aquellos que se utilizarán sin darse cuenta, por ejemplo, compresor de archivos, descomprimir archivos con click derecho, archivos que requieran java, decodificadores de vídeo y audio. Visor de imágenes, etc.
sudo dnf -y install xz bzip2 unrar p7zip lbzip2 arj lzma arj lzop cpio webp-pixbuf-loader java unar file-roller
sudo dnf install -y xine-lib-extras xine-lib-extras-freeworld gstreamer1-plugins-base-tools vlc libdvdread libdvdnav lsdvd gstreamer1-vaapi libva-utils xine-lib-extras xine-lib-extras-freeworld ImageMagick
Son aquellos que no son necesarios, pero sí podrían utilizarse al menos una vez, sobre todo si se necesita instalar algún otro navegador web
sudo dnf -y install wget curl transmission shotwell gimp inkscape pinta
sudo dnf install gstreamer1-plugins-{bad-*,good-*,base} gstreamer1-plugin-openh264 gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel
sudo dnf install wine winetricks ffmpegthumbnailer tumbler
Tiene que ver con aquellas aplicaciones para realizar configuraciones visuales al SO, como temas, iconos, ajustes personalizados, etc.
sudo dnf -y install gnome-extensions-app gnome-tweak-tool gnome-shell-extension-common gnome-tweak-tool util-linux-user gnome-terminal-nautilus nautilus-extensions tilix-nautilus nautilus-python gtk-murrine-engine
gsettings set org.gnome.nautilus.preferences default-sort-order type

Gnome shell, puede utilizar extensiones, alguna de ellas son más productivas que otras, aquí algunas de las que recomiendo:
Las extensiones se instalan desde https://extensions.gnome.org/ el navegador, por defecto, pide instalar una extensión en el navegedor de su elección, una vez hecho eso, actualizar la página, y podrán comenzar a instalarlas.
La solución que encontré, fue asignar el atajo super-tab para cambiarse entre ventanas, y eso se hace con las siguientes configuraciones:
Ir a Cajón aplicaciones->Teclado->Atajos->Navegación->Cambiar entre ventanas
Una vez ahí, presionar las teclas Super+Tab, y listo.


Ésta opción es también meramente visual, no afecta ni trae una funcionalidad nueva, simplemente que al escribir una contraseña en la terminal, ésta mostrará asteriscos, por defecto no muestra nada, ni el cursor, ni nada.
sudo nano /etc/sudoers
Una vez que se abra el archivo, ir a al línea que comienza por:
Defaults env_reset
Y al final agregarle lo siguiente:
Defaults env_reset,pwfeedback
Guardar el archivo con Ctrl+X y presionar Y.

En la versión 37 de Fedora con nautilus 43, la tecla retroceso en nautilus dejó de utilizarse para volver al directorio anterior.
En lo personal nunca me gustó ese cambio, nunca lo aceptaré, POR LA SENCILLA RAZÓN, DE QUE NO ENTIENDO, POR QUÉ TENER QUE USAR LA COMBINACIÓN DE DOS TECLAS PARA VOLVER AL DIRECTORIO ANTERIOR, CUANDO PUEDES USAR SOLO UNA?
Hasta la versión 46 de Nautilus/Files de Gnome que venía por defecto en Fedora 40, el script que utilizaba para habilitar la tecla de backspace o retroceso para volver al directorio anterior o padre, funcionaba bien, sin embargo, en la versión 47 de Files o Nautilus, ya no funciona. Así que el script, requiere una actualización, mínima pero la requiere.
Los repositorio de rpmfusion solo se instalan en caso de que no se tengan previamente configurados
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install nautilus-python python3-gobject gtk3 python3 gobject-introspection-devel pkg-config python3-devel gtk-murrine-engine kernel-headers kernel-devel dkms elfutils-libelf-devel qt5-qtx11extras gcc make perl bzip2 meson ninja-build gcc python3-devel python3-pip gobject-introspection-devel glib2-devel nautilus-devel
Aquí la configuración en Nautilus enable BackSpace: se aceptan sugerencias y mejoras
Crear el siguiente directorio:
mkdir -p ~/.local/share/nautilus-python/extensions
Crear el archivo en el directorio creado previamente:
gnome-text-editor ~/.local/share/nautilus-python/extensions/BackspaceBack.py
#!/usr/bin/env python
# created by linuxitos (mod GNOME 49)
import gi
import os
gi.require_version('Nautilus', '4.1')
gi.require_version('Gtk', '4.0')
gi.require_version('Gdk', '4.0')
from gi.repository import GObject, Nautilus, Gtk, Gdk
class BackspaceBack(GObject.GObject, Nautilus.InfoProvider):
def __init__(self):
super().__init__()
app = Gtk.Application.get_default()
if not app:
print("[BackspaceBack] Gtk.Application.get_default() is None", file=os.sys.stderr)
return
app.connect("window-added", self.on_window_added)
for window in app.get_windows():
if isinstance(window, Gtk.ApplicationWindow):
self._attach_controller(window)
def update_file_info(self, file: Nautilus.FileInfo):
return
def on_window_added(self, app, window):
if isinstance(window, Gtk.ApplicationWindow):
self._attach_controller(window)
def _attach_controller(self, window: Gtk.Window):
if getattr(window, "_backspace_nav_attached", False):
return
key_controller = Gtk.EventControllerKey.new()
key_controller.connect("key-pressed", self.on_key_pressed, window)
window.add_controller(key_controller)
window._backspace_nav_attached = True
def on_key_pressed(self, controller, keyval, keycode, state, window: Gtk.Window):
if keyval != Gdk.KEY_BackSpace:
return False
if state & Gtk.accelerator_get_default_mod_mask():
return False
focus_widget = window.get_focus()
if isinstance(focus_widget, Gtk.Editable):
return False
try:
window.activate_action("slot.up", None)
return True
except Exception as e:
print(f"[BackspaceBack] Error al activar 'slot.up': {e}", file=os.sys.stderr)
return False
def init():
return BackspaceBack()
Reiniciar nautilus/files
nautilus -q
Espero y sea de utilidad, fue probado y utilizado desde Fedora 37, hasta la versión 50.

sudo dnf -y install git zsh util-linux-user
git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
cp ~/.zshrc ~/.zshrc.orig
sudo chsh -s /bin/zsh user-name
Aquí es necesario reiniciar sesión de la terminal para que inicie con zsh, si reiniciando la terminal, no funciona, cerrar sesión y volver a iniciar.
Descargar las siguientes tipografías e instalarlas, doble clic para abrir e instalar. https://mega.nz/file/9NxXSTCb#fu29TLJUBNF3_XKWF-6gak0gyTHCK4z5MF4Ggvkgg2I

La instalación del tema:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/.oh-my-zsh/custom/themes/powerlevel10k echo 'source ~/.oh-my-zsh/custom/themes/powerlevel10k/powerlevel10k.zsh-theme' >>~/.zshrc
Al cerrar la terminal, y volver a iniciar, en automático comenzará la configuración de powerlevel10k, si por alguna razón ésto no ocurre, entonces se puede usar el comando:
p10k configure

A partir de aquí, se debe leer bien las indicaciones para poder elegir correctamente los íconos, y estilos que se tendrá para el tema
Si por alguna razón, no se inicia automáticamente la configuración de powerlevel10k, se puede iniciar el proceso desde la terminal, con el comando siguiente:
Si el comando no inicia el proceso mostrado en la imagen 5, entonces revisar el proceso de instalación, o bien cerrar sesión y volver a iniciar, para que los cambios se apliquen.
Al inicio de la configuración, pregunta si lo que se ve es un rombo, si es así, presionar "y" que corresponde "yes", q es para salir del proceso, sin configurar ni guardar nada.

La siguiente pregunta, es si e puede visualizar el ícono de bloqueo, o candado, si es así, presionar "y" o "n" en su defecto, las preguntas aquí son necesarias, porque si por alguna razón, no se visualizan los íconos, significa que las tipografías previamente mencionadas, no se instalaron correctamente. Por lo tanto es necesario instalarlas previo a configurar el tema.

La siguiente pregunta: puedes ver una espiral?, y lo mismo, si lo pueden visualizar, presionar "y" o "n" según sea el caso.

En alguna parte del proceso, comenzarán a ver los íconos, ya como se debe de visualizar en la terminal, no se olviden de ir traduciendo los mensajes, para una mayor comprensión

Al finalizar, la terminal se verá de la siguiente manera:, si algo no les gustó, pueden volver a ejecutar el comando de configuración, las veces que sea necesario.


Para aplicar direcciones MAC aleatorias por defecto a todas las conexiones WiFi, crear un archivo en la ruta /etc/NetworkManager/conf.d/00-macrandomize.conf y agregar lo siguiente:
[device]
wifi.scan-rand-mac-address=yes
[connection]
wifi.cloned-mac-address=stable
ethernet.cloned-mac-address=stable
connection.stable-id=${CONNECTION}/${BOOT}
Reiniciar el servicio
systemctl restart NetworkManager
Instalación de XORG
sudo dnf install @base-x
sudo dnf install xorg-x11-server-Xorg
sudo dnf install xorg-x11-drv-amdgpu
Los temas nuevos de GTK como WhiteSur no se ajustan automáticamente a nautilus, o aplicaciones nativas de gnome, no toman el tema de gtk, por lo que requieren ciertos paquetes adicionales o configuración:
sudo dnf install glib2-devel sassc ImageMagick optipng inkscape dialog glib2-devel libxml2 libappstream-glib gnome-tweaks
Configuración:
sudo flatpak override --filesystem=xdg-config/gtk-3.0
sudo flatpak override --filesystem=xdg-config/gtk-4.0
Instalar tema WhiteSur

Clonar el proyecto
cd ~/Descargas/
git clone https://github.com/vinceliuice/WhiteSur-gtk-theme
cd WhiteSur-gtk-theme
Después de clonar el proyecto, se debe compilar/generar los archivos y éstos se guardan en ~/.themes
./install.sh -l -c dark -c light -N glassy -l --shell -i fedora
Previo a usar el tema para gnome shell y no sólo las ventanas, es necesario instalar la extensión User Themes: abrir el siguiente enlace e instalarlo:
Instalarlo desde la User Themes o bien desde consola
sudo dnf install gnome-shell-extension-user-theme
Una vez instalado, abrir la aplicación de Gnome Extensión para habilitar los temas del usuario:

Abrir Gnome Tweaks para seleccionar el tema instalado:

Si necesitas utilizar por ejemplo, virtualbox, o algunos entornos de desarrollo, necesitas instalar librerías de desarrollo, ésto ya es muy específico, no necesariamente para desarrolladores, pero sí para algunos paquetes que requieran librerías dev
sudo dnf -y install kernel-headers kernel-devel dkms gcc make perl bzip2 kernel-headers kernel-devel cmake tlp tlp-rdw
sudo dnf -y group install "Development Tools"
sudo dnf -y group install "Development Libraries"
sudo dnf -y group install "Development Libraries"
sudo dnf -y install sublime-text code codium arduino filezilla geany gnome-builder
sudo dnf -y install flatpak wxmaxima gnuplot foremost
sudo dnf -y install brasero unetbootin gparted nautilus-dropbox
sudo dnf -y install blender openshot clipgrab vokoscreen peek youtube-dl mediawriter transmageddon avidemux audacity-freeworld mplayer handbrake-gui

sudo dnf -y install texlive-minted python python-setuptools texlive-scheme-full texstudio
pip3 install Pygments

sudo dnf -y install kernel-headers kernel-devel dkms elfutils-libelf-devel qt5-qtx11extras gcc make perl bzip2
sudo dnf -y VirtualBox-7
sudo usermod -G vboxusers -a tu-nombre-usuario
Es necesario instalar la extensión de virtualbox guestadditions para poder compartir carpetas, ver en modo pantalla completa o añadir USB a la máquina virtual, la extensión se descarga desde el sitio oficial de VirtualBox.
https://www.virtualbox.org/wiki/Downloads
Por defecto ya viene habilitado, pero sin por alguna razón no lo está, para habilitar, Abrir Software->configuración y habiliar flatpak

OnlyOffice

flatpak install flathub org.onlyoffice.desktopeditors
Ésto se vuele indispensable, si editarás archivos de office en libreoffice, y que el tipo de fuente sean compatibles
sudo dnf install -y curl cabextract xorg-x11-font-utils fontconfig

Hay una sección completa para ésta base de datos, ya que es un poco más amplio: Instalación de MySQL en Fedora
Hay una sección completa para ésta base de datos, ya que es un poco más amplio: Instalación postgresql
Instalar cualquier paquete via archivo rpm, se usa el siguiente comando: (reemplazar paquete.rpm por la ruta y nombre del archivo .rpm que se requiera instalar)
sudo rpm -i paquete.rpm