Hola, ¿Cómo han estado? Espero que se encuentren muy bien.
Afortunadamente no ha pasado tanto tiempo desde la última vez que tuve el placer de saludarles en este espacio del debraye, proyectos imprácticos y las malas ideas en general.
En esta ocasión el debraye es un tanto egoísta, ya que en realidad sólo pretendo recopilar unas notas sobre unas pruebas que he estado realizando en mi computadora. Decidí escribirlas aquí para que estén al alcance de las personas (o inteligencias artificiales) a las que mis conclusiones le puedan resultar de utilidad.
Pero antes de entrar en materia, un poco de historia... Sino, ¡No sería una sesión de debraye!
Para los que siguen el blog no es ningún secreto que soy usuario de Linux desde hace muchos años. Mi acercamiento con Linux se debió a que en la época de los años 2003 y 2004 contaba con una computadora bastante modesta, ensamblada en su mayoría con piezas de segunda mano. Se trataba de una Celeron socket 370B a 1.2 [GHz] con 128 [MB] de memoria RAM que funcionaba con bastante soltura con Windows 98SE pero tenía un rendimiento francamente pobre con Windows XP. Para tratar de optimizar los recursos de la computadora pasé mucho tiempo en sitios de software de código abierto como Sourceforge, buscando opciones ligeras y gratuitas a muchos de los programas que necesitaba utilizar, ya que muchas de las aplicaciones más populares en el mercado eran muy pesadas, funcionaban con lentitud o consumian mucha memoria. Así fue como conocí aplicaciones como el cdrecord, mplayer2 (precursor de MPV) y ffmpeg. Además en ese entonces era usuario de Netscape, por lo que caí en la cuenta que mucho del software que utilizaba se encontraba disponible en Linux y fue que decidi comenzar a probar Linux.
Fue un camino con problemas que no siempre fuí capaz de solventar. Sufrí desde instalaciones que nunca concluyeron de forma satisfactoria y que dejaban a mi computadora incapaz de arrancar el sistema operativo, hasta las más frustrantes en las que todo funcionaba bien y simplemente de un día para otro el sistema se negaba a arrancar. Cabe mencionar que todas esas incursiones en Linux las hacía en un segundo disco duro, el disco duro principal siempre tenía instalada alguna versión vigente de Windows ya que los programas que necesitaba utilizar para la escuela (por exigencia de los profesores, no por mi elección) como Maple, Matlab, OrCAD, etc. eran mucho más fáciles de conseguir (con medicina incluída) para Windows. Además, como mis experimentos con Linux eran por mi propia iniciativa, no me resultaba tan frustrante ni desmoralizante tener que reinstalar todo y volver a configurar desde el principio.
No cuento con educación formal o informal de Linux (nunca he tomado clases o cursos al respecto) por lo que tampoco puedo venderme como "sysadmin de Linux". Sin embargo la costumbre de usarlo diariamente para mi uso personal (fuera del trabajo, en el trabajo uso exclusivamente Windows) me ha ayudado a darme una idea de cómo funcionan varios de los modulos y servicios del sistema, por lo que puedo solventar algunos de los problemas que se me van presentando y en caso de que no lo pueda resolver instantaneamente, puedo buscar en internet enfocandome sólo en el problema en especifico que estoy experimentando.
Después de todos estos años estoy sumamente agradecido con la comunidad de Linux que han hecho un sistema operativo que me ha permitido utilizar mi computadora de una forma que satisface mis necesidades personales. Sin embargo siempre mantuve la costumbre de tener una instalación de Windows vigente en mi computadora. Cuando era estudiante para poder cumplir con las tareas y ahora que ya no lo soy, para poder jugar. Pero eso tuvo que cambiar el 14 de octubre de 2025, ya que el hardware de mi computadora dejó de ser soportado por Microsoft. En esa fecha terminó el soporte y las actualizaciones de seguridad para Windows 10 (la versión del sistema operativo más reciente que soporta el hardware que poseo). Por fortuna solo utilizaba Windows para cosas poco importantes (jugar), así que este evento no tuvo repercusiones importantes en mi vida cotidiana, incluso consideré la opción de simplemente desactivar la conexión de red en Windows y seguir utilizándolo "offline". Pero después de meditarlo un poco llegué a la conclusión de que esta es una oportunidad inmejorable para probar la compatibilidad de Linux con los juegos que suelo disfrutar y también para ya no tener que depender del "dual boot".
Como mi instalación de Linux funcionaba bien, para evitar perder información o hacer malas configuraciones que fueran dificiles de revertir decidí comprar una unidad de almacenamiento nueva y realizar uns instalación limpia de Linux para experimentar. En un principio opté por Ubuntu LTS 24.04, pero desgraciadamente su entorno de escritorio no me gustó, tampoco el hecho de que imponen snap y mutilan la funcionalidad de flatpak para instalar aplicaciones, por lo que decidí instalar Linux Mint (la versión vigente al momento de este debraye es 22.2 Zara). No haré una guía de instalación de Linux, ya que además de ser algo poco interesante, considero que es mucho más práctico ver un video que te guíe por los pasos en tiempo real en caso de duda. Además no puedo superar la maestría con la que el profesor Christopher Barnatt de Explaining Computers ha abordado estos temas (el final de soporte de Windows 10, la instalación de Linux y la migración de usuarios de Windows a Linux).
Una consideración muy importante para poder jugar en Linux es que es necesario contar con una GPU que soporte Vulkan y que además tenga controladores relativamente completos en Linux. Esto hace que GPUs como la Radeon HD5450, la nVidia GT730 o las GPU Mali de las TVBoxes y las OrangePi queden completamente fuera de consideración. Respecto a video integrado en plataformas x86, es necesario que por lo menos sea un procesador Intel Core de cuarta generación (socket LGA1150). El video integrado de AMD más antiguo que soporta Vulkan son los APU de la arquitectura Carrizo para el socket FM2+ (APUs de la familia Ax-7xxx). Esto es debido a que una de las tecnologías que permite jugar varios juegos nativos de Windows en Linux llamada Proton requiere forzosamente de que nuestro sistema cuente con soporte para Vulkan.
Otra consideración es que de debemos de tener un hardware con la potencia suficiente que permita correr los juegos que nos interese jugar con soltura. Hago esta aclaración ya que he visto en internet muchos mitos respecto al rendimiento de juegos y el uso de Linux para revivir computadoras viejas o de bajos recursos. Si bien es cierto que es posible instalar algunas distribuciones modernas de Linux en computadoras prácticamente obsoletas o que no pueden funcionar cómodamente con Windows 10 u 11, no hacen milagros, simplemente logran que la computadora funcione con la holgura que lo haría con una versión de Windows contemporánea al propio hardware. Además muchas de las distribuciones principales de Linux ya no soportan la arquitectura x86 de 32 bits, por lo que no será posible instalar esas distribuciones de Linux en computadoras con procesadores como Pentium 4, las primeras generaciones de Intel Atom e Intel Centrino. Así que si su idea, amable lector, era "experimentar con Linux" y para ello pensaba sacar del armario su vieja computadora Pentium 4, con 256[MB] de RAM, disco duro mecánico IDE de 80[GB], tarjeta de video GeForce4 MX 440 para ver "como funciona un juego moderno en Linux" permítame ahorrarle el tiempo y la frustracion de probarlo, no le funcionará. Y la ultima consideración es que a la fecha de este debraye, la mayoría de los juegos nativos de Windows no funcionan en Linux. Para saber si un juego que nos interese jugar funciona en Linux, podemos buscar su nombre en la página de protondb y revisar los reportes de los usuarios para conocer en qué estado de funcionalidad y compatibilidad se encuentra.
Al momento de instalar Linux a mi me gusta crear varias particiones, por lo general las creo de la siguiente forma:
Una partición de 40[GB] de capacidad en formato EXT4, con punto de montaje "/". Esto hace que el sistema operativo se instale en esa partición.
Una partición de 2[GB] de capacidad en formato FAT32, con punto de montaje "boot/efi". Esto para que el sistema pueda arrancar sin problemas en modo UEFI y no estar limitados al modo "Legacy BIOS". Además de que arracar en modo UEFI es mandatorio para utilizar el reBAR si nuestra tarjeta de video lo soporta.
Una partición con el resto de la capacidad de mi unidad de almacenamiento en formato EXT4, con punto de montaje "/home". Esto para que todo mi perfil, archivos y configuraciones personales se guarden en esa partición y en caso de que tenga que reinstalar el sistema operativo o cambie de distribución de Linux (tal y como me ocurrió en esta prueba que cambié Ubuntu por Linux Mint) no tener que copiar mi información a una unidad externa y luego volverla a escribir en la unidad interna, que además si es un SSD se desgastaría de forma innecesaria. En caso de que requiera reinstalar el Linux lo unico que tengo que hacer es volver a poner los puntos de montaje como los describí al momento de instalar por primera vez y sólo asegurarme de desmarcar la casilla "Formatear" de la partición con el punto de montaje "/home" para conservar los archivos y configuraciones. Mi usuario al instalar Linux lo llamo raven, por lo que cuando vean comandos de linux que lleven esa palabra, deberán de cambiarla por el nombre de su usuario para que les funcione correctamente.
Una vez instalado Linux, me gusta generar un par de discos RAM para no desgastar mucho mi SSD y para agilizar un poco el funcionamiento del sistema, para ello abro el archivo /etc/fstab en modo de super usuario y agrego las siguientes lineas al final del archivo:
# ramdisk
tmpfs /tmp tmpfs rw 0 0
tmpfs /home/raven/.cache tmpfs rw 0 0
Una vez realizado eso, tengo que preparar el sistema para instalar el entorno de escritorio KDE, que es mi preferido pero no se encuentra como opción por defecto de Linux Mint, por lo que debo de correr los siguientes comandos para evitar que aparezca el mensaje " config/debconf-kde-helperrc not writable" cada vez que utilice el actualizador de aplicaciones de Linux Mint:
sudo su
cd /
mkdir .config
cd .config
touch debconf-kde-helperrc
cd /
chown -hR raven .config
Después establezco que el reloj lo muestre con la hora local para evitar que se desincronice cuando arranco otro sistema operativo.
timedatectl set-local-rtc 1 --adjust-system-clock
Agrego soporte para aplicaciones de 32 bits, ya que serán necesario para correr los juegos de Windows.
sudo dpkg --add-architecture i386
Le indico al sistema que sólo utilice archivo de paginación cuando se agote la memoria RAM.
sudo sysctl vm.swappiness=0
Actualizo los catalogos de software.
sudo apt update && sudo apt upgrade -y
Instalo Wine, que es un programa que permite ejecutar aplicaciones de Windows en Linux.
sudo apt-get install wine
Y también instalo algunas aplicaciones que utilizo de forma cotidiana como GIMP, Audacity, etc. Esto no tiene nada que ver con correr aplicaciones de Windows en Linux.
sudo apt-get install audacious audacity gimp playerctl flashrom kde-full ghex synaptic gparted
Una vez realizado esto cierro sesión y vuelvo a abrir sesión pero seleccionando el entorno de escritorio KDE.
Después instalo Lutris, que es el programa que utilizo para arrancar los juegos que tengo en Windows en Linux. En este caso mis juegos los he comprado de GOG y no suelen presentar problemas para funcionar si los muevo de carpeta (no escriben información en el registro de Windows). Sin embargo no puedo garantizar que lo que hago funcione para todos los casos. Lo que voy a hacer para ahorrarme tiempo es que mis juegos ya instalados y mis partidas guardadas las copiaré desde mi unidad de almacenamiento que tiene Windows a mi nueva unidad donde he instalado Linux.
flatpak install flathub net.lutris.Lutris
Arranco Lutris por primera vez y espero que descargue todas las actualizaciones que necesita para funcionar. Una vez que ha terminado de actualizar me dirijo a "Options" -> "Preferences" -> "System" y en la parte de "System information" navego hasta la parte de abajo hasta encontrar la información sobre la tarjeta de video y el driver de Vulkan. Si toda la información está llena y no hay ningún error, estamos listos para jugar. Sino, tocará investigar para instalar los drivers que hagan falta.
Como les comenté, para correr aplicaciones nativas de Windows en Linux se utiliza un programa llamado Wine. Sin embargo no es solo dar "doble click" y ejecutar los programas, ya que los programas de Windows esperan correr en un entorno Windows, con bibliotecas de sistema y cierta estructura de carpetas de usuario y de sistema que no se parece a la estructura que utiliza Linux. Es por ello que Wine utiliza lo que se denomina "prefixes", que crea un entorno minimo con las bibliotecas y estructuras de archivos que imitan una instalación de Windows para que los programas puedan funcionar. Podemos crear manualmente los "prefixes", pero podemos ayudarnos de Lutris para crear un prefix y utilizarlo para correr nuestros juegos. Para ello suelo descargar el instalador de la aplicacion CheatEngine e instalarlo con Lutris siguiendo los pasos: "Options" -> "Add games" -> "Install a Windows game from an executable" -> En Game Name escribo "CheatEngine", en installer preset uso "Windows 10 64-bit" -> "Install" - > "Install" -> En "Select instalation directory" pongo un directorio de fácil acceso, ya que es en ese directorio donde Lutris creará el nuevo prefix (en mi caso es /home/raven/Games/cheatengine)-> "Continue" -> En "Select setup file" selecciono el archivo instalador de CheatEngine y procedo con la instalación como si estuviera en Windows. Una vez que se ha instalado el CheatEngine, navego en la carpeta donde se creó el prefix, entro a la carpeta "drive_c/users/raven/Saved Games" y copio el contenido de mi carpeta "Saved Games" desde mi unidad donde tenia instalado Windows. Este paso es para conservar el avance que llevo en mis juegos.
Copio las carpetas de mis juegos de Windows a mi carpeta de usuario de Linux y para agregarlos a Lutris sigo los siguientes pasos: "Options" -> "Add games" -> "Add locally installed game" -> En "Game info" escribo el nombre del juego y en Runner selecciono "Wine (Runs Windows games)", en Game Options en Executable selecciono el archivo ejecutable del juego y en Wine prefix selecciono la carpeta donde está ubicado el prefix que cree al instalar CheatEngine (esto con la finalidad de "instalar" el juego en el mismo espacio en el que instalamos CheatEngine y poder utilizar CheatEngine con el juego, así como poder utilizar las partidas guardadas que restauramos anteriomente), en Ruuner Options asegurarnos de utilizar la versión de wine-ge o Proton que esté seleccionada en el prefix de CheatEngine -> "Save".
Con esto deberá aparecer un ícono para correr nuestro juego desde la interfaz de Lutris.
Ahora bien, hay algunos juegos que requieren bibliotecas adicionales o codecs multimedia para poder mostrar algunos videos. Cada juego tiene diferentes requisitos, en mi caso uno de mis juegos necesitaba los codecs LAVfilters. Por lo que descargué el instalador de los codecs y procedí a instalarlos no desde Lutris, sino desde la línea de comandos en el prefix que utiliza mi juego para funcionar (en mi caso, es el mismo prefix del cheatengine) con el comando:
WINEPREFIX=/home/raven/Games/cheatengine wine LAVFilters-0.80-Installer.exe
También puede darse el caso que el juego que nos interese hacer funcionar sea muy viejo y se necesite que funcione desde un prefix de 32 bits y que además necesite de las bibliotecas de DirectX de versiones 9 o anteriores para funcionar. En este caso descargué el instalador offline de los runtimes de DirectX 9 y los instalé con Lutris de forma similar al CheatEngine, sólo que en "Installer preset" se debe de utilizar una versión de Windows de 32 bits como Windows XP. Una vez concluida esa instación, podremos utilizar ese prefix para jugar (o probar) juegos viejos que no sean soportados por la arquitecuta de 64 bits.
Y eso es todo por el momento. Esto no tiene la intención de ser una guía, sólo de brindarle a usted amable lector a mi yo del futuro una referencia rápida para replicar unas configuraciones que me llevaron algunas horas de investigación para solventar ciertos problemas. Y aunque podrá parecer que se me ha olvidado incluir la instalación Steam, la verdad es que no es el caso, para correr los juegos de GOG que tengo no he necesitado instalar Steam para que funcionen correctamente.
Como diría Gus Rodríguez, ¡Estamos en contact!