use Config::Find; my $cfg_fn = Config::Find->new(name=>'foo'); #### ~/.foo ~/.foo.conf ~/.foo.cfg $FOO_HOME/etc/foo.conf $FOO_HOME/etc/foo.cfg /etc/foo.conf /etc/foo.cfg