summaryrefslogtreecommitdiffstats
path: root/boot-env/OpenSLX/MakeInitRamFS/Distro
diff options
context:
space:
mode:
authorOliver Tappe2008-09-01 12:32:02 +0200
committerOliver Tappe2008-09-01 12:32:02 +0200
commitaaaeb9f927d17a766cbb143f65e4f1702cbd04ba (patch)
treebf8708a950ea2e91491accd713898b6a36008a4d /boot-env/OpenSLX/MakeInitRamFS/Distro
parent* added to static info files for preboot-cd (diff)
downloadcore-aaaeb9f927d17a766cbb143f65e4f1702cbd04ba.tar.gz
core-aaaeb9f927d17a766cbb143f65e4f1702cbd04ba.tar.xz
core-aaaeb9f927d17a766cbb143f65e4f1702cbd04ba.zip
* next refactoring step: made MakeInitRamFS part of boot environment
git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@2167 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'boot-env/OpenSLX/MakeInitRamFS/Distro')
-rw-r--r--boot-env/OpenSLX/MakeInitRamFS/Distro/Base.pm48
-rw-r--r--boot-env/OpenSLX/MakeInitRamFS/Distro/Debian.pm57
-rw-r--r--boot-env/OpenSLX/MakeInitRamFS/Distro/Suse.pm59
-rw-r--r--boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm57
4 files changed, 221 insertions, 0 deletions
diff --git a/boot-env/OpenSLX/MakeInitRamFS/Distro/Base.pm b/boot-env/OpenSLX/MakeInitRamFS/Distro/Base.pm
new file mode 100644
index 00000000..9be218e8
--- /dev/null
+++ b/boot-env/OpenSLX/MakeInitRamFS/Distro/Base.pm
@@ -0,0 +1,48 @@
+# Copyright (c) 2006, 2007 - 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::Base.pm
+# - provides empty base of the distro-specific part of the OpenSLX
+# MakeInitRamFS API.
+# -----------------------------------------------------------------------------
+package OpenSLX::MakeInitRamFS::Distro::Base;
+
+use strict;
+use warnings;
+
+our $VERSION = 1.01; # API-version . implementation-version
+
+use OpenSLX::Basics;
+
+################################################################################
+### interface methods
+################################################################################
+sub new
+{
+ my $class = shift;
+ my $self = {
+ 'base-name' => 'base',
+ };
+ return bless $self, $class;
+}
+
+sub applyChanges
+{
+}
+
+sub determineMatchingHwinfoVersion
+{
+ my $self = shift;
+ my $distroVersion = shift;
+
+ return '15.3';
+}
+
+1;
diff --git a/boot-env/OpenSLX/MakeInitRamFS/Distro/Debian.pm b/boot-env/OpenSLX/MakeInitRamFS/Distro/Debian.pm
new file mode 100644
index 00000000..30ad4b0d
--- /dev/null
+++ b/boot-env/OpenSLX/MakeInitRamFS/Distro/Debian.pm
@@ -0,0 +1,57 @@
+# Copyright (c) 2006, 2007 - 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::Debian.pm
+# - provides Debian-specific overrides of the MakeInitRamFS::Distro API.
+# -----------------------------------------------------------------------------
+package OpenSLX::MakeInitRamFS::Distro::Debian;
+
+use strict;
+use warnings;
+
+use base qw(OpenSLX::MakeInitRamFS::Distro::Base);
+
+use OpenSLX::Basics;
+
+################################################################################
+### implementation
+################################################################################
+sub new
+{
+ my $class = shift;
+ my $self = {
+ 'base-name' => 'debian',
+ };
+ return bless $self, $class;
+}
+
+sub applyChanges
+{
+ my $self = shift;
+ my $engine = shift;
+
+ $engine->_addFilteredKernelModules( qw( af_packet hid unix ));
+
+ return;
+}
+
+sub determineMatchingHwinfoVersion
+{
+ my $self = shift;
+ my $distroVersion = shift;
+
+ # TODO: fill this map (see Suse.pm for an example)
+ my %versionMap = (
+ );
+ return $versionMap{$distroVersion}
+ || $self->SUPER::determineMatchingHwinfoVersion($distroVersion);
+}
+
+1; \ No newline at end of file
diff --git a/boot-env/OpenSLX/MakeInitRamFS/Distro/Suse.pm b/boot-env/OpenSLX/MakeInitRamFS/Distro/Suse.pm
new file mode 100644
index 00000000..aad790fd
--- /dev/null
+++ b/boot-env/OpenSLX/MakeInitRamFS/Distro/Suse.pm
@@ -0,0 +1,59 @@
+# Copyright (c) 2006, 2007 - 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::SUSE.pm
+# - provides SUSE-specific overrides of the MakeInitRamFS::Distro API.
+# -----------------------------------------------------------------------------
+package OpenSLX::MakeInitRamFS::Distro::Suse;
+
+use strict;
+use warnings;
+
+use base qw(OpenSLX::MakeInitRamFS::Distro::Base);
+
+use OpenSLX::Basics;
+
+################################################################################
+### implementation
+################################################################################
+sub new
+{
+ my $class = shift;
+ my $self = {
+ 'base-name' => 'suse',
+ };
+ return bless $self, $class;
+}
+
+sub applyChanges
+{
+ my $self = shift;
+ my $engine = shift;
+
+ $engine->_addFilteredKernelModules( qw( hid unix ));
+
+ return;
+}
+
+sub determineMatchingHwinfoVersion
+{
+ my $self = shift;
+ my $distroVersion = shift;
+
+ my %versionMap = (
+ '10.2' => '13.11',
+ '10.3' => '14.19',
+ '11.0' => '15.3',
+ );
+ return $versionMap{$distroVersion}
+ || $self->SUPER::determineMatchingHwinfoVersion($distroVersion);
+}
+
+1; \ No newline at end of file
diff --git a/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm b/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm
new file mode 100644
index 00000000..c95ae2d9
--- /dev/null
+++ b/boot-env/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm
@@ -0,0 +1,57 @@
+# Copyright (c) 2006, 2007 - 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;
+}
+
+sub applyChanges
+{
+ my $self = shift;
+ my $engine = shift;
+
+ $engine->_addFilteredKernelModules( qw( unix ));
+
+ return;
+}
+
+sub determineMatchingHwinfoVersion
+{
+ my $self = shift;
+ my $distroVersion = shift;
+
+ # TODO: fill this map (see Suse.pm for an example)
+ my %versionMap = (
+ );
+ return $versionMap{$distroVersion}
+ || $self->SUPER::determineMatchingHwinfoVersion($distroVersion);
+}
+
+1; \ No newline at end of file