Reproductor de audio de videojuegos M1 en Linux

El reproductor de audio M1 es un reproductor que permite escuchar el audio de videojuegos arcade o maquinitas directamente de los ROMs del juego. En versiones recientes de Linux, el dispositivo de audio OSS usado de forma predeterminada por M1 ya no es parte de muchas distros y usar la opci贸n alternativa ALSA genera, al menos en mi PC, salida con ruido 馃槮 pero no todo est谩 perdido, aunque OSS ya no forma parte de muchas distros recientes, existe un m贸dulo para emular OSS y as铆 poder correr programas que lo usaban. Para ejecutar M1 en modo ALSA puedes usar el siguiente comando:

monstruosoft@monstruosoft-PC:~/software/M1-0.7.8a6$ ./m1-x64 -s1 samsho3

Puedes reemplazar samsho3 con tu juego favorito 馃槢 . Si el comando anterior funciona entonces 隆felicidades!. Si, como en mi PC, el comando anterior genera salida con ruido entonces puedes forzar la emulaci贸n de OSS de la siguiente manera:

monstruosoft@monstruosoft-PC:~/software/M1-0.7.8a6$ sudo modprobe snd-pcm-oss 
[sudo] password for monstruosoft: 
monstruosoft@monstruosoft-PC:~/software/M1-0.7.8a6$ ./m1-x64 samsho3

Ahora M1 funcionar谩 sin problemas y podr谩s escuchar la m煤sica de tus juegos favoritos 馃榾 . Yo puedo escuchar el tema de Nakoruru de Samurai Shodown III por horas ininterrumpidas 馃槢 .

Advertisements

En corto No. 6 – Habilitar notificaciones de escritorio en Debian Stretch

En un post reciente mencion茅 que tras actualizar a Debian Stretch, las notificaciones de escritorio desaparecieron. He encontrado una forma temporal de solucionarlo ejecutando el comando notification-daemon de la siguiente manera:

monstruosoft@monstruosoft-PC:~$ notify-send "hola"
monstruosoft@monstruosoft-PC:~$ /usr/lib/notification-daemon/notification-daemon &
[1] 10844
monstruosoft@monstruosoft-PC:~$ notify-send "hola"

En el ejemplo anterior, la primer llamada al comando notify-send no produce ninguna notificaci贸n porque notification-daemon no se ha iniciado. Despu茅s de iniciar notification-daemon, las notificaciones de escritorio deber铆an funcionar, por lo menos hasta que reinicies la PC.

Compilar GIMP 2.9 en Debian Stretch 9.1

Al actualizar mi sistema a Debian Stretch era obvio que escribir铆a este post para compilar GIMP 馃槢 . Ya lo hicimos antes as铆 que no repetir茅 todo el proceso ya que podemos usar el post anterior para compilar GIMP para la nueva versi贸n de Debian, lo 煤nico que cambia es que el repositorio estable deber铆a contener versiones m谩s recientes de las librer铆as necesarias de forma que no tengamos que compilarlas manualmente como antes y eso es lo que vamos a averiguar:

Read More

Desaventuras en la tierra de Linux, parte 12-2

Esta es una continuaci贸n del post anterior en el que habl茅 sobre mis primeras impresiones despu茅s de actualizar a Debian 9 Stretch. He encontrado m谩s detalles molestos desde la publicaci贸n anterior, 隆una actulizaci贸n deber铆a dejar tus sistema mejor, no peor!. Este es el tipo de razones por las que a la gente normal no le gusta Linux y mientras siga teniendo este tipo de fallos nunca lograr谩 ponerse en el gusto de los usuarios comunes. 隆No puedes hacer una actualizaci贸n que rompa partes esenciales del sistema!. Claro, incluso Windows ha sufrido de este tipo de problemas; si recuerdan, mucha gente report贸 problemas tras actualizar a Windows 10 pero con Windows es diferente ya que, desde el punto de vista del usuario, hay muchos cambios en la interfaz gr谩fica, la apariencia, etc.. En cambio en Linux, aunque se haya actualizado el kernel y los programas b谩sicos de sistema, los cambios en la interfaz gr谩fica y apariencia son m铆nimos, as铆 que desde el punto de vista del usuario no hay mucha diferencia y, en lugar de obtener un sistema mejorado, terminas con un sistema que queda en un estado peor que como estaba 馃槮 .

En mi caso, adem谩s de los problemas descritos en el post anterior (que no arranque la interfaz gr谩fica tras la actualizaci贸n es simplemente imperdonable), he encontrado otros detalles molestos listados aqu铆 de menor a mayor 铆ndice de molestia 馃槢 :

Las notificaciones de escritorio desaparecieron. No es algo grave pero s铆 molesto que algo que funcionaba antes de actualizar ahora ya no funcione. Cuando dependes de estas notificaciones para saber cuando se terminan de descargar tus torrents o conocer el estado de tus tareas programadas, esto realmente puede ser un problema.

Los macros de xmacro ahora tienen un molesto lag, haciendo que un macro que antes se ejecutaba en un segundo ahora tome varios segundos. Esto no ser铆a tan grave si el efecto del macro fuera consistente pero, en cambio, ahora los macros pueden producir salidas que no coinciden con lo que est谩 programado, haci茅ndolos no s贸lo poco confiables sino potencialmente peligrosos 馃槮 .

La mayor molestia hasta ahora es con el sistema de sonido ya que el audio en mi PC simplemente desaparece de forma aleatoria. He encontrado una soluci贸n temporal para recuperar el audio sin tener que reiniciar la PC cada vez usando el control de volumen de PulseAudio seguido por alsamixer pero un sistema en el que tienes usar soluciones temporales para algo tan b谩sico como el sonido es b谩sicamente un sistema que no funciona 馃槮 .

Es cierto que tambi茅n hay algunas mejoras en Debian 9 pero son f谩cilmente opacadas por todos los errores 馃槮 .

Desaventuras en la tierra de Linux, parte 12

Finalmente decid铆 actualizar mi versi贸n de Debian Jessie a la nueva versi贸n estable Debian Stretch. El proceso de actualizaci贸n se ejecut贸 sin problemas hasta llegar al punto final de la instalaci贸n cuando reinici茅 mi PC para arrancar con la nueva versi贸n del Kernel de Linux 4.9 y fui recibido con… una pantalla negra de terminal porque el modo gr谩fico no se pudo iniciar 馃槮 . 隆Este es el tipo de cosas por las que a la gente no le gusta Linux!. 驴El problema? Antes de actualizar, estaba usando el driver de video privado de AMD/ATI fglrx que fue desinstalado durante el proceso de instalaci贸n por lo que al reiniciar la PC, la configuraci贸n del X server no era v谩lida. Para empezar, este es el tipo de cosas que la actualizaci贸n deber铆a verificar y solucionar autom谩ticamente, quiz谩s usando por lo menos una configuraci贸n predefinida para el X server. Si bien la soluci贸n fue relativamente simple y consisti贸 en crear un nuevo archivo de configuraci贸n usando el comando Xorg -configure, si esto le pasa a una persona con menos conocimientos de Linux, es casi como una sentencia de muerte para su PC que quedar铆a en un estado inutilizable por lo menos hasta que le reinstalen el sistema operativo que, seamos honestos, casi con seguridad ser铆a Windows porque en este punto es cuando la gente normal que quiso probar suerte con Linux regresa a Windows sin pensarlo. 隆El sistema de actualizaci贸n no deber铆a fallar en una parte tan fundamental como esta! 隆No puedes esperar que un usuario com煤n y corriente pueda descifrar los errores cr铆pticos en una ventana de terminal!.

驴Esa fue la 煤nica sorpresa al actualizar a Debian 9? S铆, al menos la 煤nica falla grave, del tipo que dejar铆a a un usuario normal sin poder usar su PC, pero es muy pronto para saber si hay m谩s sorpresas. Algunas molestias menores que ya he notado son las siguientes:

El reproductor MPV ahora no recuerda el volumen de la 煤ltima sesi贸n. En realidad, al parecer, nunca lo hizo 馃槷 . Al parecer no es un problema de Debian sino una caracter铆stica de MPV que antes modificaba el volumen global o por aplicaci贸n del sistema y ahora s贸lo modifica el volumen interno de la aplicaci贸n por lo que al abrirlo nuevamente carga el volumen definido en el control de volumen del sistema. Me gustaba m谩s la forma en que funcionaba antes, no quiero que me reviente los t铆mpanos al abrir un nuevo video o hacer demasiado ruido cuando abro un video porno 馃槢 . Este problema al menos se puede solucionar f谩cilmente definiendo un volumen inicial bajo en el archivo ~/.config/mpv/mpv.conf de configuraci贸n de MPV:

monstruosoft@monstruosoft-PC:~$ cat .config/mpv/mpv.conf 
heartbeat-cmd="xscreensaver-command -deactivate >&- 2>&- &"
volume=10

Otro detalle menor que he notado es que algunas aplicaciones, en particular el editor de texto Mousepad, que ten铆a configuradas para usar una cierta combinaci贸n de color y/o tipo de letra fueron revertidas a su apariencia original 馃槮 . Este es un detalle menor pero no deja de ser molesto tener que volver a configurarlo. Si la configuraci贸n de estas aplicaciones estuviera guardada en el directorio de home, no deber铆a haber sido modificada, lo que me hace pensar que el programa guarda los datos en alg煤n directorio de sistema o bien que el formato del archivo de configuraci贸n cambi贸 entre versiones, en cualquier caso es una molestia.

Por otro lado, actualizar Debian significa que finalmente tengo versiones m谩s reciente de muchas aplicaciones, por ejemplo gcc ahora est谩 en la versi贸n 6.3, pero no todo son buenas noticias, GIMP a煤n no da el salto a la versi贸n 2.9 porque a煤n es considerada inestable, lo que significa que Debian Stretch a煤n sigue con la versi贸n 2.8.18 de GIMP y para usar la versi贸n 2.9 tendr茅 que seguir compil谩ndola manualmente cada que quiera probar los cambios m谩s recientes. LibreOffice se actualiz贸 de la versi贸n 4.x a la versi贸n 5.2 y la verdad esperaba un cambio significativo pero al abrirlo descubro que 隆la interfaz sigue siendo horrible! LibreOffice es suficiente para mis necesidades pero seamos honestos, 隆es visualmente horrible!.

En fin, en los pr贸ximos d铆as seguramente seguir茅 descubriendo m谩s de lo bueno y lo malo de actualizar a Debian 9 Stretch.

         _,met$$$$$gg.           monstruosoft@monstruosoft-PC
      ,g$$$$$$$$$$$$$$$P.        OS: Debian 9.1 stretch
    ,g$$P""       """Y$$.".      Kernel: x86_64 Linux 4.9.0-4-amd64
   ,$$P'              `$$$.      Uptime: 1h 7m
  ',$$P       ,ggs.     `$$b:    Packages: 3628
  `d$$'     ,$P"'   .    $$$     Shell: bash 4.4.12
   $$P      d$'     ,    $$P     Resolution: 1366x768
   $$:      $$.   -    ,d$$'     DE: LXDE
   $$\;      Y$b._   _,d$P'      WM: OpenBox
   Y$$.    `.`"Y$$$$P"'          WM Theme: Onyx-Citrus
   `$$b      "-.__               GTK Theme: Clearlooks [GTK2]
    `Y$$                         Icon Theme: nuoveXT2
     `Y$$.                       Font: Sans 10
       `$$b.                     CPU: Intel Core i3 CPU 550 @ 3.2GHz
         `Y$$b.                  GPU: Gallium 0.4 on AMD CEDAR (DRM 2.49.0 / 4.9.0-4-amd64, LLVM 3.9.1)
            `"Y$b._              RAM: 869MiB / 3882MiB
                `""""

Descarga GIMP 2.9 para Flatpak

En posts anteriores compilamos GIMP 2.9 para Flatpak. La ventaja de compilar tu aplicaci贸n para Flatpak es que puedes distribuirla y ejecutarla en cualquier distro de Linux que tenga Flatpak instalado. Hay dos forma de distribuir una aplicaci贸n Flatpak, montar un repositorio online o distribuir tu aplicaci贸n en un archivo 煤nico, llamado bundle en Flatpak, que los usuarios pueden descargar y ejecutar. Puesto que no puedo montar un repositorio online, veamos como distribuir y ejecutar GIMP como un bundle.

En primer lugar tengo que generar el bundle de GIMP desde la versi贸n instalada en mi repositorio local de Flatpak, para esto usamos el comando flatpak build-bundle:

monstruosoft@monstruosoft-PC:~$ flatpak build-bundle repo GIMP-2.9.flatpak org.monstruosoft.GIMP

El comando anterior genera el archivo GIMP-2.9.flatpak a partir de la aplicaci贸n org.monstruosoft.GIMP en el repositorio de Flatpak en el directorio repo. Este es nuestro bundle de GIMP para Flatpak y podemos distribuirlo para que otros usuarios lo usen.

DESCARGA EL BUNDLE DE GIMP 2.9 PARA FLATPAK DESDE MEGA.NZ

Una vez descargado el bundle hay dos formas de instalarlo en nuestra PC, agregarlo a un repositorio local con el comando flatpak build-import-bundle o instalarlo directamente desde el archivo .flatpak. Para instalar el bundle de GIMP 2.9 usaremos en esta ocasi贸n la segunda opci贸n ya que es la m谩s sencilla. Nota que debemos agregar el repositorio de flathub para instalar autom谩ticamente el runtime necesario si es que no lo has instalado antes:

Advertencia: Recuerda que, aunque Flatpak ofrece cierta seguridad al ejecutar los programas en una sandbox, s贸lo debes instalar programas que provegan de una fuente confiable y nunca debes ejecutar ning煤n comando como root o sudo a menos que sepas exactamente lo que est谩s haciendo.

monstruosoft@monstruosoft-PC:~$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
monstruosoft@monstruosoft-PC:~$ flatpak --user install --bundle ~/Descargas/GIMP-2.9.flatpak

Finalmente, ya que est谩 instalada la aplicaci贸n de GIMP 2.9, podemos ejecutarla con el siguiente comando:

monstruosoft@monstruosoft-PC:~$ flatpak run org.monstruosoft.GIMP

隆Eso es todo 馃榾 !. Deja un comentario si descargas la aplicaci贸n y/o si tienes problemas al instalarla y ejecutarla.

 

Compilar GIMP 2.9 usando Flatpak 鈥 Parte 1

Si has seguido el blog sabr谩s que hace poco compilamos la versi贸n 2.9 de GIMP para Debian. En esta ocasi贸n repetiremos ese proceso pero esta vez usando Flatpak. Flatpak es un sistema de distribuci贸n de aplicaciones para Linux que ofrece seguridad, al ejecutar programas usando una sandbox, y portabilidad, al permitir ejecutar un programa en cualquier distro de Linux que tenga Flatpak instalado. En cierta forma, Flatpak es similar a los contenedores LXC de los que ya hemos hablado pero ofrece mayor facilidad de uso para el usuario final.

Read More

En corto No. 5 – Add-ons de Firefox

Como un usuario de la versi贸n beta de Firefox, hoy me encontr茅 con la sorpresa de que la versi贸n 57 de Firefox eliminar谩 el soporte para add-ons o complementos que est茅n marcados como Legacy y soportar谩 煤nicamente add-ons basados en WebExtensions. Esto suena bien pero un desagradable efecto secundario es que el add-on NoScript ha dejado de funcionar :O . Me siento vulnerable sin este add-on b谩sico para cualquiera que use Firefox 馃槢 . S贸lo queda esperar que el autor de NoScript trabaje en una versi贸n compatible con WebExtensions para cuando la versi贸n oficial de Firefox 57 sea lanzada. De momento, esta rese帽a expresa perfectamente lo que siento.

Compilar megatools en Debian 8.9

megatools es un paquete de herramientas para interactuar desde la l铆nea de comandos con la p谩gina de descargas mega.nz. megatools est谩 incluido en el repositorio de paquetes para Debian Stretch pero no est谩 disponible para Debian Jessie por lo que si, como yo, sigues usando la versi贸n 8.9 de Debian, tienes que compilarlo manualmente. Por suerte es un paquete f谩cil de compilar y s贸lo tiene unas cuantas dependencias que se pueden instalar desde el gestor de paquetes (la mayor铆a ya deber铆an estar instaladas si has seguido posts anteriores en el blog 馃榾 ):

  • libglib2.0-dev

  • libssl-dev

  • libcurl4-openssl-dev

  • libgirepository1.0-dev

Tambi茅n necesitamos el c贸digo de megatools que se puede descargar desde la p谩gina oficial o desde su repositorio de github. En este caso estoy compilando la versi贸n de github, si bajas la versi贸n de la p谩gina oficial puedes omitir ejecutar autoconf.sh en el primer paso y ejecutar directamente configure.sh:

monstruosoft@monstruosoft-PC:~/megatools-master$ ./autogen.sh 
monstruosoft@monstruosoft-PC:~/megatools-master$ ./configure --disable-docs --prefix=/home/monstruosoft/libs/
...
Configured features:

  docs build: no
  warnings: no

Run make now.

NOTE: On FreeBSD, you need to use GNU make (gmake)
monstruosoft@monstruosoft-PC:~/megatools-master$ make
monstruosoft@monstruosoft-PC:~/megatools-master$ make install

隆Eso es todo!. Ahora podemos usar las herramientas para verificar y descargar todos esos links de mega 馃榾 .