I encountered some strange behaviour in my Catalyst App regarding
determination of the home directory.
The App is the result of an attempt to manually merge two apps which I
know is error-prone in the first place but I can't help it at the
moment. And because the error I encountered seems to happen early in the
initialization cycle I think it may be resolvable.
The two Apps as well as the resulting App run with mod_perl but the
behavior is the same when starting the App with the test server via
So I created a directory /home/MyTest on the server and put the Modules
in there in accordance to the Catalyst directory structure.
Now Catalyst sets the home directory to /home/MyTest/lib/MyApp instead
of the expected /home/MyTest. As a quick fix I tried to use the -Home
flag as follows:
use Catalyst qw/-Debug
# Plugins below
which yielded a syntax error (did I misunderstand something in "perldoc
Catalyst"?). I then set the environment variable MYAPP_HOME to
/home/MyTest which was simply ignored by Catalyst. As a last resort I
suspected it had to do with my home directory being /home/MyTest instead
of /home/MyApp, so I put a symbolic link "MyApp" into /home/Testdir/
that points to /home/MyTest/ and changed the mod_perl configuration
accordingly to no effect.
As the configuration was simply copied from one of the old Apps and both
set the home directory as expected, I thought the new App wouldn't go
haywire at this point.
Are there any docs that are more verbose about the initialization than
Catalyst::Manual::Internals that I haven't found yet (apart from digging
through the source)?
Do you have any ideas why this might happen?