On Sun, Feb 20, 2022 at 9:46 PM Samuel Sieb <samuel@sieb.net> wrote:
On 2/20/22 07:38, Fulko Hew wrote:
> I just found my first example of the issue...
>
> I need DateTime:Event:Sunrise and there isn't a Fedora package for it.

Careful, there are double colons needed in the name.


Sorry, that was my Perl dyslexia kicking in.  Where my brain always
gets it wrong between the module names that use a single hyphen versus
the file hierarchy that uses a single slash, and the class path that uses
double colons.
I actually did use double colons when I tried the command, but my fingers
broke down while typing my email.


There's a very
handy package called "cpanspec" which helps you package cpan packages
into rpms.

In this case, when I first tried it, it gave a list of required packages
which were all available in Fedora.

dnf install 'perl(DateTime::Set)' 'perl(DateTime::Span)'
'perl(DateTime::SpanSet)' 'perl(ExtUtils::MakeMaker)'
'perl(Set::Infinite)' 'perl(Test::Exception)' 'perl(Test::More)'

Then I could run (as a user):
cpanspec --build --packager me DateTime::Event::Sunrise

This generated an installable rpm.

Thanks for pointing out that app, but I fail to see how having me make an RPM for a
Fedora-unsupported module avoids the problem of incompatibilities between newer
Fedora sources packages and locally sourced packages (or locally CPAN installed modules)
Or am I missing something?