Archive for the ‘Linux’ Category

Quod Libet and HTC Desire

Saturday, September 4th, 2010

Quod Libet doesn’t recognize the HTC Desire as a Media Device on Arch Linux. Reason: Quad Libet looks for ‘portable_audio_player’ capability of an USB device. This is controlled by Hal.

The file /usr/share/hal/fdi/information/10freedesktop/10-usb-music-players.fdi contains the definitions of the capabilities. With hal-device, find out the usb.product_id of the HTC Desire:

5: udi = '/org/freedesktop/Hal/devices/usb_device_bb4_ff9_SH07XPL01559_if0'
  usb.product_id = 4089  (0xff9)  (int)
  usb.vendor = 'High Tech Computer Corp.'  (string)
  usb.product = 'USB Mass Storage Interface'  (string)

Add this product_id to the above mentioned file. I found a section for HTC Diamond and added it there:

<match key="@storage.originating_device:usb.product_id" int_outof="0xc01;0xc02;0xc13;0xff9">

Restart hal, plugin the Desire, restart Quod Libet and it should appear in the Media Device pane.

Backupjes maken van de home directory

Sunday, July 27th, 2008

Tja onder deze prachtige titel heb ik besloten om toch maar weer eens dit logje te gaan gebruiken voor het documenteren van dingen die ik anders regelmatig weer opnieuw moet uitzoeken. En wie weet heeft iemand anders er ook nog wat aan.

Het grote doel is backuppen. Ik wil dat er een backup van mijn /home directory wordt gemaakt op het moment dat ik mijn externe disk inplug. Hiervoor is het nodig dat de externe schijf altijd een voorspelbaar mount point heeft en niet iets randomachtigs dat ubuntu voor mij bedenkt.

Stap 1 is dan ook een udev-regel maken en wel in /etc/udev/rules.d/10-local.rules. Deze wordt als eerste verwerkt en dat is belangrijk. Ik wil dat mijn schijf bekend wordt als /dev/exthd. udev kan dit doen voor mij maar dan moet ik wel aan udev vertellen hoe de schijf te herkennen valt.

Substap 1a is zoeken hoe de schijf te herkennen valt. Als de schijf wordt aangesloten gaat Linux allerlei dingen uitzoeken. Deze informatie wordt opgeslagen in een bestandssysteem dat beschikbaar is onder /sys. Ergens in die structuur staat hoe de externe schijf te herkennen is. Om die info boven water te krijgen heb ik onderstaande procedure gevolgd nadat ik de schijf had aangesloten en ingeschakeld. Ubuntu mount ‘m dan automatisch.

# Kijken hoe de schijf nu heet:
mount
/dev/sdb5 on /media/disk type vfat (rw,nosuid,nodev,uhelper=hal,shortname=mixed,uid=1000,utf8,umask=077,flush)
# OK schijf heet dus /dev/sdb
# locatie van de informatie over deze schijf vinden:
udevinfo -q path -n /dev/sdb
/block/sdb
# ok info staat dus in /block/sdb
# opvragen info:
udevinfo -a -p /sys/block/sdb
# heel veel info, waaronder:
ATTRS{vendor}=="DMI "
ATTRS{model}=="Ultra HDD "

Concluse: udev kan de schijf herkennen aan de hand van de model naam ‘Ultra HDD’. Hoera. Tijd voor stap 1b: het aanmaken van de regel in /etc/udev/rules.d/10-local.rules.

SUBSYSTEM=="block",ATTRS{model}=="Ultra HDD ",NAME="exthd%n"

Testen kan met ‘udevtest /sys/block/sdb’ en activeren van de regel kan met /etc/init.d/udev restart. Dan zou de schijf voortaan onder de nieuwe naam bekend moeten staan.

Stap 2 is het maken van een mountpoint: bv ‘mkdir /mnt/exthd’. Voeg dan aan /etc/fstab het device en mountpunt toe:

/dev/exthd6 /mnt/exthd ext2 rw,user,noauto,exec 0 0

Stap 2 is het maken van het backupscriptje. Dat kan van alles zijn. Bij mij ziet het scriptje er zo uit:

#!/bin/sh

# try to mount
/bin/mount /mnt/exthd
if [ $? -eq 0 ] || [ $? -eq 32 ]; then
# Backup home directory
rsync -a --delete /home/rutger /mnt/exthd/Backup/localhost
fi

Daarnaast is er nog een scriptje dat gerund wordt als de schijf wordt aangesloten:

#!/bin/sh
su - rutger;/home/rutger/scripts/backup_home &

Deze wordt door udev aangeroepen. De reden hiervoor is dat udev wacht totdat het scriptje is uitgevoerd. Een backup maken kan lang duren dus het bovenstaande scriptje roept het backupscriptje aan en stopt er dan direct mee. En dit dient dat ook nog even worden toegevoegd aan de udevregel in /etc/udev/rules.d/10-local.rules:

SUBSYSTEM=="block",ATTRS{model}=="Ultra HDD ",NAME="exthd%n",RUN+="/home/rutger/scripts/run_exthd"

En dat is het dan.

Mount errors in KDE bij inpluggen USB disk

Thursday, August 24th, 2006


rejected message had interface "org.freedesktop.Hal.Device.Volume" member "Mount" error name "(unset)" destination "org.freedesktop.Hal"

Komt door /etc/dbus-1/system.d/hal.conf. De ingelogde gebruiker moet ongeveer deze policy hebben:

  <policy user="XXX">
    <allow
send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/>
    <allow
send_interface="org.freedesktop.Hal.Device.LaptopPanel"/>
    <allow
send_interface="org.freedesktop.Hal.Device.Volume"/>
    <allow
send_interface="org.freedesktop.Hal.Device.Volume.Crypto"/>
  </policy>

SSH Connection Control

Friday, July 28th, 2006

Onderstaande code moet in ~/.ssh/config. Er wordt dan voor elke connectie die je aanmaakt een bestandje in ~/.ssh/ geplaatst. Als je dan een tweede connectie opent naar een host waar je al op verbonden bent dan wordt de eerdere authenticatie gebruikt.


host *
controlmaster auto
controlpath ~/.ssh/ssh-%r@%h:%p

(via dit)

Zoek & vervang voor kleuren

Monday, July 10th, 2006

Met Imagemagick kan je zoeken en vervangen van kleurtjes command line doen. bv: mogrify -fill 'rgb(51, 75, 100)' -opaque 'rgb(10,78,153)' *.gif Dit zet alle gif plaatjes om. De kleur rgb(10,78,153) wordt vervangen door rgb(51, 75, 100)

Sony Ericsson W800i

Saturday, March 18th, 2006

Synchronisatie van gegevens met de w800i is simpel. Met bluetooth en multisync werkt het als een speer. Zorg dat bluetooth op de telefoon en op de pc aanstaat. Voeg een nieuw paar toe, met 1 plugin IrMC Mobile Device en de ander ‘Backup’ of Evolution. Bij de opties van het IrMC Mobile Device kiezen voor bluetooth. Het scannen van de bluetooth devices levert een ‘w800i’ op. Als Test Connection goed werkt kan het synchroniseren beginnen. Het mooie van multisync is dat je ook andere diensten kan toevoegen, bv een iCal server.

Bloglines en feeds

Saturday, March 11th, 2006

Lastig… drie verschillende locaties waar je RSS feeds leest. Drie verschillende lijsten met feeds die niet synchroon lopen: dus als je op je werk een feed hebt gelezen duikt ‘ie ‘s avonds thuis nog een keer op.

De oplossing: alles op Bloglines zetten: een online RSS reader. En als je dan toch nog je feeds wilt lezen in een losse applicatie dan kun je je abonneren op de feed van je eigen feeds via http://rpc.bloglines.com/getitems?s=0. De rssreader moet dan wel http-authenticatie ondersteunen.