Question

I was reading the Tmux source to see how it works. It saw that it uses imsg for its IPC, which I had never even heard of. I've been trying to find out more, but it turns out imsg is kind of hard to google, and I get a lot of results for iMessage.

I found some imsg documentation here, so it seems to be an OpenBSD library. I started looking for a Linux implementation, but I can't find anything. It appears the author(s) of Tmux wrote their own compatibility layer. This kind of surprises me, because imsg seems like it would be really useful. Does Linux have a similar C API for this, that I just don't know about?

Was it helpful?

Solution

A quick look at the build script shows the following three files:

So the tmux authors ship a copy of OpenBSD's imsg library, which is implemented entirely in user-space.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top