4 ms·
I'm doing something similar but in a less fancy way: I've got a Hydra server (the NixOS CI thing) set up on a potato-grade SBC with a more powerful desktop comp
by t0astbread 3y ago
I'm doing something similar but in a less fancy way: I've got a Hydra server (the NixOS CI thing) set up on a potato-grade SBC with a more powerful desktop computer acting as a builder. The desktop runs a small Go program that I've written that shuts it down after ten minutes of inactivity. Wake-on-unicast for some reason always caused the desktop to start up after just a few seconds of being shut down, so I'm using magic packets. (I'm not sure what's causing this. I suspect Tailscale but I haven't really investigated it.) Hydra connects via SSH so I've added a Match block to the potato's SSH config that sends the WoL packet first:
Match host desktop.local exec /bla/bla/send-wol
I'm also doing full shutdowns instead of sleeping. The difference is only about ten seconds for a CI job. If the power draw during sleep turns out to be negligible, I might switch to that at some point but first, there are bigger bottlenecks to kill (like Hydra still running expensive evaluations on the potato).