Interest in a new filesystem change notifier??
stefbon at gmail.com
Mon Feb 13 06:38:54 PST 2012
I'm working on a replacement of gamin, the current filesystem change
notify backend of kde.
The reasons for me to start writing it is:
. gamin hasn't an active development
. gamin is hard to understand
. gamin has some drawbacks
I've written the new fs change notifier in FUSE, like a special case
of an overlay fs.
As FUSE filesystem it's very easy to understand (well at least for me
and folks who work with filesystems). Making it work with backend like
native (for linux) inotify is not hard.
One of the new features is that I want it possible for filesystems
like cifs, nfs and ones written in FUSE to connect to notifyfs (this
is the name) via a socket. Notifyfs will send a message to these
filesystems when an app client is interested in an inode on that fs.
This message will contain the path (relative to the mountpoint and the
mask). When the filesystem receives this message, it can then do
something to stay up to date specific for that filesystem. A cifs fs
will do a SMB Change Notify request to the server for the specific
inode, NFS will do something simular, and FUSE filesystems do whatever
is suitable for the backend. A simple overlay fs on Linux will use
inotify for example.
Any event is send back to notifyfs over the socket.
It's complicated, but as far as I can see it's the only way when
dealing with filesystems (thus cifs, nfs and FUSE fs's) where inotify
does not work.
I have been thinking that it also can provide mountinfo to apps
interested, and can do some cache tasks.
I haven't got publiced it somewhere yet, but if anyone is I will do
that. It's in alpha state, a lot of planned features are not
implemented. What is a good location to publish?? Google Code?
More information about the xdg