Mostrando entradas con la etiqueta solución. Mostrar todas las entradas
Mostrando entradas con la etiqueta solución. Mostrar todas las entradas

sábado, 23 de mayo de 2015

Problemas para conectar un iPod con Amarok o GTKPod

Al conectar el iPod, Amarok marca el error:

Conexión a iPhone, iPad o iPod fallida. ("Connecting to iPhone, iPad or iPod touch failed."
--
determined mount-point path to /tmp/kde-USUARIO/amarok/imobiledevice_uuid_XXXXUUIDXXXX
created /tmp/kde-USUARIO/amarok/imobiledevice_uuid_XXXXUUIDXXXX directory
calling `ifuse "-u" "XXXXUUIDXXXX" "-ofsname=afc://XXXXUUIDXXXX" "/tmp/kde-USUARIO/amarok/imobiledevice_uuid_XXXXUUIDXXXX"` with timeout of 10s
ifuse: usbmuxd_get_device_list: error opening socket!
ifuse: No device found, is it connected?
ifuse: If it is make sure that your user has permissions to access the raw usb device.
ifuse: If you're still having issues try unplugging the device and reconnecting it.
ifuse:
command exited with non-zero return code 1
Failed to mount iPhone on /tmp/kde-USUARIO/amarok/imobiledevice_uuid_XXXXUUIDXXXX

amarok --debug no aporta ningún error útil, pero si se conectó el iPod antes de iniciar Amarok, el mismo sufre una violación de segmento.  El backtrace nos dice que el problema es con libgpod:

#6  0x0000003c8803348d in type_check_is_value_type_U (type=133143986208) at gtype.c:4107
#7  g_type_check_value_holds (value=value@entry=0x1fcf5e0, type=type@entry=34428496) at gtype.c:4156
#8  0x00007f38f2296d0a in playcounts_plist_read (fimp=, fimp=, plist_data=0x2134570) at itdb_itunesdb.c:1178
#9  playcounts_init (fimp=0x1fc1600) at itdb_itunesdb.c:1319
#10 itdb_parse_internal (itdb=itdb@entry=0x1fe3950, compressed=compressed@entry=1, error=error@entry=0x7fffe3defac0) at itdb_itunesdb.c:3309

gtkpod también muere con SEGFAULT al tratar de leer el iPod.  Al parecer, el problema sucede cuando libgpod intenta leer las estadísticas de reproducción en 'iTunes_Control/iTunes/PlayCounts.plist', y está arreglado en upstream desde el 2013, pero por alguna razón no lo está así en los repositorios.  En teoría, compilar libgpod a mano debería solucionarlo.  O, si no te importan las estadísticas de reproducción en tu iPod, puedes borrar o renombrar el fichero de las mismas como workaround –después de montar tu iPod:

ifuse /mnt/pda
mv /mnt/pda/iTunes_Control/iTunes/PlayCounts.plist /mnt/pda/iTunes_Control/iTunes/PlayCounts.plist.bak


Y asunto arreglado.

martes, 3 de febrero de 2015

DeVeDe se cierra al seleccionar directorio de destino

DeVeDe nos permite transformar muchos tipos de video en DVD, pero tiene problemas con algunos temas GTK2.  Cambiar el tema lo resuelve, ya sea en las Preferencias de Sistema > Apariencia de las Aplicaciones > GTK en KDE, o ejecutando en la línea de comandos (para solo cambiar el tema para DeVeDe):


env GTK2_RC_FILES=/usr/share/themes/Clearlooks/gtk-2.0/gtkrc devede


El error:

/usr/lib/devede/devede_convert.py:349: GtkWarning: gtk_tree_model_filter_get_value: assertion 'GTK_TREE_MODEL_FILTER (model)->priv->stamp == iter->stamp' failed
  value=wfolder_dialog.run()
/usr/lib/devede/devede_convert.py:349: Warning: /build/buildd/glib2.0-2.42.1/./gobject/gtype.c:4221: type id '0' is invalid
  value=wfolder_dialog.run()
/usr/lib/devede/devede_convert.py:349: Warning: can't peek value table for type '<invalid>' which is not currently referenced
  value=wfolder_dialog.run()
Violación de segmento (`core' generado)

sábado, 31 de enero de 2015

Audacity sufre de buffer underruns al grabar, después distorsiona el audio y se traba

 El error se repite hasta el infinito (y más allá):

ALSA lib pcm.c:7843:(snd_pcm_recover) underrun occurred

Algún problema hay entre ALSA y Pulseaudio (bug en Launchpad).  Solución temporal:

alias audacity='env PULSE_LATENCY_MSEC=30 /usr/bin/audacity'
audacity


Para hacerla permanente:
sudo sed -i 's/^Exec=.*/Exec=env PULSE_LATENCY_MSEC=30 audacity %U/' /usr/share/applications/audacity.desktop
echo "alias audacity='env PULSE_LATENCY_MSEC=30 /usr/bin/audacity'" >> ~/.bashrc

jueves, 15 de enero de 2015

Habilitando la captura de paquetes de Wireshark en Debian/*Ubuntu

Wireshark recomienda usar tcpdump para capturar, para no tener que otorgar privilegios extra (sin los cuales, nos marca el error "The capture session could not be initiated on interface 'wlan0' (You don't have permission to capture on that device)."

Si queremos usarlo para captura de todos modos, podemos habilitarlo en la configuración del paquete, añadir nuestro usuario al grupo de wireshark, y por último, iniciar wireshark usando su, si no queremos reiniciar sesión para que se reconozca el nuevo grupo:

sudo dpkg-reconfigure wireshark-common 
sudo usermod -a -G wireshark $USER
su -c wireshark - $USER

lunes, 12 de enero de 2015

La red de Kubuntu se duerme en telarañas

Empezaron al actualizar a 14.10, pero los problemas habían sido reportados desde antes:

Primero, la hibernación fue removida del menú en sistemas no certificados, porque parece tener problemas en un número significativo de laptops nuevas.  Mientras se añade una opción al panel de configuración, podemos hibernar ejecutando sudo pm-hibernate en una terminal, o agregando de nuevo la opción al menú con:
cat << 'FinDeTexto' | sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes
FinDeTexto
y reiniciando sesión después.

Si la hibernación falla, hay que revisar que tengamos una partición de intercambio ("swap") de al menos el mismo tamaño que nuestra memoria RAM, por ejemplo ejecutando free -h, y verificando que el total de "Mem" sea mayor que el de "Inercambio".
 

Además, la red inalámbrica dejó de conectarse automáticamente al iniciar o despertar el sistema.  Una solución temporal es editar la conexión y activar Todos los usuarios pueden conectarse a esta red en la pestaña de Configuración general.

Peor aun, la red se desactivaba por completo al despertar de una hibernación.  Hay varias causas para esto; en mi caso, despertar NetworkManager a mano funcionó:  sudo nmcli nm sleep false.  Para otros, es necesario reiniciar el servicio:  sudo restart network-manager.  Para hacerlo automáticamente:

cat << 'FinDeTexto' | sudo tee /etc/pm/sleep.d/01_networkmanager_wake_up
#!/bin/sh
case "$1" in
        resume|thaw)
                nmcli nm sleep false
                ;;
        suspend|hibernate)
                # Do nothing
                ;;
esac
FinDeTexto

jueves, 21 de agosto de 2014

El audio no funciona después de usar jackd

Jack sigue corriendo aunque le des Stop en qjackctl si tienes la interface D-Bus activada.  Puedes desactivarla en Setup > misc de qjackctl (y matar a jackd con killall -9 jackd para que PulseAudio vuelva a funcionar esta vez).

viernes, 15 de agosto de 2014

"Skype no se ha podido conectar" en Ubuntu

El problema persiste aún al actualizar a la última versión.  Solución:

sudo apt-get purge skype
sudo apt-get autoremove


Y después descargar e instalar la última versión.  Borrar el directorio de configuración no es necesario.

Entonces podrás ver la nueva pantalla de Iniciar sesión, que sí funciona:

jueves, 3 de julio de 2014

Error al inicializar OpenGL/D3D en Ubuntu usando Crossover


El wiki de Wine nos dice como correr wine con registro de depuración del controlador 3D

WINEDEBUG=+wgl wine your_3d_app.exe 

Pero Crossover tiene una variable de depuración diferente:

CX_DEBUGMSG=+wgl /opt/cxoffice/bin/wine --bottle "WinXP" Chessmaster.exe

Lo que me mostró el problema:

err:wgl:has_opengl Failed to load libGL: /usr/lib/i386-linux-gnu/libxcb-dri3.so.0: undefined symbol: xcb_send_fd
err:wgl:has_opengl OpenGL support is disabled.

La causa es que las librerías de Ubuntu 14.04 no juegan bien con el libxcb que viene con Crossover.  La solución es actualizar a Crossover 13.1.3, o borrar su libxcb para que use la de Ubuntu:

sudo rm /opt/cxoffice/lib/libxcb.so.1*

viernes, 6 de junio de 2014

Deshabilitar las notificaciones de contacto en línea de Pidgin

No se hace en preferencias, sino en Herramientas > Complementos > Menús emergentes Libnotify, Configurar complemento, y deseleccionar Amigo inicia sesión.  Fiiiuuuuuu.

jueves, 5 de junio de 2014

Añadir una resolución a nuestra pantalla en Linux

A veces Kubuntu no muestra las resoluciones correctas (sospecho que los GPUs Intel tienen algo que ver). Si quisiéramos agregar  1280x800 al monitor LVDS1 (xrandr --current para ver el nombre de tu monitor), generamos tiempos de sincronización con cvt:
$ cvt 1280 800
# 1280x800 59.81 Hz (CVT 1.02MA) hsync: 49.70 kHz; pclk: 83.50 MHz
Modeline "1280x800_60.00"   83.50  1280 1352 1480 1680  800 803 809 831 -hsync +vsync


Agregamos la Modeline resultante a xrandr:
$ xrandr --newmode "1280x800"   83.50  1280 1352 1480 1680  800 803 809 831 -hsync +vsync


La añadimos a nuestra pantalla, y la activamos:
$ xrandr --addmode LVDS1 1280x800
$ xrandr --output LVDS! --mode 1280x800


domingo, 18 de agosto de 2013

Atajos de teclado y otras funciones dependientes de DBUS dejan de funcionar

Al actualizar KDE a la última versión (de Kubuntu-Backports) DBUS dejó de funcionar:

qdbus org.kde.amarok /Player
qdbus: could not find a Qt installation of ''


Al parecer hay un batidillo de dependencias ahora que están portando todo a QT5, y hace falta instalar qtchooser, o algún otro paquete de desarrollo.  La cosa es que todos los necesarios se instalan con qt-default:

apt-get install qt4-default

Ojo que tiene que ser la misma versión de dbus.  Si instalamos QT5 con DBUS 4, nos sale:

qdbus: could not exec '/usr/lib/x86_64-linux-gnu/qt5/bin/qdbus': No such file or directory

viernes, 9 de agosto de 2013

Kubuntu muestra la hora en UTC sin importar la zona horaria seleccionada

El problema (reporte aquí) reside en zic, usado por el módulo de Fecha y Hora de KDE (y otros programas), que copia la zona horaria a /etc/localtime sin checar si la original es una liga simbólica y por lo tanto, sin dereferenciarla apropiadamente, por lo que termina creando una liga rota:

ls -l /etc/localtime
lrwxrwxrwx 2 root root 25 mar 14 10:46 /etc/localtime -> ../posix/Europe/Guča


Para arreglarlo temporalmente:

sudo dpkg-reconfigure tzdata

O un paliativo más duradero (y extremo):

sudo mv /usr/sbin/zic /usr/sbin/zic-bad

Pues KDE puede funcionar sin zic (otros programas, quien sabe ;).


martes, 4 de junio de 2013

Insertar, no abrir, una URL al arrastrarla del navegador a Emacs

Basta con hacer:

M-x customize-variable
dnd-protocol-alist


y remover de las expresiones regulares los protocols que queremos insertar como texto, además de el pipe que les sigue (v.g. remover https?\|ftp\| y dejar ^\(file\|nfs\)://).  Para finalizar Guardamos para sesiones futuras y listo, a dragandroppear ligas directo a nuestros documentos.

jueves, 24 de enero de 2013

Renaming multiple files with Perl's Regex power

(puedes leer esta publicación en español aquí)

Useful one-liner to rename multiple files using regular expressions:

perl -we '$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renaming "$_"\n      to "$ren"\n); rename($_, $ren); }}' <pattern> <replacement> <files...>

Brought up because of the Programming Languages class at Coursera, whose videos are numbered without padding zeros, (p.e. "2 - 9 - Functions Formally (856).mp4"), messing up sort order in many programs (like VLC).

To fix it from our trusty Linux terminal, first we create an alias for neatness (which you can also save permanently in your ~/.bashrc):

alias renamregex='perl -we '\''$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renaming "$_"\n      to "$ren"\n); rename($_, $ren); }}'\'

Then we  change to the directory with the videos, replacing mine with your own of course (or you can simply press F4 in Dolphin to open a terminal in it, if you use KDE):

cd "~/Documentos/Educación/Cursos en línea/Coursera UoW - Programming Languages/"

And we add an underscore to the video length (so the video name is the same as the subtitle):

renamregex '(\d)(\d\d\)\.mp4)' '$1_$2' *.mp4
Renaming "2 - 9 - Functions Formally (856).mp4"       to "2 - 9 - Functions Formally (8_56).mp4"
And then we rename all files, adding a zero to all the lone digits, except the last--we don't want to change the extension:

renamregex '(^|\D)(\d)(\D)' '${1}0$2$3' *
Renaming "2 - 9 - Functions Formally (8_56).mp4"      to "02 - 09 - Functions Formally (08_56).mp4"
As a goodie for using the best OS for developers, you can install all the programs required on the class with a single command (in Debian/Ubuntu and friends):
sudo apt-get install emacs24 smlnj sml-mode racket ruby libtcltk-ruby

Though SML mode requires a quick fix (to fix the "require: Constant symbol `:group' specified in defvar" error):

sudo perl -pi -e 's/^\(defvar :.*\n//' /usr/share/emacs/site-lisp/sml-mode/sml-compat.el
sudo emacs -batch -f batch-byte-compile  /usr/share/emacs2*/site-lisp/sml-mode/sml-compat.el

If you want to use Emacs instead of DrRacket, install Quack and Geiser with:
sudo apt-get install emacs-goodies-el

and for the latest Geiser:
wget http://ubuntu.wikimedia.org/ubuntu/pool/universe/g/geiser/geiser_0.4-1_all.deb
sudo dpkg -i geiser_0.4-1_all.deb
rm geiser_0.4-1_all.deb

(or you can just apt-get install geiser if you're already in Ubuntu Sausy or Debian Jessie).

And add to your ~/.emacs:

;; Improved scheme-mode for Racket
(require 'geiser-install)
(require 'quack)
(quack-install)




If you're in Windows, you'll have to install Perl and run something like:

cd "$HOME\Mis Documentos\Educación\Cursos en línea\Coursera UoW - Programming Languages\" 

perl -we '$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renaming "$_"\n      to "$ren"\n); rename($_, $ren); }}'
'(\d)(\d\d\)\.mp4)' '$1_$2' *.mp4

perl -we '$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renaming "$_"\n      to "$ren"\n); rename($_, $ren); }}' '(^|\D)(\d)(\D)' '${1}0$2$3' *.*

Though I haven't tried it.

Renombrando múltiples ficheros con el poder ExReg de Perl

Práctico comando para renombrar ficheros usando expresiones regulares:

perl -we '$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renombrando "$_"\n          a "$ren"\n); rename($_, $ren); }}' <patrón> <reemplazo> <ficheros...>

Sacado a colación a propósito de el curso de Lenguajes de Programación en Coursera, cuyos videos están numerados sin cero de prefijo ("2 - 9 - Functions Formally (856).mp4"), por lo que son ordenados incorrectamente en la mayoría de los programas (como VLC).

Para arreglarlo en una terminal de Linux, primero creamos un alias para mayor legilibilidad (que también puedes guardar permanentemente en tu .bashrc):

alias renamregex='perl -we '\''$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renombrando "$_"\n          a "$ren"\n); rename($_, $ren); }}'\'

Después cambiamos al directorio donde tenemos los videos, reemplazando mi directorio con el tuyo claro (también puedes simplemente presionar F4 en Dolphin para abrir una terminal en él, si usas KDE):

cd "~/Documentos/Educación/Cursos en línea/Coursera UoW - Programming Languages/"

Y añadimos un guión bajo a la duración (para que el nombre del video coincida con el del subtítulo):

renamregex '(\d)(\d\d\)\.mp4)' '$1_$2' *.mp4
Renombrando "2 - 9 - Functions Formally (856).mp4"
          a "2 - 9 - Functions Formally (8_56).mp4"
Para después renombrar todos los ficheros añadiendo un cero a todos los dígitos solitarios, excepto el último--no queremos cambiar la extensión:

renamregex '(^|\D)(\d)(\D)' '${1}0$2$3' *
Renombrando "2 - 9 - Functions Formally (8_56).mp4"
          a "02 - 09 - Functions Formally (08_56).mp4"
Como premio extra por usar el mejor SO para los desarrolladores, puedes instalar todos los programas del curso con un solo comando (para Debian/Ubuntu y amigos):

sudo apt-get install emacs24 smlnj sml-mode racket ruby libtcltk-ruby

Aunque el modo SML requiere un pequeño arreglo (para  prevenir el error "require: Constant symbol `:group' specified in defvar"):

sudo perl -pi -e 's/^\(defvar :.*\n//' /usr/share/emacs/site-lisp/sml-mode/sml-compat.el
sudo emacs -batch -f batch-byte-compile  /usr/share/emacs2*/site-lisp/sml-mode/sml-compat.el

Si quieres usar Emacs en lugar de DrRacket, instala Quack y Geiser con:
sudo apt-get install emacs-goodies-el

y para el último Geiser:
wget http://ubuntu.wikimedia.org/ubuntu/pool/universe/g/geiser/geiser_0.4-1_all.deb
sudo dpkg -i geiser_0.4-1_all.deb
rm geiser_0.4-1_all.deb

(o si ya usas Ubuntu Sausy o Debian Jessie, puedes simplemente hacer apt-get install geiser).

y añade a tu ~/.emacs:

;; Improved scheme-mode for Racket
(require 'geiser-install)
(require 'quack)
(quack-install)



Si estás en Windows, tendrás que instalar Perl por tu cuenta y ejecutar algo como:

cd "$HOME\Mis Documentos\Educación\Cursos en línea\Coursera UoW - Programming Languages\" 

perl -we '$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renombrando "$_"\n          a "$ren"\n); rename($_, $ren); }}'
'(\d)(\d\d\)\.mp4)' '$1_$2' *.mp4

perl -we '$regex = shift(@ARGV); $rep = shift(@ARGV); $rep =~ s/"/\\"/g; $rep = qq("$rep"); foreach (@ARGV) { if (/$regex/) { $ren = s/$regex/$rep/geer;  print qq(Renombrando "$_"\n          a "$ren"\n); rename($_, $ren); }}' '(^|\D)(\d)(\D)' '${1}0$2$3' *.*

Pero no lo he probado.

martes, 15 de mayo de 2012

Cursor invisible y fondo negro al lanzar Tribes Ascend

Al correr Tribes Ascend (por primera vez en mi caso), no es posible ver el cursor del ratón, ni el fondo de la pantalla de inicio (si consigues aceptar la EULA a ciegas).  Un problema de texturas corruptas, de acuerdo con el soporte técnico de Hi-Rez.  La solución fue iniciar Validate/Repair en la utilidad de soporte (Hi-Rez Studios Game Support and Diagnostic Utility), que se encuentra en el menú inicio o en el botón de engrane del lanzador de Tribes.


jueves, 1 de marzo de 2012

Instalar o actualizar complementos de Wordpress sin FTP

Para poder instalar complementos automáticamente, Wordpress requiere que el usuario del servidor web sea el propietario de los directorios wp-admin y wp-content, localizados donde lo tengas instalado.  Un poco raro, pues no se conforma con tener permisos de escritura de grupo (p.e.chgrp -R www-data wp-admin wp-content; chmod -R g+w wp-admin wp-content), ni imagino porque quiere poseer wp-admin, si los complementos se encuentran en wp-content/plugins...  en todo caso, los comandos siguientes solucionan el problema en Ubuntu:

cd /usr/share/wordpress
sudo chown -R www-data wp-admin wp-content