directories in "real time", without having to periodically poll(2) for them after several seconds. This improves the responsiveness of applications using famd (specially GNOME) when changes to files occur from the "outside" (they are notified from changes immediately), or even from the application itself (for example, have you ever tried to rename several files from Nautilus? just a PITA). To enable kqueue, you have to pass the 'kqueue' option to the package. I'm not enabling it by default because it needs testing (but it should be enabled in a future). Furthermore, I'd like to send these patches to the FAM developers for comments too. And a review from somebody knowing kqueue could be good! (this is the first time I use the kqueue interface, so I'm not sure if everything is right). A description on how this works can be found in the files/IMonKQueue.c++ file. Note that, due to FAM's design, the easiest way to do this change is to "emulate" imon functionality. While here, add an rc.d script for famd, in case the user prefers to run it at system startup instead of from inetd (I created it while developing the kqueue functionality, so it's a good moment to add it). Adjust the MESSAGE accordingly. Bump PKGREVISION to 4.
20 lines
794 B
Text
20 lines
794 B
Text
===========================================================================
|
|
$NetBSD: MESSAGE,v 1.4 2004/10/17 19:20:53 jmmv Exp $
|
|
|
|
Because FAM uses RPC, you have to add the following line to the system's
|
|
portmapper file (/etc/rpc):
|
|
|
|
sgi_fam 391002 fam # File Alteration Monitor
|
|
|
|
After that, restart the rpcbind(8) server.
|
|
|
|
Furthermore, you have to enable the FAM daemon. There are two ways to do
|
|
this: through inetd(8) or as a standalone server. If you prefer the former
|
|
way, add the following line to /etc/inetd.conf:
|
|
|
|
sgi_fam/1-2 stream rpc/tcp wait root ${PREFIX}/sbin/famd famd
|
|
|
|
and reload inetd(8)'s daemon. However, if you prefer the later way, use
|
|
the provided famd rc.d(8) script.
|
|
|
|
===========================================================================
|