Hi All,

In the last few days, I've been working on leveraging a pluggable mechanism that is going to be introduced for muCommander [1] to provide a front-end for libguestfs.

I published a video [2] that demonstrates this integration: enabling to browse/upload-to/download-from virtual disks via a file manager with a dual-pane interface.

I've followed the guidelines for inspecting the disk's file system(s) I got on IRC (thanks Richard!). The code is available at [3], mostly in LibguestfsFile.java.

However, as one can see in the video, it takes a pretty long time to inspect the disk (in order to find the operating system) and to mount the file systems. So it takes me back to the filesystem_walk function as I read in [4] that it allows inspecting the metadata without mounting the disk partition(s). Unfortunately, I didn't manage to try that function due to the following error I get when trying to use it (tried on Fedora 28 & 29):

Exception in thread "main" com.redhat.et.libguestfs.LibGuestFSException: internal_filesystem_walk: feature 'libtsk' is not available in this
build of libguestfs.  Read 'AVAILABILITY' in the guestfs(3) man page for
how to check for the availability of features.
    at com.redhat.et.libguestfs.GuestFS._filesystem_walk(Native Method)
    at com.redhat.et.libguestfs.GuestFS.filesystem_walk(GuestFS.java:6010)
    at test.Main.main(Main.java:27)

Is that right that the filesystem_walk doesn't require mounting the disk partition(s)? If that's true, can we publish a version that supports that in the Fedora repo?

And another question, the upload/download API requires to provide a remote file and a file on the hosting file system. I currently use a temporary local file that is passed as input (in case of upload) or output (in case of download) for libguestfs. But I've noticed that by specifying "-", libguestfs reads from stdin/writes to stdout. Do you have any experience in using this to inject/retrieve data directly from/to a Java application (that holds an input/output stream at hand) without going through the disk?