]> git.vpit.fr Git - perl/modules/CPANPLUS-Dist-Gentoo.git/blob - README
This is 0.09
[perl/modules/CPANPLUS-Dist-Gentoo.git] / README
1 NAME
2     CPANPLUS::Dist::Gentoo - CPANPLUS backend generating Gentoo ebuilds.
3
4 VERSION
5     Version 0.09
6
7 SYNOPSIS
8         cpan2dist --format=CPANPLUS::Dist::Gentoo \
9                   --dist-opts overlay=/usr/local/portage \
10                   --dist-opts distdir=/usr/portage/distfiles \
11                   --dist-opts manifest=yes \
12                   --dist-opts keywords=x86 \
13                   --dist-opts header="# Copyright 1999-2008 Gentoo Foundation" \
14                   --dist-opts footer="# End" \
15                   Any::Module You::Like
16
17 DESCRPITON
18     This module is a CPANPLUS backend that recursively generates Gentoo
19     ebuilds for a given package in the specified overlay (defaults to
20     /usr/local/portage), updates the manifest, and even emerges it (together
21     with its dependencies) if the user requires it. You need write
22     permissions on the directory where Gentoo fetches its source files
23     (usually /usr/portage/distfiles). The valid "KEYWORDS" for the generated
24     ebuilds are by default those given in "ACCEPT_KEYWORDS", but you can
25     specify your own with the "keywords" dist-option.
26
27     The generated ebuilds are placed into the "perl-gcpanp" category. They
28     favour depending on a "virtual", on "perl-core", "dev-perl" or
29     "perl-gcpan" (in that order) rather than "perl-gcpanp".
30
31 INSTALLATION
32     Before installing this module, you should append "perl-gcpanp" to your
33     /etc/portage/categories file.
34
35     You have two ways for installing this module :
36
37     *   Use the perl overlay located at
38         <http://git.overlays.gentoo.org/gitweb/?p=proj/perl-overlay.git>. It
39         contains an ebuild for CPANPLUS::Dist::Gentoo.
40
41     *   Bootstrap an ebuild for CPANPLUS::Dist::Gentoo using itself. Note
42         that if your Gentoo system "perl" is "5.8.x", CPANPLUS and its
43         dependencies are not installed and not even available in the main
44         portage tree. So you need to bootstrap them as well.
45
46         First, fetch tarballs for CPANPLUS and CPANPLUS::Dist::Gentoo :
47
48             $ cd /tmp
49             $ wget http://search.cpan.org/CPAN/authors/id/K/KA/KANE/CPANPLUS-0.88.tar.gz
50             $ wget http://search.cpan.org/CPAN/authors/id/V/VP/VPIT/CPANPLUS-Dist-Gentoo-0.09.tar.gz
51
52         Log in as root and unpack them in e.g. your home directory :
53
54             # cd
55             # tar xzf /tmp/CPANPLUS-0.88.tar.gz
56             # tar xzf /tmp/CPANPLUS-Dist-Gentoo-0.09.tar.gz
57
58         Set up environment variables so that the toolchain is temporarily
59         available :
60
61             # export OLDPATH=$PATH
62             # export PATH=/root/CPANPLUS-0.88/bin:$PATH
63             # export PERL5LIB=/root/CPANPLUS-Dist-Gentoo-0.09/blib/lib:/root/CPANPLUS-0.88/lib:/root/CPANPLUS-0.88/inc/bundle
64
65         Make sure you don't have an old ".cpanplus" configuration visible :
66
67             # [ -d /root/.cpanplus ] && mv /root/.cpanplus{,.bak}
68
69         Bootstrap CPANPLUS :
70
71             # cd /root/CPANPLUS-Dist-Gentoo-0.09
72             # samples/g-cpanp CPANPLUS
73
74         Reset the environment :
75
76             # export PATH=$OLDPATH
77             # unset PERL5LIB OLDPATH
78
79         Emerge CPANPLUS with the ebuilds you've just generated :
80
81             # emerge -tv CPANPLUS
82
83         As of september 2009, "podlators" and "ExtUtils-MakeMaker" may fail
84         to emerge due to collisions. You can work around this by disabling
85         the "protect-owned" "FEATURE" for them :
86
87             # FEATURES="-protect-owned" emerge podlators
88             # FEATURES="-protect-owned" emerge ExtUtils-MakeMaker
89
90         You may need to run each of these commands two times for them to
91         succeed.
92
93         At this point, you can bootstrap CPANPLUS::Dist::Gentoo using the
94         system CPANPLUS :
95
96             # PERL5LIB=/root/CPANPLUS-Dist-Gentoo-0.09/blib/lib samples/g-cpanp CPANPLUS::Dist::Gentoo
97             # emerge -tv CPANPLUS-Dist-Gentoo
98
99 METHODS
100     This module inherits all the methods from CPANPLUS::Dist::Base. Please
101     refer to its documentation for precise information on what's done at
102     each step.
103
104   "intuit_license"
105     Returns an array reference to a list of Gentoo licences identifiers
106     under which the current distribution is released.
107
108   "update_manifest"
109     Updates the Manifest file for the ebuild associated to the current dist
110     object.
111
112   "ebuild_source"
113     Returns the source of the ebuild for the current dist object, or "undef"
114     when one of the dependencies couldn't be mapped to an existing ebuild.
115
116 DEPENDENCIES
117     Gentoo (<http://gentoo.org>).
118
119     CPANPLUS, IPC::Cmd (core modules since 5.9.5), Parse::CPAN::Meta (since
120     5.10.1).
121
122     Cwd, Carp (since perl 5), File::Path (5.001), File::Copy (5.002),
123     File::Spec (5.00405), List::Util (5.007003).
124
125 SEE ALSO
126     cpan2dist.
127
128     CPANPLUS::Dist::Base, CPANPLUS::Dist::Deb, CPANPLUS::Dist::Mdv.
129
130 AUTHOR
131     Vincent Pit, "<perl at profvince.com>", <http://www.profvince.com>.
132
133     You can contact me by mail or on "irc.perl.org" (vincent).
134
135 BUGS
136     Please report any bugs or feature requests to "bug-cpanplus-dist-gentoo
137     at rt.cpan.org", or through the web interface at
138     <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=CPANPLUS-Dist-Gentoo>. I
139     will be notified, and then you'll automatically be notified of progress
140     on your bug as I make changes.
141
142 SUPPORT
143     You can find documentation for this module with the perldoc command.
144
145         perldoc CPANPLUS::Dist::Gentoo
146
147 ACKNOWLEDGEMENTS
148     The module was inspired by CPANPLUS::Dist::Deb and CPANPLUS::Dist::Mdv.
149
150     Kent Fredric, for testing and suggesting improvements.
151
152 COPYRIGHT & LICENSE
153     Copyright 2008-2009 Vincent Pit, all rights reserved.
154
155     This program is free software; you can redistribute it and/or modify it
156     under the same terms as Perl itself.
157