I noticed that when emerging howl, the directory /etc/howl/ is not created, nor is /etc/howl/ mDNSResponder.conf - which contains the services howl will publish on the internet. I suggest the following modification to all daemon scripts in portage (eventually): If the USE=howl is set, each daemon merged add the following to /etc/howl/mDNSResponder.conf: # What services howl should publish over the network # # Server_name Service Domain Portnum # MyServer _ssh._tcp local. 22 MyServer _afpovertcp._tcp local. 548 If /etc/init.d/mDNSResponder now is started, each service in this file will be announced on the network using howl API. The MyServer is available from /etc/hostname for example. (Maybe configure an entry both for local and global, but keep the global option commented out) I can start working on this feature by the end of june, but I sadly dont have time before. So if anyone else feels the urge, go ahead =) Reproducible: Always Steps to Reproduce: 1. 2. 3.
Actually, after considering this maybe the best approach would be to incorporate this feature into rc-update instead. Because it should be possible to emerge a service without starting it and announcing it over howl. So if USE=howl is set, and you rc-update add a service, the appropriate line is added to /etc/howl/mDNSResponder.conf. What do you think about this behaviour instead?
It would seem that the correct behavior is to publish only the services that are actually running. If I /etc/init.d/sshd start (or stop), then mDNSResponder should start (or stop) announcing the presence of sshd -- no matter what runlevel sshd happens to be assigned to. /etc/howl/mDNSResponder.conf should perhaps be reserved for things not managed through standard init scripts (e.g. custom WebDAV shares and the like).
Yes, only running services should be published. However, there is no way around /etc/howl/mDNSResponder.conf for publishing services AFAIK. This means mDNSResponder.conf needs to be edited and the service restarted whenever another daemon is started/stopped.
Ultimately it is prefered that that zeroconf support is built into the daemon that uses it, as opposed to an init script or worse yet - the mDNSResponder.conf file (or equivalent). Native support will give the daemon (eg apache) ultimate control over what is published (eg users websites, rss feeds, webdav folders), something difficult to do from a conf file or even an init script. Secondly, Howl is dead (see website). Everything will need to be converted accross to use either avahi and/or Apple's Bonjour, initially using things such as avahi's howl compat libraries but then later changed to have native support for these zeroconf implementations.
net-misc/howl is dead and pending removal. avahi has one file per published service in /etc/avahi/services/, which is definitely the way it should be. Closing this.