From 859a8a0fecf71976afd027c83d2c9030c61cc539 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Wed, 12 Mar 2008 17:47:18 +0000 Subject: * added support for specifying more than one base selection (e.g. base = kde,gnome) git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@1627 95ad53e4-c205-0410-b2fa-d234c58c8868 --- installer/OpenSLX/OSSetup/Engine.pm | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'installer') diff --git a/installer/OpenSLX/OSSetup/Engine.pm b/installer/OpenSLX/OSSetup/Engine.pm index 61db7f85..e539e8e3 100644 --- a/installer/OpenSLX/OSSetup/Engine.pm +++ b/installer/OpenSLX/OSSetup/Engine.pm @@ -1004,13 +1004,18 @@ sub _expandSelection my $selection = $self->{'distro-info'}->{selection}->{$selKey}; if ($selection->{base}) { - # add all packages from base selection to the current one: - my $base = $selection->{base}; - return if !exists $self->{'distro-info'}->{selection}->{$base}; - my $baseSelection = $self->{'distro-info'}->{selection}->{$base}; - $self->_expandSelection($base, $seen); + # add all packages from base selection(s) to the current one: + my $basePackages = ''; + for my $base (split ',', $selection->{base}) { + my $baseSelection = $self->{'distro-info'}->{selection}->{$base} + or die _tr( + 'base-selection "%s" is unknown (referenced in "%s")!', + $base, $selKey + ); + $self->_expandSelection($base, $seen); + $basePackages .= $baseSelection->{packages} || ''; + } my $packages = $selection->{packages} || ''; - my $basePackages = $baseSelection->{packages} || ''; $selection->{packages} = $basePackages . "\n" . $packages; } return; -- cgit v1.2.3-55-g7522