NAME¶
MooX::File::ConfigDir - Moo eXtension for File::ConfigDir
SYNOPSIS¶
my App;
use Moo;
with MooX::File::ConfigDir;
1;
package main;
my $app = App->new();
$app->config_identifier('MyProject');
my @cfgdirs = @{ $app->config_dirs };
# install support
my $site_cfg_dir = $app->site_cfg_dir->[0];
my $vendor_cfg_dir = $app->site_cfg_dir->[0];
DESCRIPTION¶
This module is a helper for easily find configuration file locations. Whether to
use this information for find a suitable place for installing them or looking
around for finding any piece of settings, heavily depends on the requirements.
ATTRIBUTES¶
config_identifier¶
Allows to deal with a global unique identifier passed to the functions of
File::ConfigDir. Using it encapsulates configuration files from the other ones
(eg. "/etc/apache2" vs. "/etc").
"config_identifier" can be initialized by specifying it as parameter
during object construction or via inheriting default builder
("_build_config_identifier").
system_cfg_dir¶
Provides the configuration directory where configuration files of the operating
system resides. For details see "system_cfg_dir" in File::ConfigDir.
desktop_cfg_dir¶
Provides the configuration directory where configuration files of the desktop
applications resides. For details see "desktop_cfg_dir" in
File::ConfigDir.
xdg_config_dirs¶
Alias for desktop_cfg_dir to support XDG Base Directory Specification
<
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html>
core_cfg_dir¶
Provides the configuration directory of the Perl5 core location. For details see
"core_cfg_dir" in File::ConfigDir.
site_cfg_dir¶
Provides the configuration directory of the Perl5 sitelib location. For details
see "site_cfg_dir" in File::ConfigDir.
vendor_cfg_dir¶
Provides the configuration directory of the Perl5 vendorlib location. For
details see "vendor_cfg_dir" in File::ConfigDir.
singleapp_cfg_dir¶
Provides the configuration directory of $0 if it's installed as a separate
package - either a program bundle (TSM, Oracle DB) or an independent package
combination (eg. via pkgsrc <
http://www.pkgsrc.org/> For details see
"singleapp_cfg_dir" in File::ConfigDir.
local_cfg_dir¶
Returns the configuration directory for distribution independent, 3rd party
applications. For details see "local_cfg_dir" in File::ConfigDir.
locallib_cfg_dir¶
Provides the configuration directory of the Perl5 local::lib environment
location. For details see "locallib_cfg_dir" in File::ConfigDir.
here_cfg_dir¶
Provides the path for the "etc" directory below the current working
directory. For details see "here_cfg_dir" in File::ConfigDir.
user_cfg_dir¶
Provides the users home folder using File::HomeDir. For details see
"user_cfg_dir" in File::ConfigDir.
xdg_config_home¶
Returns the user configuration directory for desktop applications. For details
see "xdg_config_home" in File::ConfigDir.
config_dirs¶
Tries to get all available configuration directories as described above. Returns
those who exists and are readable. For details see "config_dirs" in
File::ConfigDir.
AUTHOR¶
Jens Rehsack, "<rehsack at cpan.org>"
BUGS¶
Please report any bugs or feature requests to "bug-moox-file-configdir at
rt.cpan.org", or through the web interface at
<
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=MooX-File-ConfigDir>. I
will be notified, and then you'll automatically be notified of progress on
your bug as I make changes.
SUPPORT¶
You can find documentation for this module with the perldoc command.
perldoc MooX::File::ConfigDir
You can also look for information at:
- •
- RT: CPAN's request tracker
<http://rt.cpan.org/NoAuth/Bugs.html?Dist=MooX-File-ConfigDir>
- •
- AnnoCPAN: Annotated CPAN documentation
<http://annocpan.org/dist/MooX-File-ConfigDir>
- •
- CPAN Ratings
<http://cpanratings.perl.org/m/MooX-File-ConfigDir>
- •
- Search CPAN
<http://search.cpan.org/dist/MooX-File-ConfigDir/>
LICENSE AND COPYRIGHT¶
Copyright 2013-2014 Jens Rehsack.
This program is free software; you can redistribute it and/or modify it under
the terms of either: the GNU General Public License as published by the Free
Software Foundation; or the Artistic License.
See
http://dev.perl.org/licenses/ for more information.