A small Zig library and CLI for sending Wake-on-LAN (WOL) magic packets.
- Parse MAC addresses from common formats (colon, dash, dot, or plain hex)
- Build standards-compliant 102-byte magic packets
- Send via UDP broadcast (default
255.255.255.255:9) - Zero external dependencies (Zig standard library only)
Add to your build.zig.zon:
zig fetch --save git+https://your-git-host.com/wakeonlanThen in your build.zig:
const wakeonlan = b.dependency("wakeonlan", .{});
exe.root_module.addImport("wakeonlan", wakeonlan.module("wakeonlan"));zig build
./zig-out/bin/wakeonlan --helpconst std = @import("std");
const wol = @import("wakeonlan");
pub fn main() !void {
try wol.wakeFromStrings("01:23:45:67:89:ab", "255.255.255.255", 9);
}zig build run -- --mac 01:23:45:67:89:ab
zig build run -- --mac 01:23:45:67:89:ab --ip 192.168.1.255 --port 9zig build test
zig buildMIT. See LICENSE.