Hi, I'm using KDE for years, and very happy. But as developer of FUSE filesystems, I run into problems concerning fam and gamin. KDE is still using gamin if it's installed.
Therefore I'm thinking about developing a new filesystem notify service, based on a FUSE fs. My idea is to let applications connect to the service via a socket to receive events, and let this service do the actions to find out the events. Applications can set a "watch" by using extended attributes like: (if an application is interested n changes in /home/user for example) mkdir %FUSEROOTDIR%/home mkdir %FUSEROOTDIR%/home/user setfattr --name=system.notifyfs_mask --value %somemask% %FUSEROOTDIR%/home/user The fs now determines based upon configuration, defaults and methods set at runtime the method to use, like inotify, dnotify, polling or another method on the underlying fs. Because the fuse fs can detect the pid of the app seting the xattr, it will send the events it receives on the underlying fs to the right socket (if it knows the pid-socket-fd link). My idea is to make it to use default methiods, which can be changed per path using extended attributes like system.notifyfs_method(_global) or something like that. There is one process required instead of one per usersession when using gamin. I beleive that the other desktop (Gnome) is already using something else than gamin. Anyone thinking this is a good idea?? Please comment, also when not positive. Stef Bon