App-Netsync
view release on metacpan or search on metacpan
lib/App/Netsync/Configurator.pm view on Meta::CPAN
sub configurate {
warn 'too many arguments' if @_ > 3;
my ($file,$overrides,$defaults) = @_;
$file //= '/etc/'.$SCRIPT.'/'.$SCRIPT.'.ini';
$overrides //= {};
$defaults //= {};
{
open (my $ini,'<',$file);
my $parser = Config::Simple->new($file);
my $syntax = $parser->guess_syntax($ini);
unless (defined $syntax and $syntax eq 'ini') {
say 'The configuration file "'.$file.'" is malformed.';
return undef;
}
close $ini;
}
$config{$_} = $defaults->{$_} foreach keys %$defaults;
{
( run in 0.228 second using v1.01-cache-2.11-cpan-d9388b9e2af )