cookbook cleanup, small fix in MANIFEST.SKIP
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Manual / Installation / CentOS4.pod
CommitLineData
4d583dd8 1=head1 NAME
2
64ccd8a8 3Catalyst::Manual::Installation::CentOS4 - Catalyst Installation on CentOS 4
4d583dd8 4
5
6
7=head1 DESCRIPTION
8
64ccd8a8 9This document provides directions on how to install CentOS 4 (a rebuild
10of RedHat Enterprise 4) and then install Catalyst.
4d583dd8 11
64ccd8a8 12If you already have a functioning install of CentOS, RHEL, or a
13comparable Linux OS, you should be able to skip this first section and
14go straight to the C<INSTALL CATALYST> section.
4d583dd8 15
d645910d 16B<NOTE:> You might want to consult the latest version of this document. It
17is available at:
18L<http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Installation/CentOS4.pod>
19
20
4d583dd8 21
22=head1 INSTALL CENTOS
23
64ccd8a8 24These directions are written for CentOS 4.3 on an i386 machine; however,
25you can substitute other versions as they become available.
4d583dd8 26
27
28=over 4
29
30=item *
31
64ccd8a8 32Go to L<http://isoredirect.centos.org/centos/4/isos/i386/> and click the
33nearest mirror.
4d583dd8 34
35=item *
36
37Download C<CentOS-4.3-i386-bin1of4.iso> (you only need the first disk).
38
39=item *
40
41Burn the .iso to CD.
42
43=item *
44
45Insert the CD into your machine and power it up.
46
47=item *
48
49Hit C<Enter> at the C<boot:> prompt.
50
51=item *
52
64ccd8a8 53CD media test: you can either select C<OK> or C<Skip> depending on
54whether or not you trust your burn.
4d583dd8 55
56=item *
57
64ccd8a8 58The installation GUI should start. Click next at the "Welcome to
59CentOS-4" screen.
4d583dd8 60
61=item *
62
63Select a language and click C<Next>.
64
65=item *
66
67Select a keyboard configuration and click C<Next>.
68
69=item *
70
71Select C<Custom> for the installation type and click C<Next>.
72
73=item *
74
64ccd8a8 75Leave C<Automatically partition> selected on the C<Disk Partitioning
76Setup> and click C<Next>.
4d583dd8 77
78=item *
79
64ccd8a8 80Uncheck C<Review (and modify if needed) the partitions created>, but
81leave the rest of the default settings on the C<Automatic Partitioning>
82screen. Then click C<Next>.
4d583dd8 83
84=item *
85
86Click C<Yes> at the C<Are you sure you want to do this?> warning.
87
88=item *
89
90Click C<Next> on the C<Boot Loader Configuration> screen.
91
92=item *
93
94Update the C<Network Configuration> screen as necessary and click C<Next>.
95
96=item *
97
64ccd8a8 98Check C<Remote Login (SSH)> and click C<Next> on the C<Firewall
99Configuration> screen.
4d583dd8 100
101=item *
102
103Select additional languages as necessary. Click C<Next>.
104
105=item *
106
107Select the appropriate time zone and click C<Next>.
108
109=item *
110
111Enter a root password and click C<Next>.
112
113=item *
114
64ccd8a8 115Scroll to the bottom of the C<Package Group Selection> screen and check
116C<Minimal> (the last option). Click C<Next>.
4d583dd8 117
118=item *
119
120Click C<Next> at the C<About to Install> screen.
121
122=item *
123
64ccd8a8 124The installation will prepare the hard drive and then install the
125required rpm packages.
4d583dd8 126
127=item *
128
129Once the installation completes, remove the CD and click C<Reboot>.
130
131=item *
132
64ccd8a8 133Type C<vi /etc/sysconfig/iptables> and add the following line as the
134third to last line of the file (I<above> the C<-A RH-Firewall-1-INPUT -j
135REJECT --reject-with icmp-host-prohibited> line):
4d583dd8 136
137 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3000 -j ACCEPT
138
64ccd8a8 139This will allow Catalyst to make use of port 3000 (the default for the
140development server).
4d583dd8 141
64ccd8a8 142Type C<service iptables restart> to restart the iptables firewall using
143the updated configuration.
4d583dd8 144
145=item *
146
64ccd8a8 147Type C<yum -y update> to retrieve the latest patches.
4d583dd8 148
149=back
150
151
152=head1 INSTALL CATALYST
153
154=over 4
155
156=item *
157
97ed9466 158Type C<yum -y install gcc expat-devel sqlite3> to install several
64ccd8a8 159packages used by Catalyst.
4d583dd8 160
161=item *
162
163Type the following:
164
ce1dd321 165 $ perl -MCPAN -e shell
4d583dd8 166
167 ...
168
169 Are you ready for manual configuration? [yes] n
170
171 ...
172
173 cpan shell -- CPAN exploration and modules installation (v1.7601)
174 ReadLine support available (try 'install Bundle::CPAN')
315ba149 175
4d583dd8 176 cpan> force install Module::Build
177
178 ...
179
180 cpan> quit
181
ce1dd321 182=item *
183
184B<Optional:> The remaining steps of the installation could run
185significantly faster if you configure a fast mirror that uses HTTP vs.
186FTP (both transfer data at the same rate once the transfer is in
187progress, but HTTP connects much more quickly... and a Catalyst
188installation involves many connections). One way to do this is to
189answer C<yes> to the C<Are you ready for manual configuration?> prompt
190when you ran C<perl -MCPAN -e shell> above. Or, you can rerun the
191script by entering the following command at the C<cpanE<gt>> prompt:
192
193 cpan> o conf init
194
195It will then take you through the configuration dialog.
196
d532d354 197However, it's often easiesr to avoid the full configuration dialog and
198manually add a URL. To prepend a new URL to the B<front> of the list,
199use the C<unshift> option to C<o conf>:
200
201 cpan> o conf urllist unshift http://www.perl.com/CPAN/
ce1dd321 202
203Where C<http://www.perl.com/CPAN/> is replaced by a nearby, HTTP-based
204mirror. You can get a list of all mirrors (including where they are
205located, their bandwidth, and their update frequency) at
206L<http://www.perl.com/CPAN/MIRRORED.BY>.
207
d532d354 208Then, be sure to save your changes (or they will be lost the next
209time you restart the CPAN shell):
210
211 cpan> o conf commit
212
213You can view the current settings with C<o conf urllist> (or just
214C<o conf> to view all settings):
215
216 cpan> o conf urllist
217 urllist
218 http://www.perl.com/CPAN/
219 Type 'o conf' to view configuration edit options
220
221Note that multiple values can be entered for the C<urllist> option (the
222first entry will be used as long as it responds).
223
4d583dd8 224=item *
225
64ccd8a8 226Type C<wget http://www.shadowcatsystems.co.uk/static/cat-install> to
227retrieve a copy of the C<cat-install> script.
4d583dd8 228
229=item *
230
64ccd8a8 231Type C<vi cat-install> to open the installer script, then insert the
232following lines at the bottom of the file (after the
233C<install('Catalyst');> line):
4d583dd8 234
fcf42995 235 install('Catalyst::Devel');
315ba149 236 install('ExtUtils::ParseXS');
97ed9466 237 install('Digest::SHA1');
315ba149 238 install('Digest::SHA');
4d583dd8 239 install('Class::DBI');
240 install('DBIx::Class');
241 install('DBIx::Class::HTMLWidget');
ce1dd321 242 install('Module::Install');
243 install('Catalyst::Plugin::ConfigLoader');
4d583dd8 244 install('Catalyst::Plugin::Session');
245 install('Catalyst::Plugin::Session::State::Cookie');
246 install('Catalyst::Plugin::Session::Store::FastMmap');
247 install('Catalyst::Plugin::Authorization::ACL');
248 install('Catalyst::Plugin::Authentication');
249 install('Catalyst::Plugin::Authorization::Roles');
250 install('Catalyst::Plugin::Authentication::Store::DBIC');
251 install('Catalyst::Plugin::DefaultEnd');
252 install('Catalyst::Plugin::StackTrace');
253 install('Catalyst::Plugin::Dumper');
315ba149 254 install('Catalyst::Plugin::HTML::Widget');
4d583dd8 255 install('Catalyst::Model::DBIC::Schema');
256 install('Catalyst::View::TT');
ce1dd321 257 install('Test::WWW::Mechanize');
4d583dd8 258 install('Test::WWW::Mechanize::Catalyst');
315ba149 259 install('Test::Pod');
260 install('Test::Pod::Coverage');
4d583dd8 261
262=item *
263
264Type C<perl cat-install>. It will take a while to complete.
265
266=back
267
64ccd8a8 268You should now have a functioning Catalyst installation with the modules
269and plugins required to run the Catalyst tutorial.
4d583dd8 270
271
ce1dd321 272=head1 TESTING THE INSTALLATION
273
274=over 4
275
276=item *
277
278Download the tarball of the final tutorial application:
279
280 $ wget http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/Final_Tarball/MyApp.tgz
281
282=item *
283
284Untar it:
285
286 $ tar zxvf MyApp.tgz
287 $ cd MyApp
288
289=item *
290
291Run the tests:
292
293 $ CATALYST_DEBUG=0 prove --lib lib t
294 t/02pod...............skipped
295 all skipped: set TEST_POD to enable this test
296 t/03podcoverage.......skipped
297 all skipped: set TEST_POD to enable this test
298 t/01app...............ok
299 t/controller_Login....ok
300 t/live_app01..........ok 1/0[debug] ***Root::auto User not found, forwarding to /login
301 t/live_app01..........ok 2/0[debug] ***Root::auto User not found, forwarding to /login
302 t/live_app01..........ok 15/0[debug] ***Root::auto User not found, forwarding to /login
303 t/live_app01..........ok 16/0[debug] ***Root::auto User not found, forwarding to /login
304 t/live_app01..........ok
305 t/model_MyAppDB.......ok
306 All tests successful, 2 tests skipped.
307 Files=6, Tests=55, 11 wallclock secs ( 4.68 cusr + 4.84 csys = 9.52 CPU)
308
309You should see C<All tests successful>.
310
311=back
312
313
314
4d583dd8 315=head1 AUTHOR
316
317Kennedy Clark, C<hkclark@gmail.com>
318
d645910d 319Please report any errors, issues or suggestions to the author. The
7d310f12 320most recent version of the Catalyst Tutorial can be found at
d645910d 321L<http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Tutorial/>.
4d583dd8 322
64ccd8a8 323Copyright 2006, Kennedy Clark, under Creative Commons License
324(L<http://creativecommons.org/licenses/by-nc-sa/2.5/>).