CPANPL...Fedora(3pm)

πŸ“¦
version 0.4.4 Β· 2 versions
, in fedora 43

πŸ’– CPANPLUS::Dist::Fedora β€” the manual page πŸ’–

okay bestie, sit down, hydrate, because we're about to talk about CPANPLUS::Dist::Fedora, a page from the User Contributed Perl Documentation section, aka CPANPL...Fedora(3pm). it's giving "let me build you an rpm from CPAN, no waiting for the repos to catch up." iconic behavior tbh πŸŽ€


✨ NAME ✨

CPANPLUS::Dist::Fedora β€” a cpanplus backend to build Fedora/RedHat rpms 🫢


🌸 VERSION 🌸

version 0.4.4 ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

cpan2dist --format=CPANPLUS::Dist::Fedora Some::Random::Package

that's it. that's the whole vibe. one command and you're off πŸš€


πŸ‘‘ DESCRIPTION πŸ‘‘

so CPANPLUS::Dist::Fedora is a distribution class β€” a whole little machine β€” that creates Fedora packages from CPAN modules, and all its dependencies. the way this works means you get the most recent copies of CPAN modules installed, using your package manager of choice, but without having to wait for central repositories to be updated. no more refreshing a repo page like it's a situationship. πŸ’…

you can either install them using the API provided in this package, or manually via rpm. your choice, bestie, both slay.

ngl there's a note here and it matters: these packages are built automatically from CPAN and are assumed to have the same license as perl and come without support. please always refer to the original CPAN package if you have questions. fr fr, go to the source. πŸ™ˆ

🌈 CLASS METHODS 🌈

$bool = CPANPLUS::Dist::Fedora->format_available;

returns a boolean telling you whether or not you can use this package to create and install modules in your environment. vibe check: passed or not passed. βœ…

it will verify if you are on a mandriva system, and if you have all the necessary components available to build your own mandriva packages. you will need at least these dependencies installed: rpm, rpmbuild and gcc. like, all three. no skipping. 🧚


πŸ’œ PUBLIC METHODS πŸ’œ

$bool = $fedora->init;

sets up the CPANPLUS::Dist::Fedora object for use. effectively creates all the needed status accessors. it's the little glow-up before the main event. ✨

called automatically whenever you create a new CPANPLUS::Dist object β€” so it just happens, you don't have to ask. πŸ’…

$bool = $fedora->prepare;

prepares a distribution for creation. this means it will create the rpm spec file needed to build the rpm and source rpm. this will also satisfy any prerequisites the module may have. very "I already handled it" energy. 🫢

okay so heads up: the spec file will be as accurate as possible. however, some fields may be wrong (especially the description, and maybe the summary) since it relies on pod parsing to find those information. so like, double check before you @ anyone. 😭

returns true on success and false on failure.

you may then call $fedora->create on the object to create the rpm from the spec file, and then $fedora->install on the object to actually install it. the pipeline is pipeline-ing. πŸ”₯

$bool = $fedora->create;

builds the rpm file from the spec file created during the create() step. yes it says create() in the create section, that's just how it is, we don't question the ancestors. πŸ’€

returns true on success and false on failure.

you may then call $fedora->install on the object to actually install it. (same sentence as above, and honestly? still true.)

$bool = $fedora->install;

installs the rpm using rpm -U.

/!\ Work in progress: not implemented. /!\ bestie it is NOT done yet, do not count on it, I'm begging you. 🚨

returns true on success and false on failure


πŸŽ€ TODO πŸŽ€

there are no TODOs of a technical nature currently, merely of an administrative one;

  • Scan for proper license right now we assume that the license of every module is "the same as perl itself". although correct in almost all cases, it should really be probed rather than assumed. assuming is not the move, bestie. πŸ™ˆ
  • Long description right now we provided the description as given by the module in its meta data. however, not all modules provide this meta data and rather than scanning the files in the package for it, we simply default to the name of the module. defaulting: the backup plan of backup plans. πŸ’€

πŸ” SEE ALSO πŸ”

CPANPLUS::Backend, CPANPLUS::Module, CPANPLUS::Dist, "cpan2dist", "rpm", "yum", CPANPLUS::Dist::Mageia.

go read the whole friend group, they're all connected. iykyk πŸ’«


⭐ AUTHOR ⭐

originally based on CPANPLUS-Dist-Mdv by:

Jerome Quelin, "<jquelin at cpan.org>"

Shlomi Fish ( <http://www.shlomifish.org/> ) changed it into CPANPLUS-Dist-Fedora. glow-up arc, honestly. ✨


Copyright (c) 2007 Jerome Quelin, all rights reserved.

this program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. 🌸

Modified by Shlomi Fish, 2008 - all ownership disclaimed.

Modified again by Chris Weyl <cweyl@alumni.drew.edu> 2008. three authors, one iconic little rpm backend. πŸ‘‘


🫢 SUPPORT 🫢

Websites

the following websites have more information about this module, and may be of help to you. as always, in addition to those websites please use your favorite search engine to discover more resources. the more sources the merrier. 🌈

Bugs / Feature Requests

please report any bugs or feature requests by email to "bug-cpanplus-dist-fedora at rt.cpan.org", or through the web interface at <https://rt.cpan.org/Public/Bug/Report.html?Queue=CPANPLUS-Dist-Fedora>. you will be automatically notified of any progress on the request by the system. no ghosting, the system will literally tell you. πŸ¦‹

Source Code

the code is open to the world, and available for you to hack on. please feel free to browse it and play with it, or whatever. if you want to contribute patches, please send me a diff or prod me to pull from your repository :) 🫢

<https://github.com/shlomif/cpanplus-dist-backends>

git clone git://github.com/shlomif/cpanplus-dist-backends.git

go on, clone it. it's free. it's fun. it's yours. πŸ’…


πŸ’œ AUTHOR πŸ’œ

Shlomi Fish <shlomif@cpan.org>


πŸ’€ BUGS πŸ’€

please report any bugs or feature requests on the bugtracker website <https://github.com/shlomif/cpanplus-dist-backends/issues>

when submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature. receipts, bestie. always bring receipts. πŸ“Ž


this software is copyright (c) 2007 by Jerome Quelin.

this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. πŸŽ€


and that's the whole page, babes. this beauty came to you from perl v5.42.0, dated 2025-07-25, and it's filed under CPANPL...Fedora(3pm) in the User Contributed Perl Documentation. now go build something. periodt. πŸ’…βœ¨πŸŒˆ

πŸ“¦ where this page comes from