So I thought I'd try to get DBus, HAL and PMount up and running on my new 013 system. It finally works, here's the story:
Compiled DBus 0.95, removed --enable-xml-docs in the Recipe since I don't have the build deps for this... I had to add 'messagebus' and 'haldaemon' users and groups. Perhaps this should be done by the Recipe? Compiled the GLib and Python bindings for DBus. Compiled HAL 0.5.8.1 with PolicyKit disabled. even though it's "strongly discouraged". But PolicyKit needs PAM and I'm not sure how to fit PAM into Gobolinux (have no experience in PAM), anyone? HAL said that Perl-XML-Parser didn't exist, even though it was installed. I even tried taking the package from my old system, but still problem. Then I tried Compile Perl-XML-Parser (same version) and replaced the installed one, and now it worked! Anyone knows why? Compiled SysFSUtils 1.3.0, which has a fix for detecting removable property of some USB external disks. Compiled Pmount 0.9.13 Voila! I can use pmount as is, but for nice desktop integration I use ROX's DeviceHandler (http://rox.sourceforge.net/desktop/node/331) which automagically adds devices to the panel/pinboard and provides menu entries to mount/unmount them. I needed to patch DeviceHandler though, with a better method to get the mountpoints. (patch attached) Recipes for all stuff above (except DeviceHandler, which is an AppDir) was just sent to the recipes list. -- /Jonatan -=( http://kymatica.com )=-
--- DeviceHandler.orig/Handlers/Volume/__init__.py 2006-10-01 17:21:44.000000000 +0200 +++ DeviceHandler/Handlers/Volume/__init__.py 2007-02-18 18:40:14.000000000 +0100 @@ -168,6 +168,11 @@ def update(self): self.mountpoint = device_get_property_string(self.device, 'volume.mount_point') if self.mountpoint == '' or self.mountpoint == None: + computer = get_device('/org/freedesktop/Hal/devices/computer') + mount_root = device_get_property_string(computer, 'storage.policy.default.mount_root') + desired_mount = device_get_property_string(self.device, 'volume.policy.desired_mount_point') + self.mountpoint = os.path.join(mount_root,desired_mount) + if self.mountpoint == '' or self.mountpoint == None: self.mountpoint = self.get_mountpoint_from_fstab() if self.mountpoint == None: self.mountpoint = self.dev_path.replace('/dev/','/media/') @@ -213,4 +218,4 @@ else: dh_global.applet.device_notify(self, g.STOCK_NO, "unmounted") self.update() - \ No newline at end of file +
_______________________________________________ gobolinux-devel mailing list gobolinux-devel@lists.gobolinux.org http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel