Some people, when faced with a problem, think “I’ll do this the way that only works on Linux”. Now I have two problems.
My friend is experiencing this problem right now. He is trying to use a C library in Haskell on FreeBSD, so already off the beaten path, but he ran into a problem such that there was a bug in the version of the library he was using and the fix hadn’t been released yet. In trying the fix he discovered the person that has fixed it has used linux specific headers in the fix so he had to spend some time figuring out how to fix it.
I am running into similar problems with Nix. I want Nix on FreeBSD but the Nix source code uses a lot of linuxisms so it’s just fixing one compiler error after the next, it’s very frustrating.
I had an idea for some CI tool that runs your code across many may systems, because I think it’s not that people are willingly doing things just for Linux, they just don’t know their code doesn’t work (I think most people think Linux == unix). Unfortunately it’s something that would take some money and love to run, both of which I am lacking.
I would love Nix on FreeBSD.
Are you doing this work in public or somewhere where I could take a peek?