On Fri, May 21, 2021 at 10:27:08PM +0000, brian m. carlson wrote: > > I agree with this, but just following up with a bit of a devil's > > advocate: why not put osxkeychain into a regular "make install", but > > make it conditional via a Makefile knob, like we do for other > > platform-specific features? > > Sure, let's do it. > > For osxkeychain, it's probably pretty simple to always build it, since > macOS will always have the appropriate libraries if the compiler is > installed. Hmm. So I tried just building oxskeychain in our CI via contrib, and it fails. :( It looks like it's OK with clang, but not gcc: https://github.com/peff/git/runs/2647748209?check_suite_focus=true Maybe nobody cares about gcc for this use, but I'm inclined to leave it to somebody who actually runs macOS to poke at further. > I would be in favor of also building by default on Linux and > having a Makefile knob to disable that, since the requisite libraries are > a part of nearly every distribution and doing so will spur distros to > ship it, which many do not. I assume you mean contrib/credential/libsecret here. I'd worry that flipping it on by default is annoying for people who build from source. I don't have dev libraries for things like libsecret or glib on my development system[1], and I'd be surprised if most server-oriented machines have even the non-dev versions. Which isn't an argument against making it easier to build them from the main Makefile, but it seems like having them on by default (with a NO_LIBSECRET) would cause more surprises than the other way around (USE_LIBSECRET or similar). I suspect that just opening a bug report against distro packages might get some traction (especially if it comes with a patch to create the extra package). I do wonder if packagers are hesitant to reach into contrib/, not knowing how well maintained the contents are (to be honest, I am not confident in how well maintained they are, either; it might be helpful if somebody who routinely used each helper stepped up to say that they would maintain it). -Peff [1] I was actually surprised I had libsecret installed at all. Apparently pinentry-gtk2 links against it, which I have for use with gpg. But my system might not be considered typical anyway, as I don't use any kind of "desktop environment".