[Catalyst] Unpack and Run vs. Install and Run Catalyst apps

Christopher H. Laco claco at chrislaco.com
Wed Dec 14 00:18:26 CET 2005

Christopher H. Laco wrote:
> While working on Meios, I've had this question rolling around my head.
> When, why, and how many people actually "make install" their catalyst
> applications, and how how people just unpack and run them in the
> directory they come in (or pointing Apache to load from there)?
> Meios, for example is designed to just be unpacked and run as is. Since
> 95% of it is not reusable modules, installing then into the perl lib
> tree makes no sense. I would assume people are likely using PREFIX to
> install apps into another directory somewhere?
> Just for the sake of doing it, I created My::App, package it up,
> unpacked it, and did a "perl Makefile.PL PREFIX=C:\foo", make, and make
> install.
> I now have a shiny new C:\foo directory with My::App in it, albeit in a
> directory structure completely unlike what it is during development. (I
> actually like the dist structure better).
> On a side note, when I ran script/*server.pl from the dist location,
> http://localhost:3000/static/images/catalyst_logo.png works. When I ran
> bin/*server.pl from the bin directory where PREFIX installed the app,
> http://localhost:3000/static/images/catalyst_logo.png doesn't work at
> all, even though the files are there. Something make be borken with Static.
> -=Chris

Just as an update to my static problem. I tried this under 5.61 on
Ubuntu at home. I did:

catalyst.pl My::App
cd My-App
perl Makefile.PL PREFIX=/home/claco/foo
make && make install

Now, here's what came out. running /home/claco/foo/bin/my_app_server.pl
will never work, without adding a boatload of @INC entries:

> foo:
> bin  lib  man  share
> foo/bin:
> my_app_cgi.pl  my_app_create.pl  my_app_fastcgi.pl  my_app_server.pl  my_app_test.pl
> foo/lib:
> perl
> foo/lib/perl:
> 5.8.7
> foo/lib/perl/5.8.7:
> auto  perllocal.pod
> foo/lib/perl/5.8.7/auto:
> My
> foo/lib/perl/5.8.7/auto/My:
> App
> foo/lib/perl/5.8.7/auto/My/App:
> foo/man:
> man1  man3
> foo/man/man1:
> my_app_cgi.pl.1p  my_app_create.pl.1p  my_app_fastcgi.pl.1p  my_app_server.pl.1p  my_app_test.pl.1p
> foo/man/man3:
> My::App.3pm
> foo/share:
> perl
> foo/share/perl:
> 5.8.7
> foo/share/perl/5.8.7:
> My  My-App
> foo/share/perl/5.8.7/My:
> App.pm
> foo/share/perl/5.8.7/My-App:
> root
> foo/share/perl/5.8.7/My-App/root:
> favicon.ico  static
> foo/share/perl/5.8.7/My-App/root/static:
> images
> foo/share/perl/5.8.7/My-App/root/static/images:
> btn_120x50_built.png         btn_120x50_powered.png         btn_88x31_built.png         btn_88x31_powered.png         catalyst_logo.png
> btn_120x50_built_shadow.png  btn_120x50_powered_shadow.png  btn_88x31_built_shadow.png  btn_88x31_powered_shadow.png
> claco at NP5660:~$

So, I guess this answers my quesiton. Installing a cat app is about
non-purposeful. IT's cleaner to just leave it all in the unpacked dist
directory and point things to it's single lib directory, rather than
futz with the alternative.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: OpenPGP digital signature
Url : http://lists.rawmode.org/pipermail/catalyst/attachments/20051213/49e84f87/signature.pgp

More information about the Catalyst mailing list