Bug#587991: perl-policy: /etc/perl missing from Module Path
Ansgar Burchardt <ansgar@2008.43-1.org> writes:
> perl/5.8.0-7 added /etc/perl to @INC:
> * Prepend /etc/perl to @INC to provide a standard location for
> configuration modules:
> But this addition has never been documented in the Debian Perl Policy.
> I suggest to add /etc/perl to the list of location in the "Module Path"
> section.
> A simple patch doing so is attached below, but it might be a good idea
> to document what "configuration modules" are and what the "etc" tag
> means (only "core", "vendor" and "site" are explained above, but none of
> those matches the use of /etc/perl).
Here's an expanded patch that documents what I believe to be the intended
purpose of adding that to the module search path. I've copied debian-perl
for their review as well.
Objections or seconds?
diff --git a/perl-policy.sgml b/perl-policy.sgml
index 3b76b94..bca38f4 100644
--- a/perl-policy.sgml
+++ b/perl-policy.sgml
@@ -128,17 +128,27 @@
<sect id="paths">
<heading>Module Path</heading>
<p>
- Perl searches three different locations for modules, referred
- to in this document as <var>core</var> in which modules
- distributed with Perl are installed, <var>vendor</var> for
- packaged modules and <var>site</var> for modules installed by
- the local administrator.
+ Perl searches four different locations for modules, referred to
+ in this document as <var>etc</var> for system configuration
+ modules, <var>core</var> in which modules distributed with Perl
+ are installed, <var>vendor</var> for packaged modules,
+ and <var>site</var> for modules installed by the local
+ administrator.
</p>
<p>
The module search path (<tt>@INC</tt>) in the Debian packages
has been ordered to include these locations in the following
order:
<taglist>
+ <tag><var>etc</var></tag>
+ <item>
+ <p>
+ Configuration modules (see <ref id="config_modules">).
+ <example>
+/etc/perl
+ </example>
+ </p>
+ </item>
<tag><var>site</var> (current)</tag>
<item>
<p>
@@ -393,6 +403,23 @@ $(MAKE) install DESTDIR=$(CURDIR)/debian/<tmp>
</p>
</sect1>
</sect>
+
+ <sect id="config_modules">
+ <heading>Configuration Modules</heading>
+ <p>
+ Some Perl packages load system-wide configuration from a
+ dedicated Perl module whose purpose is solely to contain
+ configuration settings. The module often contains only variable
+ settings. Such modules should be treated as configuration files
+ and installed under <file>/etc/perl</file>.
+ </p>
+
+ <p>
+ This applies only to Perl modules whose complete contents is
+ configuration information, cases where the module file itself is
+ a configuration file.
+ </p>
+ </sect>
</chapt>
<chapt id="programs">
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: