X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=Debbugs%2FConfig.pm;h=56c79580230a40a5b30fa622f0811b290b83583a;hb=b95204f979d13fe73bfcea4072c580a0994f5a84;hp=d02629a0490a56342ca2ba7ef08d394c07acf6e4;hpb=a6c428bc8b655a9de967a2794f6fd860e235bc10;p=debbugs.git diff --git a/Debbugs/Config.pm b/Debbugs/Config.pm index d02629a..56c7958 100644 --- a/Debbugs/Config.pm +++ b/Debbugs/Config.pm @@ -59,14 +59,18 @@ BEGIN { qw($gMaintainerFileOverride $gPseudoMaintFile $gPseudoDescFile $gPackageSource), qw($gVersionPackagesDir $gVersionIndex $gBinarySourceMap $gSourceBinaryMap), qw($gVersionTimeIndex), + qw($gSimpleVersioning), qw($gSendmail $gLibPath $gSpamScan @gExcludeFromControl), qw(%gSeverityDisplay @gTags @gSeverityList @gStrongSeverities), + qw(%gTagsSingleLetter), qw(%gSearchEstraier), qw(%gDistributionAliases), qw(%gObsoleteSeverities), qw(@gPostProcessall @gRemovalDefaultDistributionTags @gRemovalDistributionTags @gRemovalArchitectures), qw(@gRemovalStrongSeverityDefaultDistributionTags), + qw(@gAffectsDistributionTags), qw(@gDefaultArchitectures), + qw($gMachineName), qw($gTemplateDir), qw($gDefaultPackage), qw($gSpamMaxThreads $gSpamSpamsPerThread $gSpamKeepRunning $gSpamScan $gSpamCrossassassinDb), @@ -269,11 +273,27 @@ Email address where packages with an unknown maintainer will be sent Default: $config{maintainer_email} +=cut + +set_default(\%config,'unknown_maintainer_email',$config{maintainer_email}); + +=item machine_name + +The name of the machine that this instance of debbugs is running on +(currently used for debbuging purposes and web page output.) + +Default: qx(hostname --fqdn) + =back =cut -set_default(\%config,'unknown_maintainer_email',$config{maintainer_email}); +my $_old_path = $ENV{PATH}; +$ENV{PATH} = '/bin:/usr/bin:/usr/local/bin'; +my $temp_hostname = qx(hostname --fqdn); +chomp $temp_hostname; +set_default(\%config,'machine_name',$temp_hostname); +$ENV{PATH} = $_old_path; =head2 BTS Mailing Lists @@ -298,6 +318,8 @@ set_default(\%config,'unknown_maintainer_email',$config{maintainer_email}); =item mirror_list +=item strong_list + =cut set_default(\%config, 'submit_list', 'bug-submit-list'); @@ -331,11 +353,39 @@ set_default(\%config,'bug_subscription_domain',$config{list_domain}); =over +=item mailer + +Name of the mailer to use + +Default: exim + =cut set_default(\%config,'mailer','exim'); + + +=item bug + +Default: bug + +=item ubug + +Default: ucfirst($config{bug}); + +=item bugs + +Default: bugs + +=item ubugs + +Default: ucfirst($config{ubugs}); + +=cut + set_default(\%config,'bug','bug'); +set_default(\%config,'ubug',ucfirst($config{bug})); set_default(\%config,'bugs','bugs'); +set_default(\%config,'ubugs',ucfirst($config{bugs})); =item remove_age @@ -416,6 +466,25 @@ set_default(\%config,'default_architectures', [qw(i386 amd64 arm powerpc sparc alpha)] ); +=item affects_distribution_tags + +List of tags which restrict the buggy state to a set of distributions. + +The set of distributions that are buggy is the intersection of the set +of distributions that would be buggy without reference to these tags +and the set of these tags that are distributions which are set on a +bug. + +Setting this to [] will remove this feature. + +Default: @{$config{distributions}} + +=cut + +set_default(\%config,'affects_distribution_tags', + [@{$config{distributions}}], + ); + =item removal_unremovable_tags Bugs which have these tags set cannot be archived @@ -584,7 +653,10 @@ Default: set_default(\%config,'severity_display',{critical => "Critical $config{bugs}", grave => "Grave $config{bugs}", + serious => "Serious $config{bugs}", + important=> "Important $config{bugs}", normal => "Normal $config{bugs}", + minor => "Minor $config{bugs}", wishlist => "Wishlist $config{bugs}", }); @@ -642,6 +714,15 @@ set_default(\%config,'tags',[qw(patch wontfix moreinfo unreproducible fixed), @{$config{distributions}} ]); +set_default(\%config,'tags_single_letter', + {patch => '+', + wontfix => '', + moreinfo => 'M', + unreproducible => 'R', + fixed => 'F', + } + ); + set_default(\%config,'bounce_froms','^mailer|^da?emon|^post.*mast|^root|^wpuser|^mmdf|^smt.*|'. '^mrgate|^vmmail|^mail.*system|^uucp|-maiser-|^mal\@|'. '^mail.*agent|^tcpmail|^bitmail|^mailman'); @@ -675,11 +756,24 @@ set_default(\%config,'template_dir','/usr/share/debbugs/templates'); set_default(\%config,'maintainer_file',$config{config_dir}.'/Maintainers'); set_default(\%config,'maintainer_file_override',$config{config_dir}.'/Maintainers.override'); +set_default(\%config,'source_maintainer_file',$config{config_dir}.'/Source_maintainers'); +set_default(\%config,'source_maintainer_file_override',undef); set_default(\%config,'pseudo_maint_file',$config{config_dir}.'/pseudo-packages.maint'); set_default(\%config,'pseudo_desc_file',$config{config_dir}.'/pseudo-packages.description'); set_default(\%config,'package_source',$config{config_dir}.'/indices/sources'); +=item simple_versioning + +If true this causes debbugs to ignore version information and just +look at whether a bug is done or not done. Primarily of interest for +debbugs installs which don't track versions. defaults to false. + +=cut + +set_default(\%config,'simple_versioning',0); + + =item version_packages_dir Location where the version package information is kept; defaults to @@ -909,6 +1003,10 @@ set_default(\%config,'html_expire_note', sub read_config{ my ($conf_file) = @_; + if (not -e $conf_file) { + print STDERR "configuration file '$conf_file' doesn't exist; skipping it"; + return; + } # first, figure out what type of file we're reading in. my $fh = new IO::File $conf_file,'r' or die "Unable to open configuration file $conf_file for reading: $!";