summaryrefslogtreecommitdiffstats
path: root/boot-env/OpenSLX/BootEnvironment/PXE.pm
diff options
context:
space:
mode:
authorMichael Janczyk2009-04-02 21:49:25 +0200
committerMichael Janczyk2009-04-02 21:49:25 +0200
commitc8f248395ee147a9147a3c402d5019cad374b2cb (patch)
tree447a5d25d9ac56e338af91428ba62f4f8d714c12 /boot-env/OpenSLX/BootEnvironment/PXE.pm
parentMakefile corrected and example include extended (diff)
downloadcore-c8f248395ee147a9147a3c402d5019cad374b2cb.tar.gz
core-c8f248395ee147a9147a3c402d5019cad374b2cb.tar.xz
core-c8f248395ee147a9147a3c402d5019cad374b2cb.zip
never config, we need only vesamenu.c32, I don't see a point to use menu.c32 anymore
git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@2796 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'boot-env/OpenSLX/BootEnvironment/PXE.pm')
-rw-r--r--boot-env/OpenSLX/BootEnvironment/PXE.pm52
1 files changed, 23 insertions, 29 deletions
diff --git a/boot-env/OpenSLX/BootEnvironment/PXE.pm b/boot-env/OpenSLX/BootEnvironment/PXE.pm
index 3b96796a..2b9d673c 100644
--- a/boot-env/OpenSLX/BootEnvironment/PXE.pm
+++ b/boot-env/OpenSLX/BootEnvironment/PXE.pm
@@ -136,18 +136,7 @@ sub _getTemplate
my $self = shift;
return $self->{'pxe-template'} if $self->{'pxe-template'};
-
- my ($sec, $min, $hour, $day, $mon, $year) = (localtime);
- $mon++;
- $year += 1900;
- my $callDate = sprintf('%04d-%02d-%02d', $year, $mon, $day);
- my $callTime = sprintf('%02d:%02d:%02d', $hour, $min, $sec);
-
- # generate PXE-Menu
- my $pxeTemplate =
- "# generated by slxconfig-demuxer (on $callDate at $callTime)\n";
- # first check for theme
my $basePath = $openslxConfig{'base-path'};
my $configPath = $openslxConfig{'config-path'};
my $tftpServer = $openslxConfig{'tftp-server-ip'};
@@ -157,8 +146,25 @@ sub _getTemplate
}
else {
$tftpServer = "";
- }
+ my ($sec, $min, $hour, $day, $mon, $year) = (localtime);
+ $mon++;
+ $year += 1900;
+ my $callDate = sprintf('%04d-%02d-%02d', $year, $mon, $day);
+ my $callTime = sprintf('%02d:%02d:%02d', $hour, $min, $sec);
+
+ # generate PXE-Menu
+ my $pxeTemplate =
+ "# generated by slxconfig-demuxer (on $callDate at $callTime)\n";
+ # append tftp setver prefix if necessary
+ $pxeTemplate .= "\nDEFAULT $tftpServer";
+ $pxeTemplate .= "vesamenu.c32\n";
+ # include static defaults
+ $pxeTemplate .= "\n# static configuration (override with include file)\n";
+ $pxeTemplate .= "NOESCAPE 0\n";
+ $pxeTemplate .= "PROMPT 0\n";
+
+ # first check for theme
# let user stuff in config path win over our stuff in base path
my $pxeThemePath;
my $pxeThemeInConfig
@@ -173,7 +179,7 @@ sub _getTemplate
$pxeThemePath = $pxeThemeInBase;
}
}
- # include theme specific stuff from above
+ # include theme specific stuff
if (defined $pxeThemePath) {
$pxeTemplate .= "\n# theme specific configuration from $pxeThemePath\n";
$pxeTemplate .= slurpFile("$pxeThemePath/theme.conf");
@@ -185,29 +191,17 @@ sub _getTemplate
while ($pxeTemplate =~ m{^\s*MENU BACKGROUND (\S+?)\s*$}gims) {
chomp($pic = $1);
}
- my $picPrefix = $tftpServer;
- $picPrefix .= $pic;
- $pxeTemplate =~ s,$pic,$picPrefix,g;
}
if (defined $pic) {
my $pxeBackground = "$pxeThemePath/$pic";
- # vesamenu.c32 if $pic
- $pxeTemplate .= "\nDEFAULT $tftpServer";
- $pxeTemplate .= "vesamenu.c32\n";
+ my $picPrefix = $tftpServer;
+ # append tftp setver prefix to $pic
+ $picPrefix .= $pic;
+ $pxeTemplate =~ s,$pic,$picPrefix,g;
if (-e $pxeBackground && !$self->{'dry-run'}) {
slxsystem(qq[cp "$pxeBackground" $self->{'target-path'}/]);
}
}
- else {
- # we only need menu.c32 if no $pic
- $pxeTemplate .= "\nDEFAULT $tftpServer";
- $pxeTemplate .= "menu.c32\n";
- }
-
- # include defaults
- $pxeTemplate .= "\n# static configuration\n";
- $pxeTemplate .= "NOESCAPE 0\n";
- $pxeTemplate .= "PROMPT 0\n";
# include slxsettings
$pxeTemplate .= "\n# slxsettings configuration\n";