Bug 2338799 - Install Perl core modules by default
Summary: Install Perl core modules by default
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: LiveCD - KDE
Version: 41
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Sebastian Vahl
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-01-19 04:29 UTC by David Levner
Modified: 2025-01-20 18:31 UTC (History)
14 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:
mspacek: needinfo-


Attachments (Terms of Use)
List of core Perl modules missing after installing Fedora 41 (2.32 KB, text/plain)
2025-01-19 04:29 UTC, David Levner
no flags Details

Description David Levner 2025-01-19 04:29:59 UTC
Created attachment 2066675 [details]
List of core Perl modules missing after installing Fedora 41

Description of problem:

When I did a fresh install of Fedora 41 on a new computer, many core Perl modules and programs were not installed. I have a fairly complete list of modules that I generated with a Perl script (see attachment). I don't have a complete list of Perl core programs, but I do know that perl5db.pl is missing. You can't run the Perl debugger without perl5db.pl.

Version-Release number of selected component (if applicable):

Perl v 5.40.0

How reproducible:

I only did a fresh install of Fedora 41 once. The problem occurred. I don't have the resources to reproduce the problem on other computers.

Steps to Reproduce:
1. Create a fresh installation of Fedora 41.
2. Search the following directories for the modules listed in the attachment:

  /usr/local/lib64/perl5/5.40
  /usr/local/share/perl5/5.40
  /usr/lib64/perl5/vendor_perl
  /usr/share/perl5/vendor_perl
  /usr/lib64/perl5
  /usr/share/perl5

For perl5db.pl, type "which perl5db.pl" or look in all the directories in your execution path for a file of this name.

Actual results:
perl5db.pl and the modules are not found.

Expected results:
perl5db.pl and all the modules are found.

Additional info:
For a discussion of what constitutes a core Perl module, see https://www.perl.com/article/what-is-the-perl-core-/. This article confirms that Fedora has a long-standing problem of omitting core Perl modules.

Comment 1 Emmanuel Seyman 2025-01-19 09:36:55 UTC
(In reply to David Levner from comment #0)
>
> When I did a fresh install of Fedora 41 on a new computer, many core Perl
> modules and programs were not installed.

Nothing in the default install of Fedora (I presume this is Workstation) requires Perl so perl is not installed (I don't believe you get /usr/bin/perl anymore).

> I have a fairly complete list of
> modules that I generated with a Perl script (see attachment). I don't have a
> complete list of Perl core programs, but I do know that perl5db.pl is
> missing.

To install perl-core, run the command 'dnf install perl'.
To install a specific Perl module, run the command 'dnf install "perl(The::Wanted::Module)"'.
To install a specific file, run the command 'dnf install /path/to/the/file'.

These are pretty much your only options.

Comment 2 Dan Book 2025-01-19 10:05:16 UTC
Note that if the perl binary is present in an installed system, it is there as a dependency and only the modules that are depended on by the system will be included. If you want to use the perl binary for any other purpose than the installed system required it for, you should `dnf install perl`, which will install the full Perl core.

Further, if you want to install CPAN modules outside of those packaged in RPM for your system, I would recommend to either install them in a local::lib in your home directory (you can install perl-homedir to set this up automatically for all users), or install your own perl using perl-build or perlbrew or plenv. The risk of manually installing CPAN modules is that these will install to sitelib, which is preferred over vendorlib, and you may install a version of a module which is not compatible with an RPM-installed version in vendorlib expected by a system function.

Comment 3 David Levner 2025-01-19 14:01:46 UTC
Thank you. Perl was installed (sort of) with Fedora 41 (KDE spin), probably as a dependency. It's a useful language; that's why someone, at some point, wrote Perl scripts that have been incorporated into Fedora. I think Fedora would be improved by including a complete version of Perl by default instead of just the pieces that are absolutely necessary for the scripts that Fedora uses. But that is not my decision. I can get what I need so I'll be OK even if no action is taken.

I was surprised that Perl was not officially installed on my system. Doing 'sudo dnf install perl' provided almost all the core modules. Here are the ones that are still missing:

Amiga::ARexx
Amiga::Exec
ExtUtils::MakeMaker::Locale
ExtUtils::MakeMaker::version
ExtUtils::MakeMaker::version::regex
ExtUtils::PL2Bat
ExtUtils::XSSymSet
File::Spec::VMS
OS2::DLL
OS2::ExtAttr
OS2::PrfDB
OS2::Process
OS2::REXX
Sys::Syslog::Win32
VMS::DCLsym
VMS::Filespec
VMS::Stdio
Win32
Win32CORE
XS::APItest
XS::Typemap

I don't use any of these. Probably no one will miss the Amiga, OS2 and VMS modules. I could make a weak case for the Win32 modules. I am not familiar with the ExtUtils and XS modules so I can't comment on them.

Comment 4 Dan Book 2025-01-19 21:39:22 UTC
It is normal for several modules not to be installed depending on the platform, you will not get these with a source or perl-build install either. Win32 modules are only installed on windows platforms, Amiga on Amiga platforms, etc. XS::Typemap and XS::APItest are for testing the Perl installation and do not get installed. The ExtUtils modules are largely bundled versions of other modules for ExtUtils::MakeMaker which are unnecessary once Perl is installed.

Comment 5 Michal Josef Spacek 2025-01-20 08:57:53 UTC
@davidlevner FYI: There is perl-interpreter package with the main Perl interpreter, without development packages which are in perl package.

Comment 6 Petr Pisar 2025-01-20 11:11:39 UTC
(In reply to David Levner from comment #3)
> I think Fedora would be improved by including a complete version of Perl by default

Do you mean being installed by default, or being available in Fedora repositories for installing later?

I believe the first is highly subjective. There are people who say quite the opposite, or who prefer a different language.

When installing Fedora, you can select a "Development" package group which involves "perl" package which installs all relevant parts of upstream perl.

If you really think Perl is for Fedora so important that it should be installed by default for all, then you can move this bug report to "comps" component which maintains groups of packages being installed by Fedora installer and persuade their maintainer that it would be a good change.

Comment 7 David Levner 2025-01-20 15:01:07 UTC
I understand that the choice of a computer language is subjective. Many people prefer Python, Java, Javascript, C, C++, and the list goes on. I have no problem with that. (As far as I can tell, Python is installed by default. I see it on my systems and I never explicitly installed it.)

It's not that Perl is so important. Fedora already installs a lot of Perl modules by default because it's useful to Fedora. I have used Perl with Fedora for over ten years and I didn't know that I needed to explicitly install it. (Previous releases of Fedora probably installed more Perl modules and I didn't notice that anything was missing.) Installing Perl and perhaps some other languages by default would make Fedora more software developer-friendly. Or maybe Fedora could ask during a fresh install how Fedora is going to be used and suggest additional packages to install. Or Fedora could incorporate a little AI and, based on what the users are doing with a system, suggest additional packages.

I would like to take Petr's suggestion and move this "bug" to the comps component so that the maintainers see it and make an informed decision. I can live with "no" as their answer. However, I am not sure where to move the bug. Is "comps-extra" the right component?

Comment 8 Petr Pisar 2025-01-20 15:16:27 UTC
It seems the "comps" component was removed from this Bugzilla server. The new bug tracker for it as at <https://pagure.io/fedora-comps/issues>.

I will move this bug report to "distribution".

Comment 9 Kevin Fenzi 2025-01-20 18:31:48 UTC
since you talk about the kde media, thats up to the kde sig. moving to their component, or you could file somethin new at https://pagure.io/fedora-kde/SIG/issues


Note You need to log in before you can comment on or make changes to this bug.