sábado, 27 de junio de 2009

Instalador apt bloqueado

Sucede a veces que se queda a medio la instalación de un paquete. Por que se va la luz, se cae el servidor gráfico, etc.... Resulta que al no cerrar el gestor de paquetes (apt-get, synaptic o cual sea) apropiadamente, no se desbloquea la base de datos de apt (Advanced Packaged Tool).

Para desbloquear la base de datos, reparando los paquetes que hayan quedado a medio instalar utiliza este comando en una terminal:
sudo dpkg --configure -a
Tan simple!

lunes, 15 de junio de 2009

Compiz screensaver

Te imaginas tener como salva-pantallas tu propio escritorio dando vueltas con las ventanas que tengas abiertas o incluso solo las ventanas dando vueltas y saltos encima del escritorio:





Gracias a un plugin de Compiz podemos hacerlo, la pega es que no viene por defecto ni en intrepid ni en jaunty, pero no pasa na!

Abre esta dirección en el navegador y se te descargara el código fuente del plugin:
http://gitweb.compiz-fusion.org/?p=users/pafy/screensaver;a=snapshot;h=e5add1cb3346070f89f13e885b0220bb0ee07b29;sf=tgz
...Mmmm, código fuente? Creo que es la primera vez que compilamos en el blog... Vereis que facilito es algo que da tanto miedo. Sobre todo antes de asustaros pensad una cosa: compilar no es programar. Compilar es "convertir código fuente en ejecutables"; es mas correcto decir que compilar se parece a ripear (convertir cdaudio en mp3 o DVD en xvid)...

En fin vamos al asunto, descomprime el paquete descargado y abre un terminal en la carpeta recien descomprimida. Lo primero sera instalar dependencias y programas necesarios para compilar:
sudo aptitude install x11proto-scrnsaver-dev libxss-dev compiz-fusion-bcop compiz-dev libltdl7-dev libtool g++
Después compilamos, hay que ejecutar el comando dentro de la carpeta donde esta el código a compilar:

make
Y ahora hay que mover los archivo ejecutables recién creados a su respectivos lugares con un simple:

make install
Ya esta! Abre el panel de compiz y en la sección Extras tendrás el nuevo plugin. Si es que no tienes el panel de compiz (ni el icono) los puedes instalar escribiendo:
sudo aptitude install compizconfig-settings-manager fusion-icon
El icono de compiz esta en Aplicaciones -> Herramientas del Sistema -> Compiz Fusion Icon y el panel de configuración de compiz lo puedes encontrar en Sistema -> Preferencias -> Administrador de Opciones de CompizConfig o a través del propio Icono de compiz cuando lo ejecutes.

Si no vas a necesitar compilar más pulgins de compiz puedes desinstalar los paquetes de compilación:
sudo aptitude purge x11proto-scrnsaver-dev libxss-dev compiz-fusion-bcop compiz-dev libltdl7-dev libtool g++
¿Quien dijo que compilar era complicado?

miércoles, 10 de junio de 2009

Moovida + Lirc Ubuntu Media Center

Hace unos meses instalábamos en Intrepid Elisa Media Center y lo configuramos para manejarse por control remoto. Ahora Elisa pasa a ser Moovida y como no podía ser menos vamos a instalarlo y configurarlo esta vez desde Jaunty, la version 9.04 de Ubuntu.

Vuelvo a recordad que en mi caso usare el contro RM-900 de Creative por que es el que tengo más a mano, pero se podrían usar infinidad de controles, mas adelante se incluye un enlace a los mandos compatibles con Lirc.

Empecemos la instalación y configuración:

Configurar el soporte IR en el Núcleo

En mi caso concreto dado que el dispositivo esta incluido en el rack de mi Sound Blaster Audigy lo primero es hacer que en los módulos del kernel se cargue el control del dispositivo IR (Infra-Red).
Para ello tuve que añadir un parámetro para que cargase el driver de sonido con el IR activado (snd-emu10k1 en mi caso) . Para eso tuve que editar el fichero /etc/modprobe.d/options:
sudo nano /etc/modprobe.d/options
Y añadir la opción para el modulo de sonido al final del fichero:
options snd-emu10k1 enable_ir=1
es decir --> options (nombre del modulo) (parámetro)=(opción del parámetro)
Para volver a cargar el módulo de sonido tan solo reinicié mi computadora.

NOTA
: Los mandos de tipo MediaCenterEdition (MCE) que venden en las tiendas actualmente no necesitan ninguna activación como esta, solo conectar y listo!

Instalar y configurar Lirc

Instalad Lirc desde los repositorios oficiales:
sudo aptitude install lirc
Durante la instalación nos hará dos preguntas; a la primera respondemos el nombre del control remoto, por ejemplo un mando Media Center, de ATI o bien el de alguna sintonizadora como Pinnacle, Avermedia, Hauppauge... (En el caso del RM-900, me funcionó eligiendo Creative LiveDrive sequencer).
A la segunda pregunta lo normal es elegir none (ninguno). Esto se puede modificar mas tarde manualmente, pero si no os queréis complicar podéis hacer que os vuelva a hacer las dos preguntas con este comando:
sudo dpkg-reconfigure lirc
NOTA: El comando dpkg-reconfigure sirve para reconfigurar cualquier paquete/programa.

Tras finalizar se crearan nuevos dispositivos (/dev/lircd) y ficheros de configuración (/etc/lirc/lircd.conf y /etc/lirc/hardware.conf).... Para el caso concreto de mi mando seguía sin funcionar, así que fui a la web de Lirc (www.lirc.org) y busqué el enlace a config files for supported remote controls o "ficheros de configuración para controles remotos soportados" (http://lirc.sourceforge.net/remotes/), allí localice el fichero acorde a mi control en creative/RM-900 y lo descargué (si os fijáis esta perfectamente ordenado por nombre de fabricante). Después solo tuve que substituir el contenido de /etc/lirc/lircd.conf por el de RM-900:
wget http://lirc.sourceforge.net/remotes/creative/RM-900
sudo cp /etc/lirc/lircd.conf /etc/lirc/lircd.conf.old
sudo mv RM-900 /etc/lirc/lircd.conf
sudo /etc/init.d/lirc restart <--- Reinicia Lirc y carga el nuevo lircd.conf
Repito que estos 4 comandos son "especiales" para mi control remoto, puede que no tengais que hacerlos o que tengáis que usar otro fichero de configuración....

En fin... como sabemos que el mando funciona? para eso esta el comando irw (viene con Lirc). Simplemente ejecutadlo en consola y apuntando al receptor pulsad algún botón, si irw recibe alguna pulsación lo notificara.


Si veis algo parecido ya tenemos el Lirc correctamente configurado con el control remoto, genial! Finalizad la aplicación con la combinación <Ctrl + C>.

Esto (el irw) nos permitirá configurar el mando para usarse con muchos programas dado que nos informa del nombre de cada tecla para así poder usarlo y asignarle opciones a las teclas para varios programas... veremos al menos un par de ejemplos aplicados a Moovida ;)

Instalar Moovida y configurar su uso con Lirc

La versión que hay en los repositorios de ubuntu es del antiguo poyecto de Elisa , así que para instalar el nuevo Moovida añadí a mis repositorios los PPA de launchpad del proyecto. Muy bien, vamos por pasos:

Editamos el fichero de los repositorios:
sudo gedit /etc/apt/sources.list
y añadimos estas lineas al final del fichero:
deb http://ppa.launchpad.net/moovida-packagers/ppa/ubuntu jaunty main
De usar una versión distinta de Jaunty cambiad donde pone jaunty por intrepid o la versión de Ubuntu que estés usando. Este repositorio requiere una clave, que añadiremos de este modo:
gpg --keyserver keyserver.ubuntu.com --recv 26C2E075 && \
gpg --export --armor 26C2E075 | sudo apt-key add - && \
sudo aptitude update
Ahora, instalamos la ultima versión de Moovida Media Center con un simple:
sudo aptitude install moovida
Lo podéis ejecutar desde el menú de Aplicaciones -> Sonido y Vídeo -> Moovida Media Center o desde la terminal escribiendo:
moovida
Vamos a configurar el control a través del Lirc, primero nos movemos a la ruta del plugin para Lirc de Moovida:
cd /usr/share/pyshared/elisa/plugins/lirc/
Y ejecutamos el script para cree el fichero con el mapeado de teclas del mando:
python setup_lirc.py map_files/remotename.map
Al ejecutarlo te pedirá que vayas pulsando una serie de teclas del mando, la tecla que quieres usar para mover a derecha, a la izquierda, el play, etc... Cuando no te queden mas teclas que pulsar en el control, solo pulsa de nuevo la tecla OK del mando y la aplicación finalizara creando el fichero remotename.map en la carpeta map_files.

Y ahora solo falta configurar el fichero de configuración de Elisa:
sudo gedit ~/moovida/moovida.conf
Buscamos la sección: [lirc.lirc_input:LircInput] y deberemos dejarla más o menos así:
[lirc.lirc_input:LircInput]
device = '/dev/lircd'
input_map = '/usr/share/pyshared/elisa/plugins/lirc/map_files/remotename.map'
repeat_delay = '0.6'
Ya esta!! Esto es todo... Inicia el Moovida Media Center (cierralo antes si lo tenias abierto) y disfruta manejándote con el mando, escucha tu musica, ve tus vídeos e imágenes, mira vídeos de youtube y otros, las imágenes de Flikr, incluso las emisoras de radio de shoutcast y yes.fm... y todo desde el sofá con el mando ;)

Configuración avanzada de Moovida y Lirc

Si configurasteis una tecla del mando para la opción "Exit" al pulsar dicha tecla puedes salir del programa (Moovida). Solo faltaría que se abriese el programa pulsando una tecla del mando a distancia, así que vamos a hacerlo también para que no quede nada en el tintero. Crearemos primero el fichero ~/.lircrc:
gedit ~/.lircrc
Añadiremos algo como esto:
include ~/.lirc/moovida
Cierra gedit y ahora crearemos la carpeta oculta .lirc/ y dentro el fichero moovida. Esto nos va a permitir más adelante crear otros ficheros para controlar otros programas, pero centrémonos en lo que nos ocupa:

mkdir ~/.lirc
gedit ~/.lirc/moovida
En el fichero añadid el siguiente texto:
begin
prog = irexec
button = eax
config = exec moovida
end
Habreis de substituir eax por el nombre de la tecla que queréis que inicie el programa. Y como saber el nombre de cada tecla del mando? Pues como dije antes con el programa irw. Ejecutáis irw en consola y pulsáis la tecla del mando que queréis usar para arrancar el Media Center. Debería salir una linea del tipo:
0000000083228c73 00 eax Creative_RM900
El tercer campo es el nombre de la tecla y el cuarto el nombre del control remoto. El primero también hace referencia al nombre de la tecla pero en formato numérico y el segundo ni idea jeje. Resumiendo, cambiad lo que os salga a vosotros como nombre de la tecla por donde yo puse eax en el fichero moovida, y guardad los cambios.

Para que esto funcione el programa irexec debe estar funcionando, asi que ejecutalo en una consola:
irexec --> Se ejecuta ocupando la terminal.
o bien:
irexec -d --> Se ejecuta en segundo plano, dejando libre la terminal

Cerrad el Media Center (si lo teníais abierto) y reiniciad el servicio de Lirc:
sudo /etc/init.d/lirc restart
Ahora apuntad bien al receptor de infrarrojos, pulsad la tecla mágica y esperar que se inicie moovida.

Consejos:
Añade el programa irexec en Sistema -> Preferencias -> Aplicaciones al inicio para que se inicie cada vez que inicies sesión en Gnome. Si lo añades de esta forma no es necesario añadir el parámetro -d.

También puedes cambiar la forma en que se inicia Moovida (fullscreen o windowed) cambiando el valor del parámetro start_fullscreen del fichero ~/.moovida/moovida.conf

Puedes alternar entre modo ventana y pantalla completa pulsando la tecla f. Para poder cambiar de fullscreen a windowed desde el control, solo edita el fichero remote.map:
sudo nano /usr/share/pyshared/elisa/plugins/lirc/map_files/remotename.map
La idea es añadir al final una linea igual que las demás, pero el código numérico lo cambiamos por el que nos devuelva irw en el primer campo, al pulsar la tecla que queremos que haga la función. Y también habría que cambiar donde dice KEY_algo por KEY_f. Para que este cambio tenga efecto solo hemos de reiniciar Moovida.

Un Saludo!

sábado, 6 de junio de 2009

Reiniciar el entorno de escritorio en Jaunty

En la nueva versión de Ubuntu, la 9.04 Jaunty Jackalope, trae desactivada la combinación de teclas para reiniciar el escritorio (Ctrl + Alt + Retroceso). Realmente es la nueva versión de Xorg (el servidor gráfico) la que incorpora de serie el bloqueo de la combinación de teclas. Hace un par de días que la instalé, así que lo primero fue ver como activar dicha función.
Afortunadamente ya había leído algo en el blog de novatillasku, así que hice un par de búsquedas más para terminar de recopilar información sobre el asunto. A continuación mostraré dos formas de hacerlo, la fácil y otra no tan fácil pero más experta diría yo.

Modo experto

Tan solo hay que editar el fichero de configuración xorg.conf. Guarda una copia del fichero y ábrelo con un editor de texto:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
sudo nano /etc/X11/xorg.conf
Hay busca la sección "ServerFlags" y la opción DontZap la cambias a "False". Si no existe, añade al final del fichero:
SectionServerFlags
OptionDontZap” “False
EndSection

Reinicia el entorno gráfico (cerrando la sesión) y ya estará operativa la combinación de teclas.

Modo sencillo

Instala el paquete Dontzap ya sea usando synaptic o a través de una terminal:
sudo aptitude install dontzap
Después ejecuta en terminal el programa así:
sudo dontzap --disable
En definitiva lo que hace este programa es añadir, de forma automática, la modificación necesaria.

Fuente: NovatillaSku

martes, 2 de junio de 2009

Captura enlaces ed2k (elinks) con Firefox en Ubuntu

Personalmente no uso demasiado la 'mula' por varios motivos (publicidad agresiva en paginas de elinks, lentitud en descargas, alto porcentaje de FAKEs, etc...), pero conozco mucha gente que sigue usando la red por excelencia del P2P, estoy hablando por supuesto del emule y sus distintos 'ports' como amule.

Sin embargo, los nuevos usuarios de GNU/Linux me han preguntado a veces: "¿Como puedo sincronizar las paginas de descargas con el amule?". Así que vamos a hacerlo en un periquete (apenas son 3 pasos...).

Primero hay que cerrar el amule, si lo tienes funcionando. Después instala el paquete amule-utils (este contiene el programa ed2k que es el encargado de manejar los elinks). Puedes hacerlo desde Synaptic (Sistema -> Administración -> Gestor de Paquetes Synaptic) o desde una terminal con el siguiente comando:

sudo aptitude install amule-utils

Listo. Ahora toca configurar el Firefox. En la barra de direcciones escribe esto:

about:config
Tras una advertencia del daño que puedes causar a Firefox, accederás a un listado de variables (con sus valores) con las preferencias avanzadas del navegador:


Usa el filtro superior con el texto ed2k para filtrar los resultados:


Lo normal es que no aparezca ninguna variable al aplicar el filtro. Solo aparecerán las dos que vamos a crear a continuación. Para crearlas pulsa el botón derecho del ratón en el área y aparecerá un menú emergente para modificar las variables o para crearlas. Al crearlas hay que indicar si serán Lógicas, Cadenas o Enteros:




Dicho esto, creamos una nueva variable de tipo Lógico y le pones el nombre:

network.protocol-handler.external.ed2k
El valor debe ser TRUE, después crea otra variable de tipo Cadena con el nombre:

network.protocol-handler.app.ed2k
El valor de esta variable debe ser la ruta donde esta instalado el programa edk2 el que instalamos antes con el paquete amule-utils. En ubuntu se instala en la ruta /usr/bin/ed2k pero si no estas seguro puedes localizar la ruta exacta del programa con este comando en una terminal:
which ed2k
En definitiva te debe quedar igual que en mi imagen:


Ojo de ponerlo todo igual ya que un fallo puede hacer que firefox deje de funcionar.

NOTA: Si no estas seguro de lo que haces quizás prefieras hacer un backup de los marcadores que tengas. Puedes hacerlo en Marcadores -> Organizar marcadores del menú de Firefox. Se abrirá el Catálogo de Marcadores en el que la opción Importar y respaldar te permitirá exportar o importar los marcadores en un archivo html.

Una vez con todo esto listo reinicia el Firefox y prueba a usar los elinks de cualquier web.

P.D. Si has conseguido cargarte el Firefox, realmente lo que has estropeado solo es tu configuración de usuario, es decir borra tu conflagración y tu Firefox quedara como nuevo. Para ello mete estos comandos en una terminal:
killall firefox
rm -rf ~/.mozilla
Después restaura tus marcadores si hiciste un backup de estos y ya puedes volver a empezar de nuevo jeje.