- $ENV{'DGIT_DRS_DISTRO'} = $distro = argval();
- $ENV{'DGIT_DRS_SUITES'} = $suitesfile = argval();
- $ENV{'DGIT_DRS_KEYRINGS'} = $keyrings = argval();
- $ENV{'DGIT_DRS_REPOS'} = $dgitrepos = argval();
- $ENV{'DGIT_DRS_POLICYHOOK'} = $policyhook = argval();
+ $distro = $ENV{'DGIT_DRS_DISTRO'} = argval();
+ my $distrodir = argval();
+ $keyrings = $ENV{'DGIT_DRS_KEYRINGS'} = argval();
+
+ foreach my $dk (keys %indistrodir) {
+ ${ $indistrodir{$dk} } = "$distrodir/$dk";
+ }
+
+ while (@ARGV && $ARGV[0] =~ m/^--([-0-9a-z]+)=/ && $indistrodir{$1}) {
+ ${ $indistrodir{$1} } = $'; #';
+ shift @ARGV;
+ }
+
+ $ENV{"DGIT_DRS_\U$_"} = ${ $main::{$_} } foreach @hookenvs;