Mostrando entradas con la etiqueta gnu+linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta gnu+linux. Mostrar todas las entradas

viernes, 14 de agosto de 2026

X-CPC emulator, vuelve el pionero en la emulación de Amstrad CPC para GNU/Linux

Cuando empecé mis primeros pasos con el pingüino, todavía había muchos programas que no estaban disponibles o aún eran pruebas de concepto, así pasó con una de las primeras cosas que busqué: un emulador de Amstrad CPC.

Todavía quedaban años o incluso décadas para los grandes emuladores que tenemos hoy en GNU/Linux, pero en mi búsqueda me encontré con uno que, aunque todavía muy verde, ya se dejaba usar, era xcpc.

En los últimos años, este vetusto emulador ha resurgido de sus cenizas como ave fenix reclamando su puesto entre los emuladores modernos de Amstrad CPC.

 

Ahora puede hacer muchas más cosas que antaño, gracias al buen hacer de Olivier Poncet:

  • Monitores color, fósforo verde y blanco y negro. 
  • Activación de la simulación de monitor de tubo con su curvatura y muy configurable.
  • Refresco de la pantalla a 50 o 60 Hz. 
  • Modo de renderizado: openGL o Ximage.
  • Sigue soportando solo la gama NO plus, a elegir entre: 464, 664 y 6128.
  • Elección de la compañía que hace el CPC: Amstrad, Isp, Thrium, Schneider, Siasho, Solavox, Awa u Orion.
  • Teclado inglés o frances. 
  • Uso y gestión de unidades A: y B: creación, borrado y uso de disquetes. No soporta cassette.
  • Carga y creación de snapshots (volcados de memoria). 
  • Soporta dsk y sna, tanto sin comprimir como comprimidos en formatos zip y gz.
  • Soporta arrastrar y soltar archivos. 
  • Uso de los dos joysticks: reales o mapeados a teclado.
  • Subir y bajar el sonido. 
  • Pausar, resetear la emulación. 

Para disfrutar del emulador puedes descargar los binarios ya compilados de la página oficial del emulador como paquete deb o AppImage.

También puedes compilártelo a partir de los archivos fuentes de la rama "release", por ejemplo, si quieres ejecutarlo en alguna arquitectura especial o simplemente quieres compilarlo tú mismo, estos serían los pasos en Debian y derivados:

  1.  Instalar las dependencias para que la compilación se complete:
    sudo apt install git build-essential xorg-dev libgtk-3-dev zlib1g-dev libbz2-dev libzip-dev libepoxy-dev
  2. Descargarse el código fuente:
    git clone -b release https://gitlab.com/ponceto/xcpc-emulator xcpc
  3. Compilar:
    cd xcpc
    autoconf
    automake
    libtool
    autoreconf -v -i -f
    ./configure --prefix=/ruta/donde/lo/quieres/instalar
    make -j$(nproc)
  4.  Crear los accesos directos para tu comodidad.

Recuerda que si necesitas compilar pero todavía te echa para atras RetroMultiInstaller lo hará por ti de manera transparente y hasta te dejará el acceso directo en el menú.

viernes, 7 de agosto de 2026

¿WINE no es un emulador?

Hace poco un chico de un foro me ha preguntado porqué pongo WINE en la categoría de emuladores en el Wiki de Emuladores para GNU/Linux o en el archivo README.md de RetroMultiInstaller, no he podido olvidarme de la tira de las aventuras del Capitán Literal de Fantasmistas, pero voy a intentar aclarar porque debería seguir en esos sitios aunque no lo sea académicamente al no ser un emulador de arquitectura completa.

 

¿Qué significa “Wine Is Not an Emulator”?

WINE significa literalmente “Wine no es un emulador” y es un acrónimo recursivo.

Wine es una capa de compatibilidad que permite ejecutar programas de Windows en Linux y otros sistemas Unix-like traduciendo las llamadas de Windows a equivalentes del sistema anfitrión, en lugar de simular un PC completo como haría un emulador o una máquina virtual.

Es decir:
- No emula el hardware ni un Windows entero.
- Traduce las APIs de Windows para que muchas aplicaciones funcionen en Linux.
Por eso suele ir más ligero y rápido que una máquina virtual, porque solo hay que emular/traducir las instrucciones Windows a las de GNU/Linux.

De hecho por si mismo no es capaz de funcionar en plataformas distintas sin apoyo de otros emuladores que sí emulan entornos distintos, p.e.: un programa de Windows PC en una raspberry pi.

No es el único "emulador" que está en esa frontera, hay más casos:

  • 22NICE fue un emulador de CP/M que hacía lo mismo sobre MS-DOS (venía con las primeras versiones de CPCEmu para este sistema).
  • El viejo DosEMU creo recordar que hacía lo mismo en los primeros linuxes simulando un DOS, antes de tener el estupendo DosBOX y sus forks.
  • DosBox puede que esté en el mismo caso, aunque esto último no lo tengo tan claro ya que DosBOX sí es capaz de funcionar en plataformas distintas pero no emula ninguna versión de MS-DOS concreta.
  • A los dos emuladores de CP/M para GNU/Linux que hay en el Wiki les pasa algo similar a DosBOX.


Es decir, puede que toda la categoría de "Emuladores de Sistema" esté en este caso, si a alguien se le ocurre otra denominación más precisa... "¿Simuladores de API?", pero que sea explicativa de lo que es la categoría, porque si pongo eso no lo entendería nadie.  

Conclusión: WINE no es un emulador de un sistema operativo entero ni una arquitectura pero SÍ simula el comportamiento a nivel de llamadas al sistema, a efectos prácticos hace su trabajo y por tanto debe seguir en los enlaces que se indican.
 

jueves, 28 de mayo de 2026

Cadence, emulador Amstrad CPC enfocado al desarrollo

Cadence es un nuevo emulador que está desarrollando Abalore, conocido en la escena Amstrad por hacer diversos desarrollos interesantes como su juego Alcon 2020, por nombrar un botón de muestra.


Está disponible para GNU/Linux, macOS  y Windows, en paquetes AppImage, DMG y EXE respectivamente.  

A pesar de estar en desarrollo, lo he probado como un emulador normal y me ha parecido que va muy fino y preciso, incluso con juegos tan exigentes como Pinball Dreams y algunos demos difíciles de emular.

Abalore ha preparado un appimage en su página de proyectos para simplemente descargar, darle permisos y ejecutar, si tienes una distro Linux actual es muy buena opción, por ejemplo Debian 13.

Sin embargo yo tuve algunos problemas con equipos con la versión anterior de Debian por versiones de una librería, además de que no serviría para una raspberri pi al ser otra arquitectura de hardware distinta.

Ambos problemas los solucioné compilando el código desde su repositorio en github, algo tan sencillo como ejecutar los siguientes comandos en tu terminal:

Nos hacemos administradores con los comandos sudo bash o su- y tecleamos:

apt install git qt6-base-dev qt6-svg-dev libqt6opengl6-dev libportaudio2 portaudio19-dev build-essential
git clone https://github.com/abalore/Cadence
cd Cadence
qmake6 Cadence.pro
make -j"$(nproc)" 

O lo instalamos con RetroMultiInstaller que ya incluye este emulador y hasta crea el acceso directo.

El funcionamiento es muy sencillo:

  • Abajo puedes ver unos botones alargamos para cargar cintas o discos, tanto en la unidad A: como en la B:, para cargar o expulsar hay que hacer doble clic en el botón correspondiente.
    •  También tiene un testigo como los CPC reales mostrando la actividad de las disqueteras.
  • Arriba tienes los menús para seleccionar el modelo de CPC, reseteo, selección de medios y la joya de la corona: las herramientas para desarrollo, debug, inspeccionar memoria, puntos de ruptura...
  • También puedes usar las teclas de función para diferentes operaciones, de entre las que destacamos:
    • F1: Insertar cinta
      • Mayus + F1: rebobina
      • Ctrl + F1: expulsa la cinta.
    • F2, insertar disco en la unidad A:
      • Ctrl + F2: expulsa disco en A:.
    • F3, insertar disco en la unidad B:
      • Ctrl + F3: expulsa disco en B;.
    • F5: muestra el depurador.
    • F6: muestra el ensamblador.
    • F9: desbloquea el límite de la velocidad real del CPC.
    • F10: activa la emulación de joystick.
    • F11: muestra el emulador a pantalla completa.
      • Mayus + F11: monitor fósforo verde.
      • Ctrl + F11: escalado suave.
    • F12: reset.
    • Ctrl + un número del 0 al 5: activa la persistencia del fósforo.
    • Alt + F4: salir del emulador.
  • Todos atajos de pantalla en el depurador y ensamblador podéis verlo mediante la opciones de Menú:
    • Help ► Shotcuts...

 

Cadence, como nos ha recordado su autor, también es un emulador pensado para tener la mínima latencia, tanto el vídeo como en audio, algo que van a agradecer y mucho los jugones más exigentes.

Puedes poner que emule el joystick o no, así como el comportamiento de la tecla mayúsculas para que emule teclas especiales. Os recomiendo que vayáis experimentando las muchas opciones que trae. 

Un emulador llamado a ayudar a los desarrolladores del CPC y a aficionados exigentes y amantes de los sistemas unix. 

viernes, 15 de mayo de 2026

Crear una imagen para una microSD a partir de los archivos y directorios que hay en una ruta de directorio

Supongamos que queremos crear una imagen para distribuir entre dispositivos que consiste en un conjunto de archivos y directorios contenidos en un archivo ZIP que hay que volcar en una microSD con formato FAT32, por ejemplo para usar algún desarrollo baremetal para algún dispositivo ARM, real o emulado.

Vamos a tomar como ejemplo el paquete del software Symbos40pack para Amstrad CPC del que se habló hace poco en este artículo de AUA.

Para empezar hay que instalarse las dostools ya que vamos usar el formato FAT32:
sudo apt install dosfstools

  1. Descargar el sofware de la dirección:
    https://mega.nz/file/GMAHEQBQ#HGBzIviRVH5PZsMNnPDGBu-B3oa9764b-2vyph3bu_k 

    Cuando descargamos la distribución obtenemos un archivo ZIP que hay que descomprimir en una tarjeta SD que hay que meter en el M4, por tanto el primer paso va a ser descomprimir, lo podemos hacer desde el explorador del sistema o desde consola con el comando unzip.

  2. Para no liarla recomiendo descomprimir en una carpeta donde solo esté el contenido del zip, asumiendo que estamos en la ruta donde hemos descargado Symbos40pack.zip :
    mkdir symbos40
    cd symbos40
    unzip ../Symbos40pack.zip

  3. Hay que averiguar el tamaño del sistema descomprimido.

    du . -sh

    Que nos da un tamaño de 658M, así que habrá que crear una imagen de un tamaño algo más grande, por ejemplo de 1000Mb.

  4. Nos aseguramos que están instaladas las dostools:
    sudo apt install dosfstools
     
  5.  Creamos la imagen de la tarjeta SD:

    dd if=/dev/zero of=../symbos40pack.img bs=1M count=1024
    /sbin/mkfs.vfat ../symbos40pack.img
    mkdir /tmp/imgmnt
    sudo mount -o loop ../symbos40pack.img /tmp/imgmnt
    sudo cp -a . /tmp/imgmnt/
    sudo umount /tmp/imgmnt

Ahora esta imagen la podríamos "tostar" en una microSD o pendrive con el comando dd o usar en un entorno de virtualización, emulación, etc...

viernes, 1 de mayo de 2026

Instalar PiApps en Raspberry Pi OS

PiApps es un script para instalar aplicaciones en Raspberry Pi OS adaptadas específicamente para este tipo de placas.


 

Es un buen complemento para completar la terna de instaladores con synaptic, para instalar software genérico de la familia Debian y RetroMultiInstaller, la colección de scripts para hacer triviales instalaciones complejas.

Si no lo tienes instalado lo puedes instalar desde el propio RetroMultiInstaller o manualmente tecleando estos comandos desde la consola de GNU/Linux:

sudo apt install curl
curl -fsSL https://raw.githubusercontent.com/Botspot/pi-apps/master/install | bash

Ahora tienes un nuevo acceso a PiApps en la categoría Accesorios del menú de aplicaciones.

También se crea un acceso en el escritorio, en este caso si hacemos doble clic nos aparece un aviso de que es una secuencia de órdenes, nosotros pulsamos ejecutar.

 

Cuando ejecutes el programa aparecerán las categorías en las que se clasifican, haciendo clic en cada una de ellas s aparecen los programas con una opción de 'Back' para volver al menú anterior.

Las aplicaciones instaladas aparecerán en un color verde, reconoce las que ya estaban instaladas con apt (todas las instaladas con synaptic y algunas con RMI)

Al hacer clic en un programa aparece la descripción del mismo ofreciendo la opción de instalarla o desinstalarla. 

Al pulsar Instalar se ejecuta el script personalizado de instalación. 

viernes, 13 de marzo de 2026

Retropixel y OpenSouthCode este verano en Málaga

Este año empezaremos el verano en Málaga con dos de los grandes eventos tecnológicos tecnológicos que se celebran todos los años en la ciudad. 

Retropixel 2026 

Retropixel 2026, la IX Muestra de retroinformática y videojuegos, se traslada este año al Palacio de Ferias y Congresos de Málaga (FYCMA), los días 3, 4 y 5 de julio... nos han comentado que sigue siendo gratis :D


Ver el mapa más grande

Por si alguien no sabe a estas alturas qué es RetroPixel Málaga:
RetroPixel es una actividad orientada para toda la familia, cultural, solidaria y completamente gratuita organizada por la Asociación Lúdico Técnica de Aficionados a la Informática Retro (ALTAIR), más conocidos por realizar el podcast Retro Entre Amigos. El evento está patrocinado por el Polo de Contenidos Digitales.
El objetivo de RetroPixel es dar a conocer la historia de la informática, los orígenes de la industria de los micro ordenadores, ordenadores personales y videoconsolas así como la evolución de los videojuegos en estos últimos 40 años.

En esta edición de RetroPixel celebrarán:

  • 30 aniversario de Nintendo 64
  • 50 aniversario del microprocesador Zilog Z80
  • El auge del 3D: 30 años de Quake y Tomb Raider


Los Contenidos se suelen dividir en varias zonas:

  • Exposición de componentes, ordenadores, micro ordenadores y vídeo consolas: Esta zona de la actividad consistirá en la exposición de ordenadores tanto de uso empresarial como doméstico (micro ordenadores), haciendo especial hincapié en los micro ordenadores de los años 80 y 90. También se realizará una exposición de las videoconsolas más importantes de estas mismas décadas.
  • Zona de juego: En esta zona se montarán micro ordenadores, videoconsolas y máquinas recreativas y pinballs (si fuera posible) de los 80 y 90 para que los visitantes puedan jugar a los videojuegos que marcaron el comienzo de la industria.
  • Conferencias: Se realizarán conferencias y/o talleres sobre la historia de la informática, desarrollo de video juegos, historia de los videojuegos…
  • Torneos: Se realizarán torneos de videojuegos entre los asistentes que quieran participar.
  • Talleres: Se realizarán diferentes talleres para niños y mayores.


En la página oficial, https://www.retropixel.es/, irán poniendo más información próximamente, ¡estad atentos! :D

Tanto el recinto como el aparcamiento es enorme, en la WikiPedia lo podéis ver,  por lo que no hay problemas para ir en coche, aunque también está bien comunicado por autobuses.

 

OpenSouthCode 2026

Una semana antes y a pocos metros, se celebra como todos los años, OpenSouthCode 2026,  del 26 al 27 de junio en la Térmica. También es un evento gratuito.


Ver el mapa más grande

Para quien no lo conozca aún se trata de un evento con charlas y talleres muy interesantes en todos los campos relacionados con el software/hardware libre y cultura abierta, si piensas que tienes algo que aportar todavía admiten propuestas hasta final de mes.

También se puede ir en coche, pero para no tener problemas de aparcamiento es más recomendable usar el autobús, las líneas 15 y 16 pasan muy cerca. 


 Yo no se tú, pero yo no me los voy a perder :D

viernes, 13 de febrero de 2026

FooBilliardPlus: la evolución lógica de FooBilliard

FooBilliard era un juego de billard 3D que se jugaba con el ratón y que ahora tiene un más que digno sucesor FooBilliard plus, sigue siendo un juego libre.


El juego se controla con el ratón con el que apuntas la bola moviéndote con el mismo y aumentas o disminuyes la fuerza del disparo con la rueda de desplazamiento, todo de un modo bastante realista.

Una vez la tienes preparada basta con pulsar el botón central del ratón o la barra espaciadora para hacer tu lanzamiento.

Arriba a la derecha hay unos botones que te permiten controlar la música o acceder a la ayuda con todas las teclas disponibles.


Soporta los siguientes tipos de juego: 8ball, 9ball, snooker o carom

Un juego simple, bonito y muy adictivo.

Los usuarios de distribuciones de GNU/Linux lo podéis instalar de los repositorios oficiales, por ejemplo con este comando:

https://foobillardplus.sourceforge.net/ 

También está disponible para otras familias de distribuciones de GNU/Linux, Windows y código fuente.


viernes, 19 de diciembre de 2025

Instalando Wine con características avanzadas en Debian

Hasta ahora me había bastado con instalar el paquete wine para ejecutar el poco software de Windows que todavía necesito, muy poca cosa la verdad, hasta que me tropezado con Bricklink StudIO, que ya expliqué como instalarlo en GNU/Linux. 

Lo paradójico es que se trata de un programa que es un producto derivado de Blender, por tanto debería ser software libre y compilarlo nativo para GNU/Linux debería ser bastante trivial, pero como es un freeware privativo y a sus creadores no les da la gana pues hay que tragar la versión de Windows.

Bueno, a lo que vamos, para instalar wine para que sea lo más versátil posible hay que seguir una serie de pasos:

  1. Editamos el archivo /etc/apt/sources.list añadiendo después de cada línea las palabras "contrib" y "non-free" si no las tiene, ¡ojo! si tiene non-free-firmware también debe tener non-free, lo podemos editar con cualquier editor como root, por ejemplo:
    sudo nano /etc/apt/sources.list
    Al final del artículo pondré un ejemplo del contenido de este archivo.

  2.  Añadimos soporte a la arquitectura de 32 bits, para los programas antiguos:
    sudo dpkg --add-architecture i386
     
  3. Actualizamos el índice de software disponible:
    sudo apt-get update

  4. Instalamos primero la versión de 32 bits.
    sudo apt install wine32

  5. Instalamos el resto de versiones (si alguna no está disponible, no pasa nada):
    sudo apt install wine
    sudo apt install wine-stable
    sudo apt install wine64

  6. Instalamos la poderosa herramienta winetrick para gestionar wine:
    sudo apt install winetricks

  7. Con esta herramienta podemos instalar librerías Windows que necesitemos para determinados programas, por ejemplo, en el caso de Stud.IO tuvimos que hacer:
    winetricks dotnet48 vcrun2019 corefonts

  8. Otro truco para sacar más partido a wine es teclear wine y pulsar dos veces la tecla TAB, con lo que nos saldrá todos los comandos disponibles.

  9. Uno muy interesante es winecfg que nos permite elegir la versión de Windows a imitar, librerías DLL a sustituir por nativas, etc...


  10. También podemos asignar unidades a diversas rutas, una buena práctica de seguridad es quitar las que trae por defecto y poner en su lugar otra creada por nosotros.


  11. ¿Necesitas más rendimiento? Prueba con las siguientes opciones:
    1. Integración de escritorio > Tema > Ningún tema.
      Igual que en los Windows reales desactivar el servicio "temas" aumenta considerablemente el rendimiento, a cambio de ver las ventanas con un aspecto más antiguo.
    2. Gráficos > Configuración de las ventanas (más agresivo).
      Desactivando todas las opciones puede que consigas más rendimientos, aunque quitar las opciones para permitir que el gestor de ventanas decore y sobre todo controle las ventanas puede hacer más incómoda la interacción con las aplicaciones nativas. 
  12. Hay otras opciones avanzadas que no conozco porque aún no las he necesitado, si fuera así las añadiré a este artículo.

Hay otras opciones con lanzadores y paqueterías modernas, pero personalmente no me gustan porque las veo de funcionamiento oscuro, con requerimientos de hardware exagerados y complicada interoperatividad con otros programas.

Quien tenga curiosidad puede explorar esos caminos.

viernes, 7 de noviembre de 2025

Accesos directos en el menú de MATE con categorías y subcategorias (niveles ilimitados)

Este artículo trata sobre algo que tenía ganas de hacer y que es muy difícil encontrar información: tener accesos directos en menús en categorías y subcategorías nuevas y distintas a las que ya tienes en el sistema. Vamos a verlo paso a paso.

Antes de continuar, recomiendo tener activado etckeeper por si nos equivocamos en la creación de la estructura de accesos directos y categorías, aunque en todo caso se pueden borrar los archivos que relacionan accesos directos y categorías.
 

1. Crear un acceso directo

Hace tiempo expliqué como crear un archivo .desktop para crear un acceso directo, en este caso, como queremos que sea un acceso en el menú del sistema, debemos crearlo en la carpeta /usr/share/applications, por poner un ejemplo muy simple, podríamos crear un archivo caprice32.desktop para crear un acceso directo al emulador Caprice32 con este contenido:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Caprice 32 (Amstrad CPC)
Name[es]=Caprice 32 (Amstrad CPC)
Comment=Amstrad CPC/CPC+ Emulator
Comment[es]=Emulador de Amstrad CPC/CPC+
Icon=caprice32cp
Exec=./cap32
Path=/opt/linuxemus/caprice32
Terminal=false
Categories=Games;

En este ejemplo, definimos:

  1. Las dos primeras líneas definen que el tipo de acceso es para ejecutar una aplicación (Type=Application) y la codificaciones de caracteres, unicode (UTF-8) para representar acentos, por ejemplo. 
  2. El nombre del acceso directo (Name).
  3. La descripción que se mostrará al situar el ratón sobre el mismo (Comment).
  4. El nombre del icono, que en este caso debería estar creado en la ruta absoluta /usr/share/pixmaps/cap32.png (el formato de imagen recomendado es png).
  5. El comando a ejecutar, si se va a ejecutar en una ruta concreta debe ir precedido por ./ mientras que si se puede ejecutar en cualquier directorio sería simplemente:
    Exec=cap32
  6. La ruta desde la que se va a ejecutar el comando, en este caso /opt/linuxemus/caprice32, si es un comando que se puede ejecutar desde cualquier ruta no ponemos una línea que empieza por Path=
  7. Terminal, indica si se va a abrir una terminal para ejecutar el programa o no, es útil, cuando vamos a ejecutar programas que se muestran en consola.
  8. La categoría en la que va a estar el programa (Categories), en este caso iría a la de juegos pero en este ejemplo habría que eliminar esta línea si solo queremos que aparezca en la categoría que vamos a crear. 
  9. Las etiquetas que terminan en [es] indican el texto alternativo para el idioma español. 

 

2. Crear una nueva categoría (de primer nivel)

Si queremos crear una nueva categoría, por Ejemplo emuladores hay que añadir tres archivos más:

  1. Un nuevo icono para la categoría, por ejemplo,  /usr/share/pixmaps/emulators.png.
  2.  El archivo que define la nueva categoría, que debe estar en la ruta /usr/share/desktop-directories, vamos a llamar al archivo emulators.directory con el siguiente contenido:
    [Desktop Entry]
    Version=1.1
    Name=Emulators
    Name[es]=Emuladores
    Comment=Emulation and retrocomputing
    Comment[es]=Emuladores y retroinformática
    Icon=emulators
    Type=Directory
  3. El archivo que indica que el acceso directo previamente creado debe estar en esta nueva categoría que debe estar en la ruta absoluta /etc/xdg/menus/applications-merged/caprice32cp.menu con el siguiente contenido.
    <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
        "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
    <Menu>
        <Name>Applications</Name>
        <Menu>
             <Menu>
               <Name>Amstrad</Name>
               <Directory>amstrad.directory</Directory>
               <Include>
                 <Filename>caprice32cp.desktop</Filename>
               </Include>
             </Menu>
        </Menu>

 Y con esto ya tendríamos el acceso directo en nuestra nueva categoría emuladores.

Repetimos todo el proceso para todos nuestros emuladores, creando sus accesos directos y creando nuevos archivos para relacionarlos con la categoría, que deben ser exactamente iguales, salvo por la línea que empieza por <Filename> 

 

3. Crear más profundidad de categorías

Bueno, pues ya hemos creado accesos directo para las 3 docenas de emuladores que tenemos instalados, pero el menú se hace muy largo y desorganizado, ¿no podríamos crear subcategorías para cada tipo de emulador?

Pues sí, para ello solo tenemos que crear un nuevo acceso directo y un nuevo archivo de definición de categoría como hemos visto en el punto anterior, en las rutas:

  • /usr/share/pixmaps/amstrad.png
  • /usr/share/desktop-categories/amstrad.png

El archivo que va a tener que cambiar algo con respecto al anterior caso va a ser el de relaciona el acceso directo con la categoría ya que debe definir que dentro de la categoría Emuladores debe haber una categoría Amstrad y dentro de ella el acceso directo al emulador, de forma que el archivo /etc/xdg/menus/applications-merged/caprice32cp.menu ahora quedaría así:

 <Menu>
    <Name>Applications</Name>
    <Menu>
         <Name>Emulators</Name>
         <Directory>emulators.directory</Directory>
         <Menu>
           <Name>Amstrad</Name>
           <Directory>amstrad.directory</Directory>
           <Include>
             <Filename>caprice32cp.desktop</Filename>
           </Include>
         </Menu>
     </Menu>
</Menu>

El resto de emuladores de Amstrad deben tener un archivo igual para relacionar las categorías y el acceso directo que solo van a cambiar en el nombre del archivo y en la referencia a su acceso directo en la línea <FILENAME>

Igualmente podríamos crear más subcategorías para el resto de sistemas, que diferirían con ésta de Amstrad también en las dos líneas que definen la subcategoría y que deben ser iguales en las del mismo sistema para no duplicar subcategorías.

Este truco debe funcionar en la mayoría de entornos gráficos de GNU/Linux. 

viernes, 26 de septiembre de 2025

Denise, emulador de Commodore 64 y Amiga

Denise, es un interesante emulador de ordenadores Commodore, en concreto del C64 y el Commodore Amiga.


Podéis instalarlo con RetroMultiInstaller, que ahora os creará el acceso directo en el menú en una nueva subcategoría Commodore dentro de la categoría Emuladores, aunque la instalación manual es tan sencilla como bajarse el último deb de su página oficial e instalarlo con dos comandos:

sudo apt install deniseXXX.deb
sudo apt install -f

Nada más iniciar el emulador os vais a encontrar un problema si no domináis el alemán, ya que los menús en principio aparecen en ese idioma, para cambiar el idioma, castellano en nuestro caso, vamos a las siguientes opciones:

Optionen ►  Einstellungen ► Sprache ► Spanisch

E instantáneamente aparecerán los menús en nuestro idioma.

En los menús tenemos opciones para el C64 y el Amiga, si le damos a reiniciar en el item correspondiente de cada uno de estas opciones arrancará una máquina u otra, ojo, el Commodore no necesita configuraciones ni archivos extra, mientras que si no configuramos el Amiga nos arrancará la distribución Aros.


En el modo Amiga si haces clic dentro de la pantalla captura el ratón, que puedes recuperar haciendo clic con el botón central (la rueda). 

Navega por los menús del emulador para descubrir todas sus posibilidades.




viernes, 22 de agosto de 2025

¿Que hago después de instalar Debian 13?

Por si alguien no se ha enterado aún, el pasado 9 de agosto salió Debian 13 estable, así que estoy actualizando los equipos como siempre de menos a más críticos.

Por ahora, he actualizado mi viejo portátil de Debian 12 a 13 y he instalado de cero en mi segunda torre, un viejo DELL Inspirion 3847 i3 así digo adiós al último Ubuntu que todavía tenía instalado, un obsoleto 20.04 que ya olía. Para ello me he creado un pendrive con Ventoy.

Nos vamos a centrar en la instalación limpia en este último equipo, después de la cual he hecho las siguientes operaciones:

  1. Como recomendé en el anterior artículo, instalo git y etckeeper para tener un control de los cambios que vaya haciendo en las configuraciones.
    sudo apt install git etckeeper
  2. Actualizo el sistema:
    sudo apt update
    sudo apt upgrade
  3. Descargo RetroMultiInstaller y lo ejecuto para facilitar la instalación desatendida de buena parte de mis programas fundamentales:
    cd $HOME
    mkdir opt
    cd opt
    git clone https://gitlab.com/cpcbegin/retromultiinstaller
    cd retromultinstaller
    ./retroinstaller.sh
  4. Nos vamos a la instalación desatendida mediante las opciones:
    Update > Multiinstall
  5. Seleccionamos los programas que vamos a instalar y pulsamos aceptar
  6. Instalo los paquetes que no están en los menús de RMI por estar en los repositorios oficiales y no presentar dificultades en su puesta en marcha:
    sudo apt install usbutils mc dosbox jedit okular audacity vlc blockattack keepassxc-full pdfarranger

 

Otras opciones

Aquí tenéis enlaces de como hacer diversas configuraciones a vuestra discreción en función de como quieras usar el sistema, bajo que circunstancias y para qué:

  • Montar disco auxiliar sin introducir una contraseña, por ejemplo, al hacer clic en un disco duro interno de gran capacidad donde tenemos nuestros archivos.
  • Automontaje:  también nos puede interesar que el disco interno auxiliar sea accesible aunque no hayamos hecho clic en él.
  • Autologin: solo en equipos que no tengan archivos ni datos sensibles y vayan a ser usados por un solo perfil.
     

Por supuesto, esto es solo una guía de lo que puedes hacer después de instalar Debian 13, puedes instalar y configurar lo que te guste y/o necesites. 



viernes, 15 de agosto de 2025

Controlar los cambios en la configuración de GNU/Linux con etckeeper

Para adaptar nuestro GNU/Linux a nuestras necesidades muchas veces tenemos que hacerle configuraciones globales a nivel de todo el sistema, esto se hace cambiando los correspondientes archivos de configuración que están dentro de la carpeta /etc como archivos sueltos u otros que están en las subcarpetas de esta ruta.

Es una operación delicada que tenemos que hacer con los máximos privilegios como root y que, si configuramos mal, podemos hacer que algún servicio deje de funcionar y no sabremos como ponerlos como estaba antes.

Para esto tenemos el paquete etckeeper que lo que hace, es gestionar todos los cambios que se produzcan dentro de la carpeta /etc usando git y guardarlos como commits, que son instántaneas de como estaba la configuración en un momento dado.

El programa creará un commit cada vez que hagamos una operación importante, como actualizar paquetes, aunque también lo hará cada día con los cambios que hayamos hecho o incluso podemos crear un commit de manera manual para tener los cambios de una configuración en concreto.

Para instalarlo lo podríamos hacer con un comando como éste:

sudo apt install git etckeeper

Como al instalarlo crea el commit inicial, lo ideal sería hacerlo con una distro recién hecha para así tener toda la historia de cambios, aunque se puede instalar en cualquier momento, solo que todo lo que se haya cambiado antes no habrá sido monitoreado.

 

Uso de etckeeper

Para usar etckeeper, abrimos una consola de comandos, nos situamos en la carpeta /etc

cd /etc

y como root ejecutamos los diferentes comandos git, es decir, según la configuración de nuestro GNU/Linux debemos haber tecleado su - antes de introducir el comando o usar sudo si nuestro usuario ya está en los autorizados en sudoers, como yo voy a asumir este último escenario voy a asumir el uso de sudo.

Algunas cosas que podemos hacer con etckeeper

  • Ver la historia de cambios:
    sudo git log
  • Ver si hay cambios pendientes de controlar:
    sudo git status
  • Añadir cambios aún no controlados:
    sudo git add .
    sudo git commit -m "Descripción del cambio"
  • Si la cosa va mal, podemos deshacer el último cambio:
    sudo git reset --hard HEAD~1

Para más información mira cualquier manual de uso de git.

viernes, 11 de julio de 2025

M2000: emulador Phillips P2000

M2000 es un emulador libre de ordenadores Philips P2000, uno de los primeros ordenadores domésticos de 1981 que, heredero de las consolas Videopac, funcionaba con cartuchos y minicassettes. NO ES UN MSX.

El mismo autor incluye en otro repositorio software de ejemplo para el M2000.

Uno de sus cartuchos incluía un Microsoft Basic muy limitado pero con el que se podían hacer algunas cosas y que probarlo es un buen ejercicio para conocer los inicios de la informática de consumo. También traía cartuchos de Pascal y procesador de textos, estando disponibles otros incluso con CP/M.


Para quien simplemente quiera instalarlo y echarle un vistazo sin complicaciones, ya se puede instalar desde el script RetroMultiInstaller y no necesita leer el siguiente apartado del artículo.


Compilar M2000

Para quien prefiera compilarlo por si mismo debe ejecutar los siguientes comandos:

sudo apt install git build-essential liballegro5-dev
git clone https://github.com/p2000t/M2000
cd M2000
make allegro

Dentro de esta carpeta tendremos un archivo ejecutable llamado M2000 que debemos ejecutar con el comando;

./M2000

Para mayor comodidad recomiendo crear un acceso directo en el escritorio o en los menús, por ejemplo.

Por cierto, funciona perfectamente en PC con distros de 64 y 32 bits, pero también en todos los modelos de raspberry pi y similares.


Enlaces de interés

Para quien quiera saber más sobre este ordenador y su funcionamiento hay varios artículos sobre la serie Phillips P2000:

viernes, 4 de julio de 2025

RetroMultiInstaller: los menús solo muestran apps compatibles con el ordenador que lo ejecuta (e instalación desatendida)

RetroMultiInstaller, el script facilitador de instalaciones tenía el defecto de ofrecerte todos los scripts de instalación en sus menús, aunque no fueran compatibles con tu hardware, así por ejemplo, si lo ejecutabas en una Raspberry Pi podrías terminar instalando un programa que no fuera compatible con ARM y que por tanto no iba a funcionar.

También se ha corregido la instalación por lotes desatendida y ya aparecen solo los programas ordenados para la arquitectura actual.
 
Recuerda que, si ya tienes instalado RMI, lo puedes actualizar seleccionando las opciones:
Update ► update own
 

¿Como lo he hecho y como puedes añadir más instaladores?

Para solucionar esto he incluido un nuevo mecanismo que mira las arquitecturas declaradas en los archivos menu/*.txt de tal manera que la definición de cada línea de script quedaría ahora con esta estructura:
arquitecturas etiqueta definición
  • Las arquitecturas se ponen una detrás de otra separadas por el carácter tubería "|" por ejemplo, NUNCA ESPACIOS NORMALES.
  • La etiqueta sigue siendo el identificador del script.
  • La definición tampoco permite ESPACIOS NORMALES pero sí espacios duros.
Algunos ejemplos, que podemos encontrar casi todos en el archivo menus/multisystem.txt:
  • Si ponemos como arquitectura 'all' no filtrará, es decir, mostrará el script del menú independientemente del hardware desde el que ejecutemos RMI:
    all ZEsarUX ZEsarUX multi emulator
  • Podemos poner una sola arquitectura, en la siguiente línea tenemos un script que solo se mostraría en Raspberry pi OS de 32 bits:
    armv7l Retropie Multi Emulationstation Enviroment
  • Un ejemplo de un script que se ejecutaría en varias arquitecturas, en este caso solo para Intel de 32 o 64 bits o Raspberry pi OS de 64 bits.
    x86|x86_64|aarch64 RetroVM Retro Virtual Machine
  • Las opciones para abrir otro menú o salir del actual deben tener la etiqueta menu para no aparecer en las opciones de la instalación desatendida:
    menu Exit Return to Main Menu
  • Si en un momento un script dejara de funcionar ya no teníamos que borrarlo podemos dejarlo para arreglarlo más adelante y en el menú poner como arquitectura algo así como 'none' o 'disabled':
    none oldgame Old Game
 

He encontrado un programa que NO funciona, ¿qué hago?

Ahora queda la ardua tarea de ir comprobando que las arquitecturas definidas en cada script se corresponden con los programas que se pueden ejecutar en cada arquitectura, como seguro se me van a pasar muchos necesitaré vuestra ayuda en los comentarios para que me indiquéis los que no funcionan.
 
Aunque si abrís una incidencia en el propio gitlab me resultará más fácil tener el seguimiento de lo que está pendiente de arreglar. ;-)



Instalación desatendida por lotes (batch)

viernes, 13 de junio de 2025

Lo mínimo para hacer un video con presentación una sola persona con un móvil y edición básica con GNU/Linux

Este experimento lo hice para crear el vídeo sobre como resetear un Android TV.

En esta ocasión usé dos programas, ffmpeg y vlc, que si no los tienes instalados ya estás tardando. 

sudo apt install ffmpeg vlc

Vamos al lío:
  • introduccion.mp4En la primera parte de vídeo aparezco en mi cuarto de ordenadores con algunos equipos de fondo, este trozo lo grabé yo mismo con el móvil haciendo un "video selfie", pero como en todos los selfies la imagen sale como si te miraras en un espejo, por tanto este trozo requería un efecto de espejo horizontal, para ello usé el siguiente comando de ffmpeg:

fmpeg -i introduccion.mp4 -vf "hflip" introduccion_corregida.mp4

 

  • video_principal.mp4Después grabé en otro archivo todo lo que fue la operación de wipe con la cámara normal del móvil, aquí el problema era hacerlo todo con una sola mano, pero por lo demás fue un vídeo que no requirió modificaciones.

  • video_final.mp4Así que ya solo me quedaba unir los dos trozos, en esta ocasión usé VLC en modo CLI, es decir, un comando de consola:

vlc introduccion_corregida.mp4  video_principal.mp4 --sout "#gather:std{access=file,dst=video_final.mp4}" --sout-keep


Resumiendo: 

introduccion_corregida.mp4 +  video_principal.mp4 = video_final.mp4

Y ya está, terminado y listo para subir :-D

viernes, 30 de mayo de 2025

Usar impresora Epson WorkForce WF-2835 en Debian GNU/Linux

Estos días un compañero del trabajo me ha regalado esta multifunción Epson WorkForce WF-2835.

 


Se trata de una multifunción, con alimentador de hojas, Wi-Fi y muchas de esas cosas modernas que tienen los aparatos de ahora, ¿podré echarla a andar en mi Debian GNU/Linux?

La podemos conectar con el tradicional cable USB pero ya que tenemos, vamos a...

Configurar la Wi-Fi 

Me ha sorprendido la facilidad para configurar la Wi-Fi:

  1. Eliges el SSID de tu Wi-Fi
  2. Tecleas la contraseña, bien usando el teclado virtual o con el teclado tipo móvil del panel.
  3. Pulsar OK

Compruebo si mi i7 con Debian ha detectado la impresora en red directamente sin hacer nada más, para ello me voy a las opciones del menú:

Sistema ► Administración ► Configuración de Impresión
Y efectivamente, ya aparece entre las impresoras configuradas en mi ordenador:


Pero si no es así toca instalar...

Los drivers

Hay que instalarse tanto el driver para impresora como el driver y utilidad para el escaner,  en el caso de Debian, el de impresora lo tenemos en los repositorios, así que simplemente hay que ejecutar:

sudo apt install epson-inkjet-printer-escpr epson-printer-utility sane-airscan escputil

El driver para el scanner NO lo tenemos ni en los repositorios ni en la página oficial de Epson, así que hay que descargárselos de freeprinterdriverdownload.

Hay que instalarse el driver para impresora como para el escaner, y que vienen como paquetes deb, tanto para 64 bits como para 32 bits, en mi caso instalo los de 64 bits y arreglo dependencias al final:

wget   https://download2.ebz.epson.net/epsonscan2/common/deb/x64/epsonscan2-bundle-6.6.42.0.x86_64.deb.tar.gz

tar -zxvf epsonscan2-bundle-6.6.42.0.x86_64.deb.tar.gz

cd epsonscan2-bundle-6.6.42.0.x86_64.deb

./install.sh


Uso de Epson Scan 2

Para acceder a este programa de escaneo por red nos vamos a las opciones de menú:

Aplicaciones ► Graficos ► Epson scan 2

La primerz vez nos pedirá la dirección IP, pero nosotros mejor le ponemos el nombre cualificado para que no nos lo cambie el router, que puede ser algo así como EPSON161EB9.local (*)

Le damos a aceptar, lo busca y ya tenemos operativo el escáner inalámbrico:


Si los conectamos por cable como siempre tendremos disponible el escaner por el programa estándar de escaneado de GNU/Linux.

 (*) El nombre cualificado del dispositivo lo podemos obtener con aplicaciones como AngryIPScanner o comandos de red de consola para descubrir los dispositivos conectados a nuestra Intranet.


viernes, 23 de mayo de 2025

Pysol Fan Club Edition, el juego definitivo de cartas es software libre

Pysol Fan Club Edition, es una alucinante colección de juegos de cartas que instalamos en un solo paquete:

sudo apt install pysolfc

Incluye la friolera de alrededor de ¡1200 juegos de cartas! organizados por categorías.


Permite cambiar algunas reglas y la baraja que queremos usar, incluso cierta personalización como descargar conjuntos de cartas.

Os animo a que lo instaléis y lo probéis, ya que si os gustan los juegos de cartas no os vais a aburrir.

viernes, 28 de marzo de 2025

xgalaga, remake libre galaga para GNU/Linux

Xgalaga es un remake del clásico juego Galaga para GNU/Linux, un matamarcianos aún más trepidante y adictivo que el original, a pesar de que las pequeñas naves puedan hacernos pensar lo contrario.


Lo podéis instalar con el comando:

sudo apt install xgalaga

En realidad son dos versiones del mismo juego, xgalaga y xgalaga-hiperspace que tiene la peculiaridad que si te vas con la nave a una esquina apareces por la otra evitando que te acorralen las naves y los disparos.

Por defecto se ejecuta a pantalla completa, si queréis disfrutarlo en una ventana, tenéis que ejecutarlo desde consola con el modificador -window

xgalaga -window

xgalaga-hyperspace -window

También hay un fork del fork más estático y sencillo llamado xgalaga++ pero no es tan bueno:

sudo apt install xgalaga++

De hecho, es uno de los pocos juegos exclusivos para GNU/Linux, en realidad para el compositor clásico xorg, por lo que en teoría no debería funcionar en Wayland, aunque seguramente lo terminarán adaptando, ¿waylaga?

Los requerimientos son realmente ridículos, diría que funcionaría en cualquier ordenador que tenga menos de 20 o 25 años que pueda ejecutar cualquier distribución de GNU/Linux, incluso las más antiguas.

Se maneja con teclado o ratón, pulsando las teclas k y m respectivamente para iniciar la partida, una buena idea es mapear su teclado con antimicro y así disfrutarlo con un buen mando de juegos.

viernes, 7 de marzo de 2025

Spectacle: capturas de pantalla vitaminadas

KDE Spectacle es la increíble herramienta para sacar capturas que trae KDE.


Permite hacer capturas de todas las pantallas, de la actual, de la ventana activa, de la ventana que está bajo el cursor o una región rectangular.

Se puede definir una demora en la captura, incluir el puntero del ratón, incluir los bordes la ventana o no,...

Pero lo más interesante es la cantidad de añadidos que permite preparar la captura para su consumo para la creación de tutoriales o cualquier tipo de explicación, de una manera rápida y sencilla, gracias sobre todo al botón Anotar:

 
No solo podemos hacer anotaciones también podemos remarcar elementos con cuadrados o triángulos, numerar puntos de la captura para definir los pasos a seguir, ocultar zonas con datos sensibles, etc...
 
La configuración nos permite definir las combinaciones de teclas para sacar las capturas adecuadas. 

Las herramientas disponibles permiten directamente imprimir lo capturado, abrir la carpeta donde guardamos las capturas, grabar la pantalla a otras aplicaciones de screencast como Vokoscreen, OBS Studio, etc...

La captura se puede exportar directamente a diversos programas para su visionado o tratamiento especializado tales como navegadores web, editores de imágenes como GIMP, lectores de PDF, compartirlo, entre otras opciones.


viernes, 28 de febrero de 2025

Godot Engine 4 en Debian 12: instalación (I)

Godot Engine es un motor de creación de videojuegos libre y multiplataforma, una gran alternativa a otros privativos que nos imponen condiciones leoninas para su uso y explotación.

Con él se puede hacer juegos profesionales de gran calidad y de hecho hay muchos ya hechos y que podéis encontrar casi por cualquier sitio.

Permite crear juegos en 2D y en 3D.

Si estás pensando crear un videojuego sopesaría usar este motor.

Hay dos versiones, la normal en lenguaje gdscript o una especial en lenguaje .NET para quien está acostumbrado a este lenguaje. En casi todos los sitios se recomienda la normal.


Vale, ¿y como se instala?

Lo mejor es que ni siquiera tienes que instalarlo, al menos en GNU/Linux, basta con descargarte la última versión estable de la página de descargas en una carpeta, darle permisos de ejecución y ejecutarlo con el comando:

./godotengine

Si no se viera bien es porque tu tarjeta gráfica es muy antigua, y no cumples con los requisitos mínimos como es mi caso, se soluciona lanzando el comando con el siguiente parámetro:

./godotengine --single-window 

En el caso de Debian 12 también lo puedes instalar desde los repositorios oficiales, pero tendrás la versión 3, que puede que te interese más por retrocompatibilidad, incluso puedes tener "instaladas" las dos versiones.


Primeros pasos

Lo primero es crear nuestro proyecto al que le pondremos un nombre, en el que hay que elegir las algunas opciones entre las que destaca las  de Renderizador entre las que podemos elegir:

  • Forward+: para usar el hardware más moderno y puntero, en mi caso no es la mejor opción y si quieres que el juego funcione con hardware más antiguo tampoco va a ser la tuya.
  • Móvil: adecuado para el hardware más limitado de los móviles, aunque el proyecto se pueda luego exportar igual a no vamos a utilizar la potencia del hardware más moderno lo ideal es elegir la opción 'Compatibilidad' en la opción Renderizador.
  • Compatibilidad: pensada para la mayor compatibilidad posible y equipos con menos recursos, esta es la que yo voy a usar.

Como veis también permite controlar el progreso del proyecto con git, algo completamente recomendable y que nos facilitará después la subida a algún repositorio como gitlab o github por ejemplo.

Una vez que creamos el nuevo proyecto nos aparecerá una vista para crea un proyecto de juego en 3D


Pero para empezar se recomienda iniciarse con la creación de un juego 2D, podemos ir cambiando entre unos y otros haciendo clic en los textos que ahí encima de la zona de desarrollo, pudiendo elegir entre Scripts y Asseslib.


En la opción Accesslib podemos descargar recursos y complementos que podamos necesitar para nuestro proyecto.


Intenta hacer alguna chorrada pequeña solo para familiarte con este software, los vídeos que te dejo al final te ayudarán, ve poco a poco.

Ya lo puedes exportar como un ejecutable portable, para ello abre el proyecto con el que has estado trabajando y ve a las opciones:

Proyecto ► Exportar ► Añadir

La primera vez descargará el paquete para exportar que tardará un poco, y ya puedes elegir el sistema para ejecutar tu juego, tienes disponibles:

  • Android
  • GNU/Linux (arquitecturas: x86_64, x86_32, arm64, arm32, rv64, ppc64, ppc32)
  • MacOS
  • Web
  • Windows (arquitecturas: x86_64, x86_32, arm64).


En futuros artículos iremos viendo como hacer algunas cosas con este motor, por ahora aquí tienes algunos sitios para iniciarnos en Godot Engine:

Estad atentos a esta lista de enlaces porque irá creciendo a medida que vaya descubriendo más. ;-)