Is udisks worse that HAL?
maximlevitsky at gmail.com
Thu Jun 24 08:38:02 PDT 2010
Sorry for flamebait title, but I am really frustrated with udisks.
it, and libraries that support it have just too many hardcoded
Why it was done this way?
Isn't a point of rewrite to create something better?
My problem is that I want to make xD cards work out of box.
Not only devicekit uses all kinds of hardcoded code assumptions but its
users do so as well.
For example it would set 'system internal' on all devices but few
hardcoded device types.
In my opinion _all_ configuration must not be hardcoded, and since you
choose udev, it should be stored in udev rules, where it can be edited
by the user.
I thought that I could override 'system internal' from udisks, but I
found yet another surprise.
I found that gvfs-volume-monitor from gvfs, hardcodes the device
interfaces it will mount.
It only mounts
if (g_strcmp0 (connection_interface, "usb") == 0 ||
g_strcmp0 (connection_interface, "firewire") == 0 ||
g_strcmp0 (connection_interface, "sdio") == 0 ||
Now xD interface (which is 8 bit standard nand interface) isn't anything of above.
If system was well thought, there would be just a flag, 'automount' set by udev, and no need for guessing.
Everything, device names, descriptions, even icons by default (this is possible to override) are hardcoded.
My xD device shows up as a hard disk (and it supports rotation at unknown rate..... grrr...)
Not to mention that the same gvfs-volume-monitor hardcodes that it will show all mounts under /media, and /home/user
which is also often wrong.
(I for example had a thought to mount a seperate partition to /home/maxim/software because I compile stuff there too often.
But I don't want it to show it on desktop.
Hardcoded fragile assumptions are scattered all over udisks and gvfs.
And even udisks udev rule hardcodes UDISKS_PRESENTATION_NOPOLICY=1 for everything but few hardcoded devices...
I am really disappointed.
More information about the devkit-devel