One straightforward answer for a (small) step forward seems to be to publish libsyscall with a dependency on another library, glibc maybe, or maybe libsyscall_support or librust_runtime or whatever.
Can always go ahead and publish libsyscall_doesn’t_need_support later. But the kernel not providing a user space API for it’s syscalls seems kind of like an oversight. Do they already publish a header or something to wrap unexposed syscalls if you already depend on libc? Maybe that’s what I’m missing.
As I understand, you already can call all syscalls. The issue is it doesn’t look pretty when you do so.