Allow changing configuration directory name
This commit is contained in:
parent
4a3fce6641
commit
797343e594
@ -0,0 +1,157 @@
|
||||
From a5c7a3e5118aac73ac2adef676d842392c41cff3 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Wed, 28 Jan 2015 13:21:10 +0100
|
||||
Subject: [PATCH] Replace configuration direcotory string with a marker
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This allows to redefine the configuration directory name at build
|
||||
time.
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
|
||||
diff --git a/Makefile.PL b/Makefile.PL
|
||||
index 04d94aa..61c87bf 100644
|
||||
--- a/Makefile.PL
|
||||
+++ b/Makefile.PL
|
||||
@@ -327,21 +327,21 @@ record-session :
|
||||
$(PERL) -Ilib -MCPAN -e '$$CPAN::Suppress_readline=$$CPAN::Echo_readline=1;shell' | tee ttt.out
|
||||
|
||||
run-with-sqlite :
|
||||
- $(PERL) -I$$HOME/.cpan -Ilib -MCPAN::SQLite -MCPAN::MyConfig -MCPAN -e '$$CPAN::Config->{use_sqlite}++; $$CPAN::Config->{sqlite_dbname}="cpandb-sqlite"; shell'
|
||||
+ $(PERL) -I$$HOME/.XCPANCONFIGNAMEX -Ilib -MCPAN::SQLite -MCPAN::MyConfig -MCPAN -e '$$CPAN::Config->{use_sqlite}++; $$CPAN::Config->{sqlite_dbname}="cpandb-sqlite"; shell'
|
||||
|
||||
testrun_very_offline : rm_mirrored_by run_emu_offline
|
||||
|
||||
testrun_emu_offline :
|
||||
- $(PERL) -I$$HOME/.cpan -Ilib -MCPAN::MyConfig -MCPAN -e '@CPAN::Defaultsites = qw(file:///dev/null); $$CPAN::Config->{urllist} = []; shell'
|
||||
+ $(PERL) -I$$HOME/.XCPANCONFIGNAMEX -Ilib -MCPAN::MyConfig -MCPAN -e '@CPAN::Defaultsites = qw(file:///dev/null); $$CPAN::Config->{urllist} = []; shell'
|
||||
|
||||
rm_mirrored_by :
|
||||
- rm -f $$HOME/.cpan/sources/MIRRORED.BY*
|
||||
+ rm -f $$HOME/.XCPANCONFIGNAMEX/sources/MIRRORED.BY*
|
||||
|
||||
testrun_http_only :
|
||||
- $(PERL) -I$$HOME/.cpan -Ilib -MCPAN::MyConfig -MCPAN -e '$$CPAN::Config->{urllist} = [qw(http://www.planet-elektronik.de/CPAN/)]; shell'
|
||||
+ $(PERL) -I$$HOME/.XCPANCONFIGNAMEX -Ilib -MCPAN::MyConfig -MCPAN -e '$$CPAN::Config->{urllist} = [qw(http://www.planet-elektronik.de/CPAN/)]; shell'
|
||||
|
||||
urllist :
|
||||
- $(PERL) -Ilib -MCPAN -MCPAN::FirstTime -e 'CPAN::FirstTime::init("$$ENV{HOME}/.cpan/CPAN/MyConfig", args => [qw(urllist)])'
|
||||
+ $(PERL) -Ilib -MCPAN -MCPAN::FirstTime -e 'CPAN::FirstTime::init("$$ENV{HOME}/.XCPANCONFIGNAMEX/CPAN/MyConfig", args => [qw(urllist)])'
|
||||
|
||||
runadmin :
|
||||
$(PERL) -Ilib -MCPAN::Admin -eshell
|
||||
diff --git a/README b/README
|
||||
index cadff53..7b1a3ae 100644
|
||||
--- a/README
|
||||
+++ b/README
|
||||
@@ -269,7 +269,7 @@ DESCRIPTION
|
||||
restarting the whole get/make/test/install procedure from scratch.
|
||||
|
||||
Lockfile
|
||||
- Interactive sessions maintain a lockfile, by default "~/.cpan/.lock".
|
||||
+ Interactive sessions maintain a lockfile, by default "~/.XCPANCONFIGNAMEX/.lock".
|
||||
Batch jobs can run without a lockfile and not disturb each other.
|
||||
|
||||
The shell offers to run in *downgraded mode* when another process is
|
||||
@@ -329,7 +329,7 @@ DESCRIPTION
|
||||
"install_tested".
|
||||
|
||||
mkmyconfig
|
||||
- mkmyconfig() writes your own CPAN::MyConfig file into your "~/.cpan/"
|
||||
+ mkmyconfig() writes your own CPAN::MyConfig file into your "~/.XCPANCONFIGNAMEX/"
|
||||
directory so that you can save your own preferences instead of the
|
||||
system-wide ones.
|
||||
|
||||
@@ -494,7 +494,7 @@ CONFIGURATION
|
||||
|
||||
Default values defined in the CPAN/Config.pm file can be overridden in a
|
||||
user specific file: CPAN/MyConfig.pm. Such a file is best placed in
|
||||
- "$HOME/.cpan/CPAN/MyConfig.pm", because "$HOME/.cpan" is added to the
|
||||
+ "$HOME/.XCPANCONFIGNAMEX/CPAN/MyConfig.pm", because "$HOME/.XCPANCONFIGNAMEX" is added to the
|
||||
search path of the CPAN module before the use() or require() statements.
|
||||
The mkmyconfig command writes this file for you.
|
||||
|
||||
@@ -1944,8 +1944,8 @@ FAQ
|
||||
|
||||
You may want to configure something like
|
||||
|
||||
- o conf make_arg "| tee -ai /root/.cpan/logs/make.out"
|
||||
- o conf make_install_arg "| tee -ai /root/.cpan/logs/make_install.out"
|
||||
+ o conf make_arg "| tee -ai /root/.XCPANCONFIGNAMEX/logs/make.out"
|
||||
+ o conf make_install_arg "| tee -ai /root/.XCPANCONFIGNAMEX/logs/make_install.out"
|
||||
|
||||
so that STDOUT is captured in a file for later inspection.
|
||||
|
||||
diff --git a/lib/CPAN.pm b/lib/CPAN.pm
|
||||
index 4ed4b6c..e30b9d7 100644
|
||||
--- a/lib/CPAN.pm
|
||||
+++ b/lib/CPAN.pm
|
||||
@@ -1680,7 +1680,7 @@ restarting the whole get/make/test/install procedure from scratch.
|
||||
|
||||
=item Lockfile
|
||||
|
||||
-Interactive sessions maintain a lockfile, by default C<~/.cpan/.lock>.
|
||||
+Interactive sessions maintain a lockfile, by default C<~/.XCPANCONFIGNAMEX/.lock>.
|
||||
Batch jobs can run without a lockfile and not disturb each other.
|
||||
|
||||
The shell offers to run in I<downgraded mode> when another process is
|
||||
@@ -1754,7 +1754,7 @@ C<install_tested>.
|
||||
|
||||
=head2 mkmyconfig
|
||||
|
||||
-mkmyconfig() writes your own CPAN::MyConfig file into your C<~/.cpan/>
|
||||
+mkmyconfig() writes your own CPAN::MyConfig file into your C<~/.XCPANCONFIGNAMEX/>
|
||||
directory so that you can save your own preferences instead of the
|
||||
system-wide ones.
|
||||
|
||||
@@ -1932,7 +1932,7 @@ in a file CPAN/Config.pm.
|
||||
|
||||
Default values defined in the CPAN/Config.pm file can be
|
||||
overridden in a user specific file: CPAN/MyConfig.pm. Such a file is
|
||||
-best placed in C<$HOME/.cpan/CPAN/MyConfig.pm>, because C<$HOME/.cpan> is
|
||||
+best placed in C<$HOME/.XCPANCONFIGNAMEX/CPAN/MyConfig.pm>, because C<$HOME/.XCPANCONFIGNAMEX> is
|
||||
added to the search path of the CPAN module before the use() or
|
||||
require() statements. The mkmyconfig command writes this file for you.
|
||||
|
||||
@@ -3608,8 +3608,8 @@ there is too much output to keep track of.
|
||||
|
||||
You may want to configure something like
|
||||
|
||||
- o conf make_arg "| tee -ai /root/.cpan/logs/make.out"
|
||||
- o conf make_install_arg "| tee -ai /root/.cpan/logs/make_install.out"
|
||||
+ o conf make_arg "| tee -ai /root/.XCPANCONFIGNAMEX/logs/make.out"
|
||||
+ o conf make_install_arg "| tee -ai /root/.XCPANCONFIGNAMEX/logs/make_install.out"
|
||||
|
||||
so that STDOUT is captured in a file for later inspection.
|
||||
|
||||
diff --git a/lib/CPAN/HandleConfig.pm b/lib/CPAN/HandleConfig.pm
|
||||
index f114321..a6e596b 100644
|
||||
--- a/lib/CPAN/HandleConfig.pm
|
||||
+++ b/lib/CPAN/HandleConfig.pm
|
||||
@@ -536,7 +536,7 @@ sub cpan_home_dir_candidates {
|
||||
push @dirs, $ENV{USERPROFILE} if $ENV{USERPROFILE};
|
||||
|
||||
$CPAN::Config->{load_module_verbosity} = $old_v;
|
||||
- my $dotcpan = $^O eq 'VMS' ? '_cpan' : '.cpan';
|
||||
+ my $dotcpan = $^O eq 'VMS' ? '_XCPANCONFIGNAMEX' : '.XCPANCONFIGNAMEX';
|
||||
@dirs = map { File::Spec->catdir($_, $dotcpan) } grep { defined } @dirs;
|
||||
return wantarray ? @dirs : $dirs[0];
|
||||
}
|
||||
diff --git a/scripts/cpan-mirrors b/scripts/cpan-mirrors
|
||||
index 3c8678b..7a0e756 100755
|
||||
--- a/scripts/cpan-mirrors
|
||||
+++ b/scripts/cpan-mirrors
|
||||
@@ -6,7 +6,7 @@ use warnings;
|
||||
use CPAN::Mirrors;
|
||||
use Data::Dumper;
|
||||
|
||||
-my $mirrored_by_file = '/Users/brian/.cpan/sources/MIRRORED.BY';
|
||||
+my $mirrored_by_file = '/Users/brian/.XCPANCONFIGNAMEX/sources/MIRRORED.BY';
|
||||
my $mirrors = CPAN::Mirrors->new( $mirrored_by_file );
|
||||
|
||||
my $seen = {};
|
||||
--
|
||||
1.9.3
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Name: perl-CPAN
|
||||
Version: 2.05
|
||||
Release: 308%{?dist}
|
||||
Release: 309%{?dist}
|
||||
Summary: Query, download and build perl modules from CPAN sites
|
||||
License: GPL+ or Artistic
|
||||
Group: Development/Libraries
|
||||
@ -8,6 +8,8 @@ URL: http://search.cpan.org/dist/CPAN/
|
||||
Source0: http://www.cpan.org/authors/id/A/AN/ANDK/CPAN-%{version}.tar.gz
|
||||
# Create site paths for the first time, bug #1158873, CPAN RT#99905
|
||||
Patch0: CPAN-2.05-Attemp-to-create-site-library-directories-on-first-t.patch
|
||||
# Change configuration directory name
|
||||
Patch1: CPAN-2.05-Replace-configuration-direcotory-string-with-a-marke.patch
|
||||
BuildArch: noarch
|
||||
BuildRequires: perl
|
||||
BuildRequires: perl(Config)
|
||||
@ -171,6 +173,9 @@ external download clients to fetch distributions from the net.
|
||||
%prep
|
||||
%setup -q -n CPAN-%{version}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
# Change configuration name
|
||||
find -type f -exec sed -i -e 's/XCPANCONFIGNAMEX/cpan/g' {} \;
|
||||
# Remove bundled modules
|
||||
rm -r ./inc/*
|
||||
sed -i -e '/inc\//d' MANIFEST
|
||||
@ -195,6 +200,9 @@ make test
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Wed Jan 28 2015 Petr Pisar <ppisar@redhat.com> - 2.05-309
|
||||
- Allow changing the configuration directory name
|
||||
|
||||
* Thu Oct 30 2014 Petr Pisar <ppisar@redhat.com> - 2.05-308
|
||||
- Create site paths for the first time (bug #1158873)
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user