NAME
Dist::HomeDir
SUMMARY
use Dist::Homedir;
my $dist_home = Dist::Homedir::dist_home(); # A Path::Tiny object of the Dist home
Easily find the dist homedir for an application set up as a cpan(ish) distribution but intended to be deployed via git checkout or by a tarball in a self contained directory. DO NOT use this in code that is ever likely to be installed via cpan or other package manager.
DESCRIPTION
This module was inspired by Catalyst::Utils->home() to obtain the root directory for obtaining application code and self-contained support data in directories relative to the distribution root. It does this by returning a " Path::Tiny " object which has a very nice interface. However Catalyst::Utils->home only works for perl classes. This works for class files and perl scripts via examining (caller)[1]
and thus should never be used in code that will be instaled via a cpan client or other package manager.
Sometimes support libaries will also live in the t/lib
directory and the script/lib
directory. dist_home
will ignore lib
directories as part of finding the distribution root. Future versions of this module may make the list of what directories to ignore lib
sub directories user-configurable (patches welcome).
FUNCTIONS
dist_home
Returns a Path::Tiny object of where the current code file executed thinks the distribution home directory is.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 19:
L<> starts or ends with whitespace