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. POD ERRORS Hey! The above document had some coding errors, which are explained below: Around line 19: L<> starts or ends with whitespace