diff options
Diffstat (limited to 'initramfs')
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Engine.pm | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/initramfs/OpenSLX/MakeInitRamFS/Engine.pm b/initramfs/OpenSLX/MakeInitRamFS/Engine.pm index efa8d1de..996d5f93 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Engine.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Engine.pm @@ -60,12 +60,18 @@ sub new $self->{'distro-name'} = lc($1); $self->{'distro-ver'} = $2; + + my $fullDistroName = lc($1) . '-' . $2; - my $distroModule - = 'OpenSLX::MakeInitRamFS::Distro::' . ucfirst($self->{'distro-name'}); - if (!eval { $self->{distro} = instantiateClass($distroModule); }) { - $self->{distro} - = instantiateClass('OpenSLX::MakeInitRamFS::Distro::Base'); + $self->{distro} = loadDistroModule({ + distroName => $fullDistroName, + distroScope => 'OpenSLX::MakeInitRamFS::Distro', + }); + if (!$self->{distro}) { + die _tr( + 'unable to load any MakeInitRamFS::Distro module for system %s!', + $self->{'system-name'} + ); } $self->{'lib-scanner'} |