Pdeathsig only exists on Linux; make this conditional
add our own recvFd implementation, as the runc one is included in github.com/opencontainers/runc/libcontainer/utils which is Linux specific; this implementation is a little cleanup up to use Go unix socket specific functions rather than the syscalls from s/sys/unix where possible. This removes a whole chunk of runc dependencies from containerd
while in the cleaning up unix socket mood, clean up net.Listener to be the more specific net.UnixListener; this means we do not have to store path as it is available as the local address of a listener.
With these changes and some more fixes in containerd I have containerd-shim compiling on Darwin.
recvFd
implementation, as therunc
one is included ingithub.com/opencontainers/runc/libcontainer/utils
which is Linux specific; this implementation is a little cleanup up to use Go unix socket specific functions rather than the syscalls froms/sys/unix
where possible. This removes a whole chunk ofrunc
dependencies fromcontainerd
net.Listener
to be the more specificnet.UnixListener
; this means we do not have to storepath
as it is available as the local address of a listener.With these changes and some more fixes in
containerd
I havecontainerd-shim
compiling on Darwin.Tested with
containerd
master.