Hello Tiger

I had to replace my home server’s broken Ubuntu. It is an ancient Mac Cube, so going back to MacOSX Tiger seemed like the easiest thing to do.

Using MacPorts, I installed Apache2, SVN, SSL etc.

With a WebDAV repository setup, I needed a way to broadcast it’s URL over the local subnet using Bonjour, ironically for a Mac there did not seem to be a way to do it.

MacOS Client comes with a Bonjour Module for Apache 1.3, MacOSX Server comes with one for Apache2 (but I do not have it).
Linux can use mod_dnssd but as it is based on Avahi, I am pretty sure it won’t work on MacOSX.

A bit of Googling and I found the dns-sd command. The man page says it is designed for testing only, but it seems to work fine, fired off once at startup.

I use this plist, placed in /Library/LaunchDaemons/

    <?xml version="1.0" encoding="UTF-8"?>  
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
    <plist version="1.0">  
    <dict>  
     <key>Debug</key>  
     <false/>  
     <key>Label</key>  
     <string>org.fiveone.shared-dav-dns-sd</string>  
     <key>OnDemand</key>  
     <false/>  
     <key>ProgramArguments</key>  
     <array>  
      <string>/usr/bin/dns-sd</string>  
      <string>-R</string>  
      <string>Shared-DAV</string>  
      <string>_webdav._tcp</string>  
      <string>local</string>  
      <string>80</string>  
      <string>path=/Shared/</string>  
     </array>  
     <key>RunAtLoad</key>  
     <true/>  
     <key>ServiceDescription</key>  
     <string>Bonjour Shared</string>  
    </dict>  
    </plist>  

Tags