From cab0ca49230676cdf89a4eef59f6f75454a6c1f1 Mon Sep 17 00:00:00 2001 From: Marc van der Wal Date: Mon, 6 Nov 2023 09:15:27 +0100 Subject: [PATCH] Install Mail::SPF manually in Github Actions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit There is a long-standing packaging issue with Mail::SPF that prevents cpanm from automatically installing it with non-root privileges. [1] It also seems that upstream is unwilling to patch the problem. Yet this package is very useful for checking SPF syntax. One does not simply reimplement the same thing by oneself. So what are our options? Fork it? Copy the code and maintain it in a Zonemaster::Engine::SPF namespace or similar? Or work around the bug? Fortunately, the Perl library in question is easy to find in distribution package repositories. It’s packaged by Debian, Ubuntu, Alpine Linux, FreeBSD and Red Hat based OSes at least. However, in Github Actions, all Perl modules are installed from CPAN. After discussion, this is too far away from the documented installation instructions and should be changed in some other pull request, in order to favor OS-supplied packages instead when possible. That’s why this commit installs Mail::SPF from packages. [1]: https://rt.cpan.org/Public/Bug/Display.html?id=34768 --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b1e93bd0c..e117ab993 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -49,6 +49,7 @@ jobs: gettext \ libidn2-dev \ liblog-any-perl \ + libmail-spf-perl \ libssl-dev \ libtool \ m4 \