use Config::Tiny; my $CONFIGFILE = "$ENV{HOME}/.vnc/config"; if (-f $CONFIGFILE) { my $cfg = Config::Tiny->read($CONFIGFILE); $geometry = $cfg->{_}{geometry} if exists $cfg->{_}{geometry}; # ... etc. }