Skip to content

Commit c2cc8eb

Browse files
committed
plan: add freebsd-mDNSResponder + freebsd-DiskArbitration porting plans
Two more Apple-OSS userland tools for the launchd companion set. freebsd-mdnsresponder-plan.html: Bonjour / zeroconf service discovery. .local hostnames, automatic printer / file-share discovery on the LAN. Apache 2.0; latest tag mDNSResponder-878.70.2; 261 source files, ~154k LOC. SURPRISE: zero Mach surface. Apple already maintains a cross-platform mDNSPosix platform layer (used by Linux/FreeBSD/Solaris builds). The port is much more a configuration exercise than a true port. Drop mDNSMacOSX/, mDNSWindows/, Apple-private extensions; use mDNSPosix as-is. Optional Phase 3 polish: swap PosixDaemon's select(2) loop for libdispatch sources to match the rest of our daemon stack. freebsd-disk-arbitration-plan.html: Disk attach/detach events, mount/unmount/eject coordination, mount-policy approvals. APSL 2.0; latest tag DiskArbitration-79.3; 71 source files, ~34.5k LOC; 10 Mach-tied. THE HARD ONE: Apple's daemon is IOKit-tied at its core (walks IOMedia objects in the I/O Registry). FreeBSD has no IOKit. Port replaces IOKit with libgeom for disk discovery + devctl(4) for hot-plug events. Real porting effort, not just IPC swap. Workspace File Viewer's "Devices" sidebar is the headline gershwin use case. Both Phase 7+/8+ work. Index links them under the launchd entry.
1 parent 1695cf5 commit c2cc8eb

3 files changed

Lines changed: 898 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)