[Catalyst] local::lib and mini-cpan for Catalyst apps

Amiri Barksdale amiribarksdale at gmail.com
Thu Jul 16 19:21:22 GMT 2009

On Thu, Jul 16, 2009 at 10:06:31AM +0100, Tomas Doran wrote:
> On 16 Jul 2009, at 02:48, Chris wrote:
>> I'm trying to establish a working recipe for Cat apps with local::lib
>> and app-local mini-CPANs. The aim is to have completely independent
>> app installations with their own copies of all their dependancies, so
>> an install will be copy to server and run installdeps, and everything
>> installs from the mini-cpan which lives in the app dir. This is fairly
>> important when supporting several different apps on different cat
>> versions. To date I've been using a modified krang installer, but it
>> doesn't handle dependancies at all, and the install process feels like
>> it's held together with spit.
>> I'm using t0m's work on local::lib with cat:
>> http://github.com/bobtfish/catalyst-app-example-locallibapp/tree/ 
>> master,
>> which works very well.
> Awesome :) That has become slightly abandonware, just because I don't  
> have any tuits to work on it more :/
> Glad that it's 'good enough' for you.
>> I'm caught on the other piece, getting installdeps to work with a
>> mini-cpan living in the app directory. All the instructions for
>> mini-cpans assume you have one private cpan directory and can 'o conf
>> urllist' to set your file:// path. Sadly this doesn't work very well
>> with a cpan directory-per-application.
> I really don't know how well relative paths work in CPAN config..
> However, I was thinking that the best way to deal with this was to write 
> a custom local-lib5/CPAN/MyConfig.pm into the app's local lib, which 
> would controll the apps CPAN preferences, including overriding  
> distroprefs and CPAN mirrors etc..

This is a totally awesome idea. That would make development much easier.
I have 3 apps going now, and though they all have local::libs, I would
much rather them all have separate cpan configs as well. I offer


More information about the Catalyst mailing list