-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mounting images via UDisks2 #184
Comments
as per: https://wiki.archlinux.org/title/udisks |
or seems like there is much interesting way: https://doc.qt.io/qt-5/qdbusinterface.html |
I believe DBus API is the proper way to integrate apps with udisks2.
Yeah, Qt DBus module should do. |
api reference: http://storaged.org/doc/udisks2-api/latest/ |
Yeah, we don't need much of the API here, just two interfaces and two method calls. Probably the only thing to note is that when calling |
UDisks is a privileged daemon with D-Bus API for for manipulating block devices and filesystems.
Q4Wine could ask UDisks2 to mount a disk image for it. This gives several advantages over exec'ing CLI tools for mount:
fusermount
when using FUSE)Key difference from current mount approach, as I see it, is that UDisks2 sets up a mountpoint for us automatically (usually in
/media
or/run/media/
) when mounting a filesystem, which means we can't select it ourselves.To mount an image, client app would need to call two D-Bus methods sequentially:
org.freedesktop.UDisks2.Manager.LoopSetup
to create a block device backed by given image (returns object path of the created device), and thenorg.freedesktop.UDisks2.Filesystem.Mount
(method of the block device object we just created) to mount the filesystem (returns path to the mount point).The text was updated successfully, but these errors were encountered: