Hello Fred,
I'm not involved with Jack directly but I was looking into this myself so I thought I'd share my experience.
The issue with Jack on macOS is twofold: the implementation of JACK - CoreAudio bridge (AKA JackRouter, allowing non-native JACK applications to connect to JACK), and the JackPilot app itself. JackRouter does not really need JackPilot AFAIU, its parameters could be set using any other software (it's just a configuration file). Jack itself can be started and controlled using QJackCtl, which AFAIK builds and works on macOS, with some minor changes.
However, the main problem is that JackRouter is using AudioHardwarePlugIn API, which has been deprecated, and IIUC, this is the reason JackRouter could not be used as default audio device in the versions of macOS it still worked on. The "modern" virtual audio device API is called AudioServerPlugIn.
BlackHole and others use that.
I've looked into picking up the JackRouter project, however I'm not a professional C/C++ developer and haven't gotten far with it. In the process I found a project that kind of achieves what we want -
JackBridge, but with caveats. It does connect to JACK and exposes itself as a virtual soundcard using the modern API, but the number of inputs/outputs is not configurable, individual programs don't show up as individual ports in JACK, and it needs an additional "bridge" executable to run in the background. However, it does point in the right direction, I think.
When I was looking into this, I
reached out to jack2 devs asking for the latest version of jackosx sources. What I've received from them, claiming to be the latest version of the source, I've put
on github.
BTW from some recent information on mailing lists I got the impression that at least some JACK developers are not interested in maintaining JackRouter (but only jack itself on macOS and Windows, in addition to Linux). JackRouter could totally be developed and distributed as a separate software package, requiring JACK of course. However, someone would need to pick up its development, AFAIU for both macOS and Windows. These are likely two very different tasks, on Windows it is a virtual ASIO driver, so there's no point in doing both by the same person or as the same project.
IMO it's not really worth maintaining JackPilot since we can use QJackCtl, but I might be wrong, and JackPilot might be the easiest thing to fix, if it just needs recompiling. JackRouter, however, needs a rewrite, and it would be a tremendous and crucial update for JACK on macOS. I'd be happy to exchange further emails about it, though what I have described is probably most information that I have on this topic.
I hope this is helpful!
Best regards,
Marcin