perl-mail-spf package installs, but does not run.

  • Open
  • quality assurance status badge
Details
2 participants
  • Eduard Budulea
  • Tobias Geerinckx-Rice
Owner
unassigned
Submitted by
Eduard Budulea
Severity
normal
E
E
Eduard Budulea wrote on 22 Jun 2022 14:12
(address . bug-guix@gnu.org)
c5ea6353-0b51-97b4-95ce-64ffa18ff489@yahoo.com
Hello all,

I am trying to have a guix system that has exim with spf validation
(sadly the exim that is packaged with guix has spf disable) and I am
trying to run the external tool spfquery.

spfquery binary is in the perl-mail-spf package.

The package builds and deploys.

But when when I try to run it, I get:

Can't locate Error.pm in @INC (you may need to install the Error module)
(@INC contains:
/gnu/store/hy6abswwv4d89zp464fw52z65fkzr7h5-perl-5.34.0/lib/perl5/site_perl/5.34.0/x86_64-linux-thread-multi
/gnu/store/hy6abswwv4d89zp464fw52z65fkzr7h5-perl-5.34.0/lib/perl5/site_perl/5.34.0
/gnu/store/hy6abswwv4d89zp464fw52z65fkzr7h5-perl-5.34.0/lib/perl5/5.34.0/x86_64-linux-thread-multi
/gnu/store/hy6abswwv4d89zp464fw52z65fkzr7h5-perl-5.34.0/lib/perl5/5.34.0)
at /run/current-system/profile/bin/spfquery line 335.

BEGIN failed--compilation aborted at
/run/current-system/profile/bin/spfquery line 335.

If I add all its dependencies to packages and populate the PERL5LIB
environment variable with the paths to the needed libraries from
/gnu/store then it works.

So it is basically a packaging problem.

I have tried to move the dependencies from input to input-propagated,
but got the same result.


Any ideas?

Thanks.
T
T
Tobias Geerinckx-Rice wrote on 23 Jun 2022 14:24
(name . Eduard Budulea)(address . e_timotei@yahoo.com)
878rpnh87u@nckx
Hi Eduard!

Eduard Budulea via Bug reports for GNU Guix ???
Toggle quote (4 lines)
> I have tried to move the dependencies from input to
> input-propagated,
> but got the same result.

Even if that did work, installing perl-mail-spf would then also
install these other perl-* packages — no better than a traditional
distro. Avoid propagation wherever possible.

Instead, you should ‘wrap’ the spfquery executable so that
PERL5LIB is correctly set when it's invoked, without polluting the
user's profile.

Look at the ‘dirvish’ package for an arbitrary but seemingly sane
example.

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCYrRdJQ0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW150A0BAIRZxZ4djh6HJF7zKRp5JhqrJ4QviuqszblpNlad
3rJSAPwMHL4A21HZI3LDxr4en1fB9V6TZZLirUBlYa+mgKM0CA==
=XLqx
-----END PGP SIGNATURE-----

?