viernes, 10 de junio de 2011

amarok 2 android - full

Existe una aplicación que permite controlar Amarok desde un celular con Android.
La aplicación en cuestión se llama amarok2Adroid, se requiere instalar una aplicación en el celular y unos scripts en amarok.
Este script en cuestión tiene una falencia, no permite agregar música a la playlist desde el celular.

La solución: Modificar el archivo amarokfunc.js de los scripts de Amarok. Remplazar las funciones por estas dos nuevas funciones.


cmdCollectionPlayByTrackId = function(path){
    trackId = parseInt(path.substring(path.lastIndexOf("/")+1));
    trackURL = Amarok.Collection.query('SELECT rpath FROM urls LEFT JOIN tracks ON urls.id = tracks.url WHERE tracks.id = '+trackId+';');
    trackURL2 = Amarok.Collection.query('SELECT lastmountpoint FROM devices LEFT JOIN (urls LEFT JOIN tracks ON urls.id = tracks.url) ON devices.id = urls.deviceid WHERE tracks.id = '+trackId+';');
    Amarok.Playlist.addMedia(new QUrl('file://'+ trackURL2[0] + trackURL[0].substring(1)));
    response = new HandlerResponse();
    Amarok.Playlist.playByIndex(Amarok.Playlist.totalTrackCount()-1)
    return response
}

cmdCollectionEnqueue = function(path) {
    req_len = path.split("/").length;
    req_splitted = path.split("/");
    for(i = 2; i <= req_len; i++) {
trackId = req_splitted[i];
trackURL = Amarok.Collection.query('SELECT rpath FROM urls LEFT JOIN tracks ON urls.id = tracks.url WHERE tracks.id = '+trackId+';');
trackURL2 = Amarok.Collection.query('SELECT lastmountpoint FROM devices LEFT JOIN (urls LEFT JOIN tracks ON urls.id = tracks.url) ON devices.id = urls.deviceid WHERE tracks.id = '+trackId+';');
Amarok.Playlist.addMedia(new QUrl('file://'+ trackURL2[0] + trackURL[0].substring(1)));
    }
   
     
    response = new HandlerResponse();
    return response;
}

jueves, 31 de marzo de 2011

Eclipse Crash con xulrunner-2.0

Problema: Al acceder a la configuración de web Browser en Eclipse, Eclipse se cierra completamente con el siguiente mensaje.

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x898bf5a2, pid=5435, tid=3077785280
#
# JRE version: 6.0_24-b07
# Java VM: Java HotSpot(TM) Client VM (19.1-b02 mixed mode linux-x86 )
# Problematic frame:
# C  [libxul.so+0xc395a2]
#
# An error report file with more information is saved as:
# /home/echevalier/eclipse/hs_err_pid5435.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Abortado

Solución: Añadir la siguiente linea al archivo eclipse.ini
-Dorg.eclipse.swt.browser.XULRunnerPath=/usr/lib/xulrunner-2.0/


jueves, 24 de febrero de 2011

Instalar Arch en un Disco USB

Si tenemos un disco externo donde queremos instalar nuestro querido linux, debemos realizar una modificación en un archivo de configuración en la instalación.
A la hora en que la instalación nos pide modificar los archivos de configuración, en /etc/mkinitcpio.conf agregamos usb en la siguiente linea:
HOOKS="base udev autodetect pata scsi sata usb filesystems"
Luego de esto al instalar grub, modificamos para nuestra partición raiz sea el root de grub , pero siempre ponemos cero en el numero de disco:

root (hd0,X)  donde X es el numero de nuestra partición raiz menos 1.

Luego elegimos que se instale en el dev que corresponda a nuestro disco externo.
Terminamos la instalación y reiniciamos nuestro nuevo sistema.

domingo, 16 de enero de 2011

MySql + Amarok

Para disfrutar de Amarok con base de datos Mysql hay que primero instalar mysql.

# pacman -Sy mysql 
Luego correr este script como root:
# /etc/rc.d/mysqld start && mysql_secure_installation
Seguramente tu instalación actual no tiene password de root, con lo que cuando te pida la contraseña deja en blanco y presiona enter.
# /etc/rc.d/mysqld restart
Agregamos mysql al inicio del sistema modificando en archivo rc.conf:
DAEMONS=(... mysqld ...)
Ahora vamos a crear la base para Amarok:
mysql -p -u root
CREATE DATABASE amarokdb;
GRANT ALL PRIVILEGES ON amarokdb.* TO 'amarokuser' IDENTIFIED BY 'contraseña'; FLUSH PRIVILEGES;
quit;
Ahora hay que introducir en la configuración de Amarok el usuario y contraseña que elegimos.
Listo ya tenemos configurado Amarok con MySql.

Bash Color para Root

Vamos a configurar el bash para que el color del root sea diferente al del usuarios común.
Esto se realiza modificando la variable PS1 de bash.


[root@5542-linux echevalier]# cp /etc/bash.bashrc /root/.bashrc
[root@5542-linux echevalier]# nano /root/.bashrc 

#PS1='[\u@\h \W]\$ '
PS1='\[\e[1;31m\][\u@\h \W]\$\[\e[0m\] '

Ahora el root tiene un prompt de color rojo.

Para un usuario común podemos poner en su carpeta local un archivo .bashrc pero con:

#PS1='[\u@\h \W]\$ '
PS1='\[\e[1;32m\][\u@\h \W]\$\[\e[0m\] '

Con este PS1 el usuario tiene un prompt verde.



sábado, 11 de diciembre de 2010

Bloqueo/Desbloqueo de TouchPad

Problema: 
Al usar el botón de bloqueo/desbloqueo del touchpad, se desactiva pero no se puede volver a activar.

Solución: 
Una solución temporal es remover el modulo psmouse y volver a cargarlo.
Si hacemos esto veremos en dmesg:

# dmesg

[  740.189849] Synaptics Touchpad, model: 1, fw: 7.2, id: 0x1c0b1, caps: 0xd04731/0xa44000/0xa0000
[  740.243881] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio1/input/input11

Como vemos es un dispositivo que usa los parametros permitidos para i8042, con lo que tenemos
las siguientes opciones:

i8042.direct [HW] Put keyboard port into non-translated mode

i8042.dumbkbd   [HW] Pretend that controlled can only read data from
                     keyboard and can not control its state
                     (Don't attempt to blink the leds)
i8042.noaux     [HW] Don't check for auxiliary (== mouse) port
i8042.nokbd     [HW] Don't check/create keyboard port
i8042.nomux     [HW] Don't check presence of an active multiplexing
                             controller
i8042.nopnp     [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX
                             controllers
i8042.panicblink=[HW] Frequency with which keyboard LEDs should blink
                       when kernel panics (default is 0.5 sec)
i8042.reset     [HW] Reset the controller during init and cleanup
i8042.unlock    [HW] Unlock (ignore) the keylock


Agregar  i8042.nomux en /etc/default/grub.
Ejecutamos en una terminal:

# nano /etc/default/grub.

En la linea que GRUB_CMDLINE_LINUX_DEFAULT agregamos i8042.nomux
GRUB_CMDLINE_LINUX_DEFAULT="quiet  i8042.nomux"

# grub-mkconfig -o /boot/grub/grub.cfg
# grub-mkconfig -o /etc/grub.conf
# grub-install /dev/sda

Listo. Reiniciamos para que tome efecto el parámetro del kernel..

lunes, 6 de diciembre de 2010

Pulse Audio - Configuración

Vamos a realizar una instalación y configuración básica de Pulse Audio.
Instalamos pulse:  # pacman -Sy pulseaudio-alsa


Crear el grupo con gid 118, luego agregar  este grupo a nuestro usuario.
Eliminar alsa de rc.conf.

Reinciamos y listo.
Faltan miles de detalles que vamos a ir tocando a medida que surjan problemas.