From 4c5075db0eee4b3a49e43d2d35e116f10b47c4a3 Mon Sep 17 00:00:00 2001 From: Olivier Thauvin Date: Tue, 3 Jul 2007 14:16:27 +0000 Subject: - default vendor value should be evaluated from tree type --- lib/MDV/Distribconf.pm | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'lib') diff --git a/lib/MDV/Distribconf.pm b/lib/MDV/Distribconf.pm index c5193c1..16896ef 100644 --- a/lib/MDV/Distribconf.pm +++ b/lib/MDV/Distribconf.pm @@ -176,6 +176,7 @@ sub new { root => $path, infodir => '', mediadir => '', + type => '', # mdk vs mdv mediainfodir => '', cfg => new Config::IniFiles(-default => 'media_info', -allowcontinue => 1), }; @@ -220,13 +221,15 @@ sub loadtree { my ($distrib) = @_; if (-d "$distrib->{root}/media/media_info") { - $distrib->{infodir} = "media/media_info"; - $distrib->{mediadir} = "media"; + $distrib->{infodir} = 'media/media_info'; + $distrib->{mediadir} = 'media'; $distrib->{mediainfodir} = '/media_info'; + $distrib->{type} = 'mandriva'; } elsif (-d "$distrib->{root}/Mandrake/base") { - $distrib->{infodir} = "Mandrake/base"; - $distrib->{mediadir} = "Mandrake"; + $distrib->{infodir} = 'Mandrake/base'; + $distrib->{mediadir} = 'Mandrake'; $distrib->{mediainfodir} = ''; + $distrib->{type} = 'mandrake'; } else { return 0; } @@ -272,13 +275,15 @@ sub settree { $distrib->{$_} = $spec->{$_} || ''; } } elsif ($spec && $spec =~ /mandrake/i) { - $distrib->{infodir} = "Mandrake/base"; - $distrib->{mediadir} = "Mandrake"; + $distrib->{infodir} = 'Mandrake/base'; + $distrib->{mediadir} = 'Mandrake'; + $distrib->{type} = 'mandrake'; $distrib->{mediainfodir} = ''; } else { # finally it can be everything, we do not care - $distrib->{infodir} = "media/media_info"; - $distrib->{mediadir} = "media"; + $distrib->{infodir} = 'media/media_info'; + $distrib->{mediadir} = 'media'; $distrib->{mediainfodir} = '/media_info'; + $distrib->{type} = 'mandriva'; } } @@ -457,7 +462,7 @@ sub getvalue { /^(?:media|info)dir$/ and do { $default = $distrib->{$var}; last }; /^os$/ and do { $default = 'linux'; last; }; /^gnu$/ and do { $default = 1; last; }; - /^vendor$/ and do { $default = 'mandriva'; last; }; + /^vendor$/ and do { $default = $distrib->{type}; last; }; /^arch$/ and do { $default = `/bin/arch`; chomp($default); last; }; /^platform$/ and do { $default = sprintf('%s-%s-%s%s', -- cgit v1.2.1