Package Tailscale Client for NetBSD
Budget: £20 – £250 GBP
I’d like Tailscale’s Go-based client to compile, run, and package cleanly on NetBSD 11 (and future releases) and then be accepted into pkgsrc so anyone can install it with a simple pkg_add.
The code already builds smoothly on many Unix-like systems; what’s missing is the NetBSD-specific work: fixing any build flags, adjusting syscall wrappers, writing the proper rc.d script, and creating a high-quality pkgsrc framework entry. Default configuration is fine—I’m not looking for custom tunables at this stage—just a solid, reproducible package that aligns with upstream.
You’ll need familiarity with Go modules, pkgsrc Makefile conventions, and the usual NetBSD build tools (bmake, mk.conf, etc.). I’ll provide a NetBSD 11 test VM if you don’t have one handy. Once the package builds locally, we’ll submit it for review on pkgsrc-wip and shepherd it through whatever tweaks the maintainers request.
There is already a tailscale package which mostly works with userland networking, but not tun
Deliverables
• Compiling Tailscale binary that runs without errors on NetBSD 11
• Completed pkgsrc directory (Makefile, distinfo, PLIST, DESCR, rc.d script) that passes pkglint and bulk build checks
• Patch set or PR ready for pkgsrc-wip inclusion, with clear commit messages
• Brief README outlining the build steps and any upstream changes proposed
Acceptance criteria: `bmake install` succeeds on a fresh NetBSD 11 system, `tailscaled` starts via rc.d, and `tailscale status` shows the node online and tailscale works via tun networking. Once those boxes are ticked, we’ll push it upstream and celebrate having Tailscale one command away for every NetBSD user.
The code already builds smoothly on many Unix-like systems; what’s missing is the NetBSD-specific work: fixing any build flags, adjusting syscall wrappers, writing the proper rc.d script, and creating a high-quality pkgsrc framework entry. Default configuration is fine—I’m not looking for custom tunables at this stage—just a solid, reproducible package that aligns with upstream.
You’ll need familiarity with Go modules, pkgsrc Makefile conventions, and the usual NetBSD build tools (bmake, mk.conf, etc.). I’ll provide a NetBSD 11 test VM if you don’t have one handy. Once the package builds locally, we’ll submit it for review on pkgsrc-wip and shepherd it through whatever tweaks the maintainers request.
There is already a tailscale package which mostly works with userland networking, but not tun
Deliverables
• Compiling Tailscale binary that runs without errors on NetBSD 11
• Completed pkgsrc directory (Makefile, distinfo, PLIST, DESCR, rc.d script) that passes pkglint and bulk build checks
• Patch set or PR ready for pkgsrc-wip inclusion, with clear commit messages
• Brief README outlining the build steps and any upstream changes proposed
Acceptance criteria: `bmake install` succeeds on a fresh NetBSD 11 system, `tailscaled` starts via rc.d, and `tailscale status` shows the node online and tailscale works via tun networking. Once those boxes are ticked, we’ll push it upstream and celebrate having Tailscale one command away for every NetBSD user.