I've started picking up my fs_filter work again, but, particularly given the move away from individual filesystem servers toward VFS plugins, and the benefits (and partial implementation) of a dynamic VFS, I want to pursue that route (combined with a transparent link plugin) rather than the fs_filter component route.

In order to make the VFS sufficiently dynamic, it seems that the Dir_file_system code just needs more sophisticated code to handle config updates. Am I correct?

As for my VFS plugin, I need a way for it to access the rest of the VFS, particularly the root directory. As far as I can tell, this isn't possible with the current VFS code. How should we change this? It would allow my planned transparent link VFS plugin to work, as well as others such as copy-on-write union directories.

On Jun 27, 2017 1:02 AM, "Norman Feske" <norman.feske@...1...> wrote:
Hi Ben,

On 21.06.2017 05:45, Nobody III wrote:
> I've started working on the implementation, and here's my plan:
> The component tree is the same as what you suggested, but fs_filter
> provides a "pipe" file to send requests (in XML format). The fs_filter
> component responds by spawning the Qt file picker. When the user chooses
> a file, the file is added to the filesystem provided by fs_filter, and
> fs_filter acknowledges the packet. The app can then read another
> file/pipe that contains the name of the selected file, then open the
> selected file.

this sacrifices the second advantage of my original suggestion, namely
that the fs_filter is transparent to existing applications. With your
approach, the application needs to speak an additional protocol
(generating the requests to the "pipe").

In principle, the selection of multiple files could instead be handled
by letting the fs_filter populate a virtual directory instead of
providing a single file. But as I haven't thought this through, I don't
want to keep you from exploring the direction you picked.

> Also, how do I spawn and use the file picker? Is there any existing
> example of using a child component like a library?

Please have a look at gems/src/app/launcher, which hosts a number of
components (e.g., menu_view) as child subsystems.

Cheers
Norman

--
Dr.-Ing. Norman Feske
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
genode-main mailing list
genode-main@...172...net
https://lists.sourceforge.net/lists/listinfo/genode-main