NAME
Catalyst::Manual::Installation::CentOS4 - Catalyst Installation on CentOS 4
DESCRIPTION
This document provides directions on how to install CentOS 4 (a rebuild of RedHat Enterprise 4) and then install Catalyst.
If you already have a functioning install of CentOS, RHEL, or a comparable Linux OS, you should be able to skip this first section and go straight to the INSTALL CATALYST
section.
NOTE: You might want to consult the latest version of this document. It is available at: http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Installation/CentOS4.pod
INSTALL CENTOS
These directions are written for CentOS 4.4 on an i386 machine; however, you can substitute other versions as they become available.
Go to http://isoredirect.centos.org/centos/4/isos/i386/ and click the nearest mirror.
Download
CentOS-4.4-i386-bin1of4.iso
(you only need the first disk).Burn the .iso to CD.
Insert the CD into your machine and power it up.
Hit
Enter
at theboot:
prompt.CD media test: you can either select
OK
orSkip
depending on whether or not you trust your burn.The installation GUI should start. Click next at the "Welcome to CentOS-4" screen.
Select a language and click
Next
.Select a keyboard configuration and click
Next
.Select
Custom
for the installation type and clickNext
.Leave
Automatically partition
selected on theDisk Partitioning Setup
and clickNext
.Uncheck
Review (and modify if needed) the partitions created
, but leave the rest of the default settings on theAutomatic Partitioning
screen. Then clickNext
.Click
Yes
at theAre you sure you want to do this?
warning.Click
Next
on theBoot Loader Configuration
screen.Update the
Network Configuration
screen as necessary and clickNext
.Check
Remote Login (SSH)
and clickNext
on theFirewall Configuration
screen.Select additional languages as necessary. Click
Next
.Select the appropriate time zone and click
Next
.Enter a root password and click
Next
.Scroll to the bottom of the
Package Group Selection
screen and checkMinimal
(the last option). ClickNext
.Click
Next
at theAbout to Install
screen.The installation will prepare the hard drive and then install the required rpm packages.
Once the installation completes, remove the CD and click
Reboot
.Type
vi /etc/sysconfig/iptables
and add the following line as the third to last line of the file (above the-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
line):-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3000 -j ACCEPT
This will allow Catalyst to make use of port 3000 (the default for the development server).
Type
service iptables restart
to restart the iptables firewall using the updated configuration.Type
yum -y update
to retrieve the latest patches.
INSTALL CATALYST
Type
yum -y install gcc expat-devel sqlite3
to install several packages used by Catalyst.Type the following:
$ perl -MCPAN -e shell ... Are you ready for manual configuration? [yes] yes The following questions are intended to help you with the ... cpan shell -- CPAN exploration and modules installation (v1.7601) ReadLine support available (try 'install Bundle::CPAN') cpan> force install Module::Build ... cpan> quit
Note: You need to have CPAN manually configured prior to running cat-install. As shown above, you should automatically receive a prompt for this when you first run
perl -MCPAN -e shell
. You can re-run the configuration script by typingo conf init
at thecpan>
prompt.Optional: The remaining steps of the installation could run significantly faster if you configure a fast mirror that uses HTTP vs. FTP (both transfer data at the same rate once the transfer is in progress, but HTTP connects much more quickly... and a Catalyst installation involves many connections). If you want to change the selection(s) you made during the "manual configuration" process above, you can manually add a single URL. To prepend a new URL to the front of the list, use the
unshift
option too conf
:cpan> o conf urllist unshift http://www.perl.com/CPAN/
Where
http://www.perl.com/CPAN/
is replaced by a nearby, HTTP-based mirror. You can get a list of all mirrors (including where they are located, their bandwidth, and their update frequency) at http://www.perl.com/CPAN/MIRRORED.BY.Then, be sure to save your changes (or they will be lost the next time you restart the CPAN shell):
cpan> o conf commit
You can view the current settings with
o conf urllist
(or justo conf
to view all settings):cpan> o conf urllist urllist http://www.perl.com/CPAN/ Type 'o conf' to view configuration edit options
Note that multiple values can be entered for the
urllist
option (the first entry will be used as long as it responds).Review the
cat-install
documentation from the http://www.shadowcatsystems.co.uk web site:If you want to get started quickly with Catalyst, Shadowcat provides an installer script that will automate most of the process of installing it for you. Please bear in mind that this script is currently considered beta quality; we don't think it will eat your system but we make no guarantee of that. First, you'll need - * Perl, 5.8.1+ (if you're on windows, get it from Active State) * make of some sort. On unix/linux you should already have one. On windows get nmake from Microsoft. * A compiler. On unix/linux you should already have one. On windows, get the latest Dev-C++ beta. * All three of the above in your PATH for whatever shell you're using * A configured CPAN.pm. perl -MCPAN -e shell should get CPAN to walk you through the configuration process * Module::Build. Active State kindly include this for you. Ok, now that your environment is set up, download the installer from this link, open a command prompt in the directory you downloaded it to and run perl cat-install. By the time it exits, you should have a full Catalyst install. If anything goes wrong, please send the full build log and the output of perl -V to cat-install (at) shadowcatsystems.co.uk so we can try and resolve your issue.
Type
wget http://www.shadowcatsystems.co.uk/static/cat-install
to retrieve a copy of thecat-install
script.Type
vi cat-install
to open the installer script, then insert the following lines at the bottom of the file (after theinstall('Catalyst');
line):install('ExtUtils::ParseXS'); install('Digest::SHA1'); install('Digest::SHA'); install('DBIx::Class'); install('DBIx::Class::HTMLWidget'); install('Module::ScanDeps'); install('Module::CoreList'); install('PAR::Dist'); install('Archive::Tar'); install('Module::Install'); install('Catalyst::Devel'); install('Catalyst::Plugin::ConfigLoader'); install('Catalyst::Plugin::Session'); install('Catalyst::Plugin::Session::State::Cookie'); install('Catalyst::Plugin::Session::Store::FastMmap'); install('Catalyst::Plugin::Authorization::ACL'); install('Catalyst::Plugin::Authentication'); install('Catalyst::Plugin::Authorization::Roles'); install('Catalyst::Plugin::Authentication::Store::DBIC'); install('Catalyst::Plugin::DefaultEnd'); install('Catalyst::Plugin::StackTrace'); install('Catalyst::Plugin::Dumper'); install('Catalyst::Plugin::HTML::Widget'); install('Catalyst::Model::DBIC::Schema'); install('Catalyst::View::TT'); install('Test::WWW::Mechanize'); install('Test::WWW::Mechanize::Catalyst'); install('Test::Pod'); install('Test::Pod::Coverage');
Type
perl cat-install
. It will take a while to complete.Tip: You may want to enable logging of the output that
cat-install
generates as it runs -- it can be useful if you need to troubleshoot a failure. The log will generate almost 1 MB of output.Note: Once the
perl cat-install
is complete, you may want to rerun the command to check the status of the packages listed in <cat-install>. Ideally, everything should return a nameis up to date
message. If any packages try to re-install, the you could need to manually install the package with theforce
option. Also, look for new optional dependences thatcat-install
was not able to automatically handle. You can address these by manually installing the dependency and then re-runningperl cat-install
.In some cases you may wish to install an earlier version of a module. For example, say that the latest version of Module::Install is 0.64 and you want to install 0.63. The following command under
perl -MCPAN -e shell
:cpan> install A/AD/ADAMK/Module-Install-0.63.tar.gz
You should now have a functioning Catalyst installation with the modules and plugins required to run the Catalyst tutorial.
TESTING THE INSTALLATION
Download the tarball of the final tutorial application:
$ wget http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/Final_Tarball/MyApp.tgz
Untar it:
$ tar zxvf MyApp.tgz $ cd MyApp
Run the tests:
$ CATALYST_DEBUG=0 prove --lib lib t t/02pod...............skipped all skipped: set TEST_POD to enable this test t/03podcoverage.......skipped all skipped: set TEST_POD to enable this test t/01app...............ok t/controller_Login....ok t/live_app01..........ok 1/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok 2/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok 15/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok 16/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok t/model_MyAppDB.......ok All tests successful, 2 tests skipped. Files=6, Tests=55, 11 wallclock secs ( 4.68 cusr + 4.84 csys = 9.52 CPU)
You should see
All tests successful
.
AUTHOR
Kennedy Clark, hkclark@gmail.com
Please report any errors, issues or suggestions to the author. The most recent version of the Catalyst Tutorial can be found at http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Tutorial/.
Copyright 2006, Kennedy Clark, under Creative Commons License (http://creativecommons.org/licenses/by-nc-sa/2.5/).