Catalyst Framework
The Catalyst Framework is yet another "we are the best" web framework. Please don't confuse it with Gentoo's Catalyst, which is used to build stages and Live CDs.
Contents |
[edit] Pre-requisites
A major dependency of Catalyst is Perl. Catalyst developers recommend at least version 5.8.1: they say 5.8.0 is enough, but 5.8.1 contains several bugfixes. So whatever, just sync your tree and get the latest version (stable is okay), especially if you plan to work with UTF-8 data.
Catalyst and its related modules depend on several ebuilds which are already in Portage. Some of them are masked. Depending on your platform, you might need to add some packages lines to your /etc/portage/package.keywords.
[edit] Installation
[edit] Getting the perl-experimental overlay
Catalyst Framework is now part of the perl-experimental overlay, which is available via layman. Make sure you have layman installed and properly configured, then issue the following commands:
This will download the latest ebuilds from the Subversion overlay repository. When you want to check for updated, do:
[edit] Choosing USE flags
Some USE flags for your /etc/make.conf are supported:
- apache2 or apache - indicates you're using Apache web server, so installs some related modules.
- fastcgi - indicates you're using mod_fastcgi, so necessary modules will be pulled in.
- modperl - enable this if you plan to use mod_perl for Catalyst applications.
- par - if you plan to compile your applications into PAR file, add this flag.
- sqlite - for SQLite users.
- mysql - for MySQL folks.
[edit] Unmasking
The perl-experimental overlay is keyword masked for x86 and amd64 (if not, fix this section accordingly), while it doesn't feature the keywords at all for the other archs at present time. Note that /etc/portage/package.accept_keywords is intended to replace /etc/portage/package.keywords. Choose the command according to your current configuration.
Older versions of layman stored the overlay in a different location:
If you do not want to include all the packages on /var/lib/layman/perl-experimental/dev-perl/ in your /etc/portage/package.accept_keywords, portage can include only the necessary packages with the option --autounmask-write:
After issuing this option, you should run etc-update (or dispatch-conf) to get the packages in /etc/portage/package.accept_kewords.
[edit] Installing Catalyst
Perl modules in Portage update quite often, so you need to ensure you're using the latest versions available.
This will pull in everything Task::Catalyst depends on, which is what is needed for most Catalyst developers.
There are a lot of other ebuilds in the overlay, for several Catalyst, DBIx::Class and TT extensions, plus many more.
[edit] Additional modules
Besides the ones pulled in by the catalystframework meta ebuild, many other modules are available. They're not installed with the meta ebuilds as fewer people need them. Browse the contents of the repository to see which are available, and drop me (see bottom of the HOWTO for contact) a line if you wish others to be added.
To install, just emerge ebuildname.
[edit] External links
- Catalyst Framework discussion on Gentoo Forums - this is also the place where to ask questions
- The home of the Catalyst project
- Catalyst wiki