OctoPrint et al
So, my main reason for wanting to get a Canvas Hub was to have easy one-click print support that works with the Palette; after playing with Slic3r a bunch last night I then realized I also wanted OctoPrint for its print queue functionality to decouple the print process from Slic3r (which turns out to be rather unstable at times, at least on the Mac). But it turns out that Palette’s OctoPrint plugins work with plain ol' OctoPrint, too. So I looked into building an OctoPrint node… and then realized I was overcomplicating things, since OctoPrint doesn’t actually need dedicated hardware1 — it just needs to be on a computer that’s physically close to the printer and has multiple USB ports available.
My desktop computer is physically close to the printer and has multiple USB ports available.
So I looked to see if OctoPrint runs on macOS, and yes, it does; there’s nothing Linux- or ARM-specific about it, as it’s all written in Python. The macOS-specific guide is an okay starting point, but I saw a few things that could be a bit simpler, so here’s what I settled on.
(Also note that these directions should also work for Linux and even Windows users! There’s no reason to build an OctoPrint hardware node if you already have a computer that lives nearby your printer!)