Category Archives: Kubuntu 7.04 AMD64

Actualizando Kubuntu 7.04 (Feisty Fawn) a 7.10 (Gutsy Gibbon)

2
Filed under Config. S.O., Kubuntu 7.04 AMD64, Kubuntu 7.10 AMD64

No me complico la vida y sigo las instrucciones de kubuntu.org:

  1. Antes de empezar borro como superusuario el archivo /etc/apt/preferences, que bloquea la actualización de libgpod1, cuya última versión –bajada de GetDeb– impedía el funcionamiento de los complementos KIPI en Gwenview. Hago esto porque es necesario tener el sistema completamente actualizado para que funcione el paso 4.
  2. Abro Adept y en Adept > Administrar repositorios: Updates marco la casilla Actualizaciones aún no publicadas.
  3. Actualizo y cierro Adept.
  4. Lo vuelvo a abrir y le doy a Comprobar actualizaciones. Sale un nuevo botón: Actualización de versión. Le doy. Se descarga más de 700 MB y durante el proceso me pide algunas confirmaciones.
  5. Termina y reinicio. Como cada vez que se actualiza el Kernel, tengo que modificar la línea root (hd2,1) por root (hd0,1) para arrancar Kubuntu, y una vez allí edito como superusuario /boot/grub/menu.lst para que no falle en el futuro.
  6. En Kubuntu me sale un mensaje de que puedo usar los drivers propietarios de mi tarjeta gráfica. Los activo y reinicio, pero el VLC no funciona suelto, que es la principal razón que tengo para usar drivers propietarios :( Después de probar algunas cosillas, parece que se soluciona si escribo $ amdcccle (abro el panel de control de los drivers de ATI). El caso es que si escribo $ fglrxinfo aparece como OpenGL vendor “ATI” en lugar de “Mesa”, como aprendí cuando instalé los drivers de ATI manualmente.
  7. Abro Adept y en Adept > Administrar repositorios: Third-Party Software actualizo y activo los repositorios, que se desactivaron durante la actualización a Kubuntu 7.10:
    • http://getswiftfox.com/builds/debian unstable non-free
    • http://ubuntu.org.ua/ getdeb/
    • Y borro las entradas de WineHQ, porque las añadiré escribiendo en la terminal lo que dice su web:
      $ wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
      $ sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/gutsy.list -O /etc/apt/sources.list.d/winehq.list

Un par de consecuencias de la actualización a Kubuntu 7.10: he perdido las teclas de acceso directo que asigné a algunos elementos del Menú K. Tal vez sobreescribí mis teclas de acceso directo por las predeterminadas cuando se actualizó el sistema sin darme cuenta. Además, en el Menú K, el acceso directo a Kate se llama “e=Kate”, y no me deja cambiarlo editándolo desde el menú. Asimismo, en el explorador de archivos Konqueror, el directorio raíz (/) ahora se llama “e=Directorio raiz”.

Pero mirémoslo por el lado positivo: el problema con libgpod1, Gwenview y los complementos KIPI se ha resuelto :)

Dando soporte de joystick/mando a programas que no lo tienen

1
Filed under Config. S.O., Hardware, Juegos, Kubuntu 7.04 AMD64

Joy2key y QJoyPad son dos programas que remapean los botones del joystick/mando (pad de la MegaDrive en mi caso) a teclas del teclado para dar soporte de joystick a programas que no disponen de soporte nativo de estos dispositivos.

Joy2key

Joy2key es un programa que se ejecuta desde la terminal y está incluido en los repositorios de Kubuntu. Instalo desde los repositorios el paquete joy2key y leo su manual en /usr/share/doc/joy2key/README.gz.

Por defecto Joy2key busca el joystick en /dev/js0. Pero yo lo tengo en /dev/input/js0. Puedo escribir -dev /dev/input/js0 como argumento cada vez que ejecute joy2key, o crear un enlace simbólico en /dev/js0 que apunte a /dev/input/js0. Me decido a crear el enlace simbólico. En la terminal escribo: $ sudo ln -s /dev/input/js0 /dev/js0.

Funciona bien, pero al estar basado en la consola es engorroso de manejar.

QJoyPad

QJoyPad es un programa con interfaz gráfica que está en hiatus (vamos, abandonado) y que no está disponible en los repositorios de Kubuntu. En su web está disponible el código fuente y un paquete para Debian i386 (no para amd64). Lo he intentado instalar desde el código fuente, pero me da muchos problemas (la mayoría los he solucionado instalando los paquetes qt3-dev-tools y libqt3-headers (que tiene un porrón de dependencias), pero no he podido solucionar el siguiente error, que parece que está generado por un icono…:

usuario@servidor:~/Desktop/qjoypad-3.4.1/src$ make
g++ -c -pipe -Wall -W -O2 -D_REENTRANT  -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -Itrayicon -I/usr/share/qt3/include -o axis_edit.o axis_edit.cpp
axis_edit.cpp: In constructor ‘AxisEdit::AxisEdit(Axis*)’:
axis_edit.cpp:8: error: ‘ICON24’ no se declaró en este ámbito
make: *** [axis_edit.o] Error 1

También he intentado instalar el paquete Debian i386, pero me da un error porque dice que necesita el paquete libqt3x102-mt. Leyendo por ahí veo que ese paquete ha sido reemplazado por libqt3-mt, que ya tengo instalado. Ejecuto desde la terminal $ sudo dpkg -i qjoypad_3.4-1_i386.deb --force-depends, con lo que se instala, aunque me da un error :(

Así que sigo buscando en Internet…

QJoyPad para 64 bits

¡Aleluya! Olvidemos todo lo anterior. En la segunda página de este hilo de Ubuntu Forums, concretamente en este mensaje, el forero chrism66 ha subido un .deb para 64 bits que ha encontrado por ahí (es una conversión de un .rpm de 64 bits mediante alien). A lo mejor está sacado de uno de estos paquetes, no lo sé. Como es difícil de encontrar y hay que registrarse en el foro para descargarlo, lo he subido aquí.

Se instala sin problemas. Al lanzarlo se sitúa en la barra de tareas, y al pulsar sobre él se abre una ventana en la que se pueden remapear los botones del joystick y guardar estas combinaciones en un perfil propio. Pero tengo un problema, y es que a veces, al asignar las teclas, decide por su cuenta borrar todas estas asignaciones… :( Es una gran putada… Por ejemplo, el Botón 1 (botón A del pad de la MegaDrive) lo quiero asignar a la letra X, ¡y no se deja! Para salir de este atolladero puedo crear manualmente el archivo con las asignaciones botón-tecla que quiero. Los perfiles se guardan en /home/guille/.qjoypad3/. Por ejemplo, mi perfil para Snes9express está en el archivo Snes9express.lyt y su contenido es:

# QJoyPad 3.4 Layout File

Joystick 1 {
	Axis 1: +key 102, -key 100
	Axis 2: +key 104, -key 98
	Button 1: key 53
	Button 2: key 54
	Button 3: key 40
	Button 4: key 39
}

No sé las asignaciones tecla = “key XX”. Voy probando, aunque no son demasiado complicadas:

A = key 38
S = key 39
D = key 40

Z = key 52
X = key 53
C = key 54

Una limitación de QJoyPad es que no permite asignar combinaciones de teclas, sólo teclas simples. Pero es un buen programa y es el que estoy usando para pasarme el The Legend of Zelda: a Link to the Past usando el pad de la MegaDrive y el emulador Snes9express, o para controlar el reproductor VLC (gracias a que permite alternar perfiles fácilmente).

Pad de la MegaDrive en Linux (y ya que estamos, en Windows)

7
Filed under Config. S.O., Hardware, Juegos, Kubuntu 7.04 AMD64

Hay que ver lo importante que es tener una buena documentación. Me ha costado bastante encontrar la forma de hacer funcionar el mando de la MegaDrive (o SEGA Genesis en América) bajo Linux. Al final resulta que sólo necesito dar dos pasos: crear un sencillo adaptador pad-puerto paralelo y cargar un driver. No hay que instalar nada porque el driver ya está incluido en el Kernel de Linux. Es lo que pasa con Linux: que hace un montón de cosas, pero no se explica bien: en Internet he encontrado documentación técnica para programadores y, tras mucho buscar, respuestas en foros de casos parecidos (gente que quiere conectar mandos de la SNES o de la PSX) que me han ido allanando el camino. Si Linux tuviera un manual a nivel de usuario con todas sus posibilidades explicadas para el usuario final, la experiencia del usuario mejoraría un montón.

Hardware: creando el adaptador

Para usar el mando de la MegaDrive en Linux hay que crear un adaptador en el que se conecte el pad de la consola (a través de un conector DB9 macho) y que se enchufe al ordenador a través del puerto de impresora (el puerto paralelo. Se necesita pues un conector DB25 macho) de la siguiente manera (todos los conectores tienen sus pines numerados en un orden estandarizado):

DB9 macho___DB25 macho
1___2
2___3
3___4
4___5
5___1
6___6
7___14
8___18
9___7

Por lo tanto, para construir este adaptador (que llamaremos “interfaz Linux”) no se necesita ningún diodo, resistencia ni hacer ningún puente: es una “redirección de pines” sin más. Incluso es posible hacerla sin tener que soldar nada, si se compra un DB9 macho y un DB25 macho universal que en su parte trasera en lugar de cable tienen un conector para RJ-45 (el de los cables de red normales y corrientes). Así, usando un cable de red normal (no cruzado y con cabezas RJ-45) podemos conectar el DB9 macho con el DB25 macho. Y como estos conectores, en su interior, se conectan “pinchándolos“, por un mecanismo de presión, no es necesario soldar nada. Menudo despiste, con este método sólo se podrían hacer 8 de las 9 conexiones requeridas…

Una limitación de esta interfaz Linux es que únicamente permite conectar un pad al ordenador.

Software: cargando el driver

Para que Linux reconozca el joystick en la sesión actual, escribo en la terminal:

$ sudo modprobe -r lp
$ sudo modprobe db9 dev=0,3

La primera línea deshabilita la impresión en el puerto paralelo, y la segunda carga el driver db9 con los parámetros 0,3, que significan que en el puerto LPT0 (los ordenadores normales no tienen más de uno, por lo que el primero, el 0, es el habitual) se va a conectar la interfaz del mando de la MegaDrive de 3 botones +1 (el botón Start). Para mandos de 5+1 botones (creo que nunca he visto uno de estos…) habría que poner dev=0,5, y para mandos 6+1 lo correcto sería dev=0,6.

Si ahora me voy a Menu K > Configuración del sistema: Teclado y ratón > Joystick se detecta el pad como un dispositivo “Genesis pad (/dev/input/js0)“, y se puede probar para ver que todos los botones funcionan correctamente.

Pero este ajuste habría que hacerlo cada vez que se inicia Kubuntu. Para que Linux reconozca el mando automáticamente en cada inicio, edito como superusuario /etc/modules comentando el módulo lp y añadiendo en una nueva línea “db9 dev=0,3“:

#lp
db9 dev=0,3

Cómo lo hice funcionar en Windows

Aunque este es mi blog sobre Kubuntu, puede que alguien con Windows llegue hasta aquí. Además, así me sirve para contar mi batallita con las interfaces del pad, porque la interfaz Linux es la tercera que hago…

Hace unos años logré que el mando de mi querida MegaDrive funcionara en Windows. Creé una interfaz (la llamaré “interfaz NTPad XP”) siguiendo este esquema. Bueno, en realidad en un primer momento seguí estas instrucciones de Emulatronia y luego tuve que rehacerla como el esquema de la interfaz NTPad XP, porque no funcionaba con mi puerto paralelo (de impresora) moderno. Al principio probé a usar los drivers NTPad XP, pero es un proyecto abandonado hace mucho, así que, al final, en mi Windows XP logré hacer funcionar mi pad gracias a PPJoy, con la interfaz NTPad XP (hay otras posibles, y de ellas la interfaz Linux es la más sencilla de hacer si sólo se va a conectar un pad al ordenador. La documentación de las interfaces soportadas –para todo tipo de mandos– es MUY completa. De hecho, fue allí donde entendí/encontré la interfaz Linux. Se pueden ver desde la web de PPJoy en Supported interfaces).

Enlaces

KCharSelect: Mapa de caracteres en KDE

0
Filed under Kubuntu 7.04 AMD64, Utilidades

Para tener en Kubuntu un programa en el que seleccionar fácilmente caracteres extraños, es decir, el equivalente al Mapa de caracteres de Windows, instalo el paquete kcharselect (también podría instalar kdeutils, que lo contiene).

Ahora está disponible desde Menú KDE > Utilidades > KCharSelect.

Recuperar los complementos KIPI desaparecidos en Gwenview

1
Filed under Config. S.O., Gráficos, Kubuntu 7.04 AMD64

Sigo lo que se dice en este hilo del foro de Ubuntu-es: por lo visto, al añadir los repositorios de GetDeb el paquete libgpod1 se actualiza de la versión 0.4.2-0ubuntu2 a 0.5.2.1~getdeb1, provocando que los complementos KIPI no aparezcan desde Gwenview. Para recuperarlos habrá que hacer un downgrade de este paquete:

  1. Me descargo el paquete desde packages.ubuntu.com.
  2. Lo instalo. Me advertirá de que es una desactualización pero instalará el paquete sin ningún problema.

Lo que pasa es que sale un aviso en la barra de tareas de que “Existe 1 paquete actualizado disponible”, y por defecto intentará actualizarse. He logrado que por defecto no intente actualizarse, aunque la advertencia de que “Existe 1 paquete actualizado disponible” sigue saliéndome. Como superusuario creo /etc/apt/preferences con el siguiente contenido:

Package: libgpod1
Pin: version libgpod1_0.4.2-0ubuntu2
Pin-Priority: 1001

Con esto bloqueo el paquete libgpod1 en su versión libgpod1_0.4.2-0ubuntu2.

Otra solución, bastante más basta, sería deshabilitar los repositorios de GetDeb…

A ver cuándo se implementa esto en Adept…

ZSNES en Kubuntu AMD64

0
Filed under Juegos, Kubuntu 7.04 AMD64

ZSNES es un emulador de SNES que por alguna razón no dispone de paquetes para la arquitectura de 64 bits. Para instalarlo me descargo el paquete .deb de 32 bits desde GetDeb (aunque tengo los paquetes de GetDeb en los repositorios, sólo aparecen los de 64 bits. Otra opción sería descargármelo desde Ubuntu Packages, pero allí está disponible una versión anterior –1.42 vs. 1.51–) y lo instalo desde la consola añadiendo “–force-architecture”:

$ sudo dpkg -i --force-architecture zsnes_1.510-1~getdeb1_i386.deb

Ahora está disponible en Menú K > Juegos > ZSNES

Lo malo de este emulador es que el sonido tiene fallos.

GetDeb en los repositorios

2
Filed under Config. S.O., Internet, Kubuntu 7.04 AMD64

Para tener disponible en los repositorios los paquetes de GetDeb sigo las instrucciones de esta entrada de El Blog de Maverik: abro el gestor de paquetes Adept, voy a Adept > Administrar repositorios: Third-Party Software, pulso en Add… y añado deb http://ubuntu.org.ua/ getdeb/

Ktorrent casca cada cierto tiempo

0
Filed under Internet, Kubuntu 7.04 AMD64

Ktorrent, el gestor de torrents por defecto de Kubuntu, se cierra cada cierto tiempo (puede ser dos segundos después de abrirlo, o pueden pasar varias horas). Si lo abro desde la consola, al cerrarse sale el siguiente mensaje de error:

usuario@servidor:~$ Qt: Warning: QGArray::at: Absolute index 0 out of range
KCrash: Application 'ktorrent' crashing...

Haciendo una búsqueda en Internet llego a un par de hilos de Ubuntu Forums. Allí dicen que la versión de Ktorrent de los repositorios no es la última, que corrige multitud de fallos, así que recomiendan instalarse la última versión desde la web oficial. La versión que tengo instalada (obtenida por ejemplo escribiendo “ktorrent -version” en la consola) es la 2.1, y en la web oficial ofrecen ya la 2.2.2.

Así que

  1. Voy a la web oficial de Ktorrent y me descargo la versión 2.2.2 para amd64 de Debian stable (etch).
  2. Intento instalarla con el instalador de paquetes .deb (clic derecho > Kubuntu package Menu > Install Package), pero me da un error de dependencias porque falta la librería libgeoip1. Así que la busco en los repositorios y la instalo.
  3. Ahora instalo el paquete .deb

Ahora parece que no se joroba…

Convertir .ape en algo reproducible y convertir temas a .ogg

3
Filed under Audio, Kubuntu 7.04 AMD64

[Actualización 7/3/2008: Olvida todo lo demás. Instala soundKonverter (el paquete soundkonverter está en los repositorios) y punto.]

El formato .ape (MAC, Monkey’s Audio Codec) es un formato de compresión de audio sin pérdidas, similar a .flac (FLAC, Free Lossless Audio Codec, de código abierto, y bien soportado en Linux). El principal problema del Monkey’s Audio es que tiene una licencia confusa que impide que esté disponible desde los repositorios de la mayoría de las distribuciones. Oficialmente no hay soporte para Linux, y por parte de los demás, pues muy poquito.

Parece que se pueden reproducir .ape en Linux a través del plugin MAC para Audacious (un fork de XMMS que se encuentra en los repositorios).

Pero lo mejor al encontrarse frente a un disco/tema en .ape es descomprimirlo rápidamente en .wav y recomprimirlo en .flac (sin pérdidas), o lo que hago yo, convertirlo en .ogg (Ogg Vorbis, similar al .mp3 pero de código abierto, y con un poco más de calidad para un bitrate equivalente).

Instalar el compresor de .ape

  1. Desde la página de descargas de la web oficial me bajo la última versión del compresor, MAC_401b2.exe (para Windows), y la instalo con Wine.
  2. Lo abro, añado los archivos .ape, lo configuro en “modo descompresor” (Mode > Decompress) y los descomprimo en archivos .wav. Es curioso, pero no reconocía los archivos de un disco montado en /media/. Así que los copié a una carpeta en el escritorio y listo.

Bueno, no ha sido tan difícil :D

Convertir .wav a .ogg u otro formato

Tengo muchas opciones:

1. Usando un script de Amarok
  1. Instalo el script necesario abriendo Amarok, yendo a Herramientas > Gestor de scripts y seleccionando “Audio Format Converter”.
  2. Creo una lista en Amarok con estos archivos (en caso de tener un .cue, añadiría este archivo para que la información de las pistas se incluyera).
  3. Ejecuto el script.

Como me gusta crear .ogg con una calidad “8”, modifico el script añadiéndole esa opción (la otra opción es seleccionar “OTHER” y escribir “-q 8“). En la línea 80:

    elif outputFormat == ".ogg":
        options = "-q " + os.popen("kdialog --menu "Choose a quality level for the encoded files, or choose OTHER to enter your own options." "0" "Lowest Quality (0)" "3" "Good Quality (3)" "6" "Great Quality (6)" "8" "Mi preferida (8)" "10" "Insane Quality (10)" "OTHER" "OTHER"").readline()[:-1]

El problema es que nombra los archivos creados usando los datos de la librería de Amarok, y en caso de tener un .wav sin etiquetas, sobreescribiría el mismo archivo según los va creando. Como no me gusta ir toqueteando el script (porque antes debería aprender qué debo de toquetear), dejo esta opción para otros casos (como por ejemplo, cuando quiera convertir la música a un .ogg de menos calidad para llevarla en el móvil).

2. Usando un script autónomo

Me refiero a un script que no forme parte de otro programa. He encontrado este estupendo script en el blog de Bakará.

3. Usando la temida consola

La verdad es que es tan estúpidamente simple que me he replanteado mi odio irracional hacia ella ;)

Por ejemplo, voy a la carpeta donde están los .wav y escribo:

$ oggenc -q 8 *.wav

Con esto codifico todos los archivos acabados en .wav con una calidad “8” (unos 256 kbps). Se crean archivos con el mismo nombre que los .wav pero con extensión .ogg. Por supuesto, esa sencilla línea se puede complicar todo lo que se quiera añadiendo argumentos (escribiendo “oggenc –help” sale una muestra). De hecho, las opciones anteriores a esta de usar la consola lo que hacen es enmascarar esta línea mediante una interfaz más amigable, nada más.

4. Usando dBpoweramp a través de Wine

dBpoweramp era mi solución cuando estaba en Windows. No lo he probado en Linux, pero dicen que a través de Wine funciona.

Conclusión

La consola mola (joer, nunca pensé que diría esto xD) y el script de Bakará también es una buena opción, la mejor si no quieres tener que acordarte del comando “oggenc“.

El script para Amarok tiene sus limitaciones, aunque como está integrado en Amarok está al alcance de la mano. Pero sinceramente, no creo que lo use nunca. Y, en la reserva, siempre está la opción de emular los programas de Windows. Pero sólo como último recurso.

Controlador MIDI en Linux

1
Filed under Audio, Hardware, Kubuntu 7.04 AMD64

Para lograr que funcione un controlador MIDI (teclado) en Kubuntu, hay que instalar dos paquetes:

  • QjackCtl
    Es una GUI (interfaz gráfica) de JACK Audio Connection Kit, un servidor de sonido (audio server queda más bonito) que sirve para interconectar –vía software– las salidas y entradas de todos dispositivos de audio del equipo.
  • Qsynth
    Es una GUI de FluidSynth, un sintetizador libre. Transforma las señales MIDI en sonido, creándolo a partir de un banco de sonidos. En esta entrada del blog del Proyecto OpenPipe lo explican todo muy clarito.

Una vez instalados estos paquetes (con sus respectivas dependencias) vía Adept, he seguido las instrucciones de instalación de QSynth, abriendo la consola y escribiendo:

$ qsynth -a alsa

Se supone que esto inicia jackd (el demonio –proceso– de JACK) para ALSA al arrancar el programa, y que esta orden se mantiene en futuros inicios, por lo que no es necesario repetirla. No estoy seguro de que este ajuste sea necesario, porque para algo he instalado QjackCtl (estará abierto siempre que vaya a usar Qsynth). Pero bueno, lo dejo escrito por si acaso…

Los dos programas se encuentran en Menú K > Multimedia > JACK Control y QSynth.

Abro ambos, y en JACK Control pulso en Connect, en la pestaña ALSA, y conecto K61 a FLUID Synth (Si Qsynth no estuviera abierto no saldría FLUID Synth). Con esto envío las señales MIDI del controlador al sintetizador. Si ahora pulso el botón Patchbay de JACK Conect, puedo guardar este ajuste en un archivo xml externo, para poder importarlo fácilmente. Ah, y no me olvido de iniciar el JACK Audio Connection Kit pulsando en Start.

En Qsynth, si pulso una tecla cualquiera del controlador, debería encenderse un LED virtual (el de la izquierda de la pestaña Qsynth1). Pero no se oirá nada, ya que para ello necesito algún banco de sonido (soundfonts). En este artículo de la Wikipedia enlazan a algunas webs de bancos de sonido, y he leído comentarios que dicen que en cualquier red P2P hay miles de ellos, ocupando gigas y gigas… Por ahora he visitado SoundFonts.it y HomeMusician.net, que tienen muchos archivos en descarga directa.

Qsynth admite bancos de sonido en formato .sf2, un estándar de facto creado por Emu Systems para Creative Labs. El caso es que los bancos de sonido no suelen encontrarse en .sf2, si no que suelen venir comprimidos en un formato específico y propietario, .sfArk o .SFPack.

  • Para descomprimir .sfArk: ir a la página de MelodyMachine y descargarse e instalar la versión para Windows, a través de Wine (la versión para Linux no es de 64bits, por lo que no se puede ejecutar en mi Kubuntu AMD64).
  • Para descomprimir SFPack hay que descargarse el extractor de esta página (funciona a través de Wine).

Una vez que tengo algún .sf2 puedo, en Qsynth, pulsar el botón Setup…, y añadir los bancos de sonido en la pestaña Soundfonts. Importante: no acepta rutas con acentos.

Una vez hecho esto, las pulsaciones del controlador producirán sonido. Pero en mi caso los sonidos tenían artefactos. Lo he solucionado modificando el valor de Setup… > Audio: Buffer Count, elevándolo hasta 32 (por defecto era 4).

El único problema que tengo es que en el panel de mensajes de Qsynth sale lo siguiente al pulsar una tecla del controlador MIDI:

fluidsynth: warning: ALSA sequencer buffer overrun, lost events

Ya veré cómo lo soluciono, porque la verdad es que hay una cantidad inmensa de opciones que no tengo la menor idea de lo que quieren decir…