summaryrefslogtreecommitdiffstats
path: root/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm
diff options
context:
space:
mode:
Diffstat (limited to 'src/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm')
-rw-r--r--src/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm73
1 files changed, 73 insertions, 0 deletions
diff --git a/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm
new file mode 100644
index 00000000..2c59bbae
--- /dev/null
+++ b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm
@@ -0,0 +1,73 @@
+ # Copyright (c) 2006..2010 - OpenSLX GmbH
+#
+# This program is free software distributed under the GPL version 2.
+# See http://openslx.org/COPYING
+#
+# If you have any feedback please consult http://openslx.org/feedback and
+# send your suggestions, praise, or complaints to feedback@openslx.org
+#
+# General information about OpenSLX can be found at http://openslx.org/
+# -----------------------------------------------------------------------------
+# MakeInitRamFS::Distro::Ubuntu.pm
+# - provides Ubuntu-specific overrides of the MakeInitRamFS::Distro API.
+# -----------------------------------------------------------------------------
+package OpenSLX::MakeInitRamFS::Distro::Ubuntu;
+
+use strict;
+use warnings;
+
+use base qw(OpenSLX::MakeInitRamFS::Distro::Base);
+
+use OpenSLX::Basics;
+
+################################################################################
+### implementation
+################################################################################
+sub new
+{
+ my $class = shift;
+ my $self = {
+ 'base-name' => 'ubuntu',
+ };
+ return bless $self, $class;
+}
+
+# filter out modules not present (e.g. because compiled into the kernel)
+sub applyChanges
+{
+ my $self = shift;
+ my $engine = shift;
+
+ #if ($engine->{'distro-name'} =~ m{-([^-]+)$}) {
+ # my $distroVersion = 0.0 + $1;
+ # if ($distroVersion <= 8.10) {
+ # $engine->_addFilteredKernelModules( qw( unix hid-bright ));
+ # }
+ # else {
+ # $engine->_addFilteredKernelModules( qw( unix hid-bright af_packet uhci-hcd ohci-hcd ));
+ # }
+ #}
+ $engine->_addFilteredKernelModules( qw( unix hid-bright af_packet uhci-hcd ohci-hcd ));
+
+ return;
+}
+
+sub determineMatchingHwinfoVersion
+{
+ my $self = shift;
+ my $distroVersion = shift;
+
+ # Please check, if correct
+ my %versionMap = (
+ '7.10' => '14.19',
+ '8.04' => '15.3',
+ '8.10' => '15.21',
+ '9.04' => '15.21',
+ '9.10' => '16.0',
+ '10.04' => '16.0',
+ );
+ return $versionMap{$distroVersion}
+ || $self->SUPER::determineMatchingHwinfoVersion($distroVersion);
+}
+
+1;