![]() Registered Member ![]()
|
Hello,
I'm developing a construction which makes various resources directly available to the user, in the homedirectory of the user. This is based upon a Fuse module, fuse-workspace-union and the automounter for Linux autofs (which is the mounthelper). In short, a fusemodule is mounted when a session starts at: $HOME/Workspace and it looks like: $HOME/Workspace/Devices Documents Network In the networkmap at this moment there are two networks available: $HOME/Workspace/Devices Documents Network/FTP servers /Windows Network with FTP servers are 192.168.0.3 (local ftp server), and the Windows Network is only one server sclfs20091030 in workgroup bononine, with some shares. The Fuse module redirects (or better mirrors) every call to these resources to the automounter, which mounts the right resource. A very important role is there for what I call resource records. This construction is build upon these records. No records, no connection. I've reported about this earlier in the brainstorm list and a question in network&internet. Now I've a question about adding devices. This construction also supports local devices like USB. (and others but I haven't tried it yet).. Normally they are detected by the udev daemon, which reports to HAL. This will mount it at /media, which will find it's way (via dbus??) to KDE. Now, I've disabled HAL by adding this to /etc/hal/fdi/policy/preferences.fdi: <device> <match key="@block.storage_device:storage.bus" string="usb"> <merge key="volume.ignore" type="bool">true</merge> </match> </device> Now this disables HAL, but also every notification in KDE. My construction works like: udev -> triggers a script which adds a "resource record", and this script calls another script which makes the new device visiable in the Workspace/Devices map, in my case: $HOME/Workspace/Devices/USB_Flash_Memory-2 Now how can I make KDE aware of the device is plugged in, and even better, let KDE know where the device is available for this user. Is there a command for this?? This construction supports multiseat, cause the device is mounted for every user seperatly, and made available to the different user in their own "Workspace" map. Futher extended attributes, locking are supported. Inotify not, the fuse module lacks good interaction with the automounter... Look at: viewtopic.php?f=18&t=85148 Stef Bon |
![]() Administrator ![]()
|
KDE uses Solid, which is a hardware abstraction layer. In order to make your information appear in KDE applications, you need to provide a rewritten version of the HAL backend, which also includes your own resource information.
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
![]() Registered Member ![]()
|
Ok, I hoped to bypass HAL (or DeviceKIt). I've posted several times at that maillist, no single reaction.
You're sure there is nothing possible to communicatie to KDE somehowe? I'm still trying.... Stef Bon |
![]() Administrator ![]()
|
Which mailing list in particular did you post to? I never saw your messages on kde-hardware-devel...
Note that in the long term plans for Solid just made at Tokamak 4, Solid will be made multi-backend capable, and will support virtual devices such as those supported by ALSA, bluez, UPnP and Pulseaudio. Note that some of this may take until KDE 4.6 to be implemented however.
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
![]() Registered Member ![]()
|
Thanks for the reply. I've posted on the HAL and Devkit-devel maillists, not on kde related lists.
I will do another try on devkit-devel soon. I'm still figuring out how my message will look like and how I introduce my construction to the devkit developers. My construction is somewhat another approach to mounting of local devices, using personal autofs managed directories and not using one general mountpoint at /media. It also is required to make properties user depending... for example my construction makes devices available (they are mounted somewhere else..) in a subdirectory of $HOME: %HOME of USERID%/Workspace/Devices/USB_Flash_Memory so this mountpoint depends on the user, and since Linux is a multiuser system, (multiseat is a good example) this requires some major changes to the way DeviceKit export the information via Dbus to the (graphical) environment of the user (KDE!). Now at this moment the system bus is used, providing the same information. So I'm trying to get foot on ground at the DevKit maillist, and curious what they will say about this. (if they will react at all...) In my construction everything starts with a resource record, local and remote. In my opinion this is a good way to have a starting point to all kind of resources. In fact DevKit is such a database for local devices. Maybe it comes to one big resources database.. You say there are plans to support ALSA, bluez, and others. Alsa is already covered by HAL (and DevKIt)?? Stef |
![]() Administrator ![]()
|
Note that for integration with KDE, posting to kde-hardware-devel@kde.org may help better... With regards to the ALSA support I mentioned, I believe this will only cover "virtual" devices.
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered users: Baidu [Spider], Bing [Bot], Google [Bot]