running the DNSSD.register 'block' example fails on linux with
$ ruby sample/register.rb
Registering some blackjack services
(run sample/browse.rb or sample/resolve.rb)
registered blockless (no callback)
*** WARNING *** The program 'ruby' called 'DNSServiceAddRecord()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=ruby&f=DNSServiceAddRecord
/home/jadams/.rvm/gems/ruby-1.9.3-p327@openplay/gems/dnssd-2.0/lib/dnssd/service.rb:39:in _add_record': DNSSD operation failed with error code: -65544 (DNSSD::UnsupportedError)
from sample/register.rb:26:in block in <main>'
from /home/jadams/.rvm/gems/ruby-1.9.3-p327@openplay/gems/dnssd-2.0/lib/dnssd/service.rb:226:in register'
_add_record': DNSSD operation failed with error code: -65544 (DNSSD::UnsupportedError)
block in <main>'
Removing the call to DNSSD.register 'block' resolves this issue. Registering the service at the end of the file works fine, as well as the registration with no callback.
This isn't a problem for my use case (literally just trying to advertise a service's availability for now), but figured I'd report it anyway.
Again, I can help with whatever you need to help get more info on this if it's worthwhile to you. Otherwise, this is just another data point for yon internet wanderers.