summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile6
-rw-r--r--boot-env/OpenSLX/BootEnvironment/PXE.pm12
-rw-r--r--boot-env/OpenSLX/BootEnvironment/Preboot/CD.pm99
-rwxr-xr-xboot-env/preboot/cd/iso/isolinux/menu.c32bin57140 -> 0 bytes
-rw-r--r--boot-env/syslinux/LICENSE (renamed from boot-env/preboot/cd/iso/LICENSE)0
-rw-r--r--boot-env/syslinux/README.iso (renamed from boot-env/preboot/cd/iso/README)0
-rw-r--r--boot-env/syslinux/README.pxe (renamed from boot-env/pxe/Readme.pxe)11
-rw-r--r--boot-env/syslinux/initramfs-shutdown (renamed from boot-env/pxe/initramfs-shutdown)bin665088 -> 665088 bytes
-rw-r--r--boot-env/syslinux/isolinux.bin (renamed from boot-env/preboot/cd/iso/isolinux/isolinux.bin)bin14336 -> 14336 bytes
-rw-r--r--boot-env/syslinux/kernel-shutdown (renamed from boot-env/pxe/kernel-shutdown)bin688752 -> 688752 bytes
-rwxr-xr-xboot-env/syslinux/mboot.c32 (renamed from boot-env/pxe/mboot.c32)bin31148 -> 31148 bytes
-rw-r--r--boot-env/syslinux/pxechain.com (renamed from boot-env/pxe/pxechain.com)bin998 -> 998 bytes
-rw-r--r--boot-env/syslinux/pxelinux.0 (renamed from boot-env/pxe/pxelinux.0)bin16138 -> 16138 bytes
-rw-r--r--boot-env/syslinux/pxemenu-bottom.example (renamed from boot-env/pxe/menu-bottom.example)2
-rw-r--r--boot-env/syslinux/pxemenu-include.example (renamed from boot-env/pxe/menu-include.example)2
-rw-r--r--boot-env/syslinux/themes/openslx/openslx.png (renamed from boot-env/pxe/themes/openslx/openslx.png)bin20453 -> 20453 bytes
-rw-r--r--boot-env/syslinux/themes/openslx/theme.conf (renamed from boot-env/pxe/themes/openslx/theme.conf)2
-rwxr-xr-xboot-env/syslinux/vesamenu.c32 (renamed from boot-env/pxe/vesamenu.c32)bin147728 -> 147728 bytes
-rw-r--r--lib/OpenSLX/Basics.pm2
19 files changed, 92 insertions, 44 deletions
diff --git a/Makefile b/Makefile
index 10225266..07929f55 100644
--- a/Makefile
+++ b/Makefile
@@ -135,7 +135,7 @@ supported."; \
plain-install:
@if test "${TRACE_INSTALLATION}" = "1"; then set -x; fi; \
echo "Installing OpenSLX project files"; \
- mkdir -p $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/boot-env/pxe/themes \
+ mkdir -p $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/boot-env/syslinux/themes \
-p $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/lib \
-p $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/bin \
-p $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/share/boot-env \
@@ -192,8 +192,8 @@ plain-install:
tar -xp -C $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/share; \
tar --exclude=.svn --exclude *.example --exclude OpenSLX -cp boot-env | \
tar -xp -C $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/share/; \
- cp -p boot-env/pxe/menu-*.example boot-env/pxe/Readme.pxe \
- $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/boot-env/pxe/; \
+ cp -p boot-env/syslinux/pxemenu-*.example boot-env/syslinux/README.pxe \
+ $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/boot-env/syslinux/; \
cp -p tools/mksquashfs $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/share/squashfs/; \
tar --exclude=.svn -cp -C initramfs tpm | \
tar -xp -C $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/share; \
diff --git a/boot-env/OpenSLX/BootEnvironment/PXE.pm b/boot-env/OpenSLX/BootEnvironment/PXE.pm
index 35b0a3b8..ceb9e1de 100644
--- a/boot-env/OpenSLX/BootEnvironment/PXE.pm
+++ b/boot-env/OpenSLX/BootEnvironment/PXE.pm
@@ -166,7 +166,7 @@ sub writeBootloaderMenuFor
$pxeConfig .= $slxLabels;
# fetch PXE-bottom iclude, if exists (overwrite existing definitions)
my $pxeBottomFile
- = "$openslxConfig{'config-path'}/boot-env/pxe/menu-bottom";
+ = "$openslxConfig{'config-path'}/boot-env/syslinux/pxemenu-bottom";
if (-e $pxeBottomFile) {
$pxeConfig .= "\n# configuration from include $pxeBottomFile\n";
$pxeConfig .= slurpFile($pxeBottomFile);
@@ -189,7 +189,7 @@ sub _getTemplate
my $basePath = $openslxConfig{'base-path'};
my $configPath = $openslxConfig{'config-path'};
- my $pxeTheme = $openslxConfig{'pxe-theme'};
+ my $pxeTheme = $openslxConfig{'syslinux-theme'};
my ($sec, $min, $hour, $day, $mon, $year) = (localtime);
$mon++;
@@ -210,9 +210,9 @@ sub _getTemplate
# let user stuff in config path win over our stuff in base path
my $pxeThemePath;
my $pxeThemeInConfig
- = "$configPath/boot-env/pxe/themes/${pxeTheme}";
+ = "$configPath/boot-env/syslinux/themes/${pxeTheme}";
my $pxeThemeInBase
- = "$basePath/share/boot-env/pxe/themes/${pxeTheme}";
+ = "$basePath/share/boot-env/syslinux/themes/${pxeTheme}";
if (-e "$pxeThemeInConfig/theme.conf") {
$pxeThemePath = $pxeThemeInConfig;
}
@@ -251,7 +251,7 @@ sub _getTemplate
# fetch PXE-include, if exists (overwrite existing definitions)
my $pxeIncludeFile
- = "$openslxConfig{'config-path'}/boot-env/pxe/menu-include";
+ = "$openslxConfig{'config-path'}/boot-env/syslinux/pxemenu-include";
if (-e $pxeIncludeFile) {
$pxeTemplate .= "\n# configuration from include $pxeIncludeFile\n";
$pxeTemplate .= slurpFile($pxeIncludeFile);
@@ -279,7 +279,7 @@ sub _prepareBootloaderConfigFolder
'mboot.c32', 'kernel-shutdown', 'initramfs-shutdown') {
if (!-e "$pxePath/$file") {
slxsystem(
- qq[cp -p "$basePath/share/boot-env/pxe/$file" $pxePath/]
+ qq[cp -p "$basePath/share/boot-env/syslinux/$file" $pxePath/]
);
}
}
diff --git a/boot-env/OpenSLX/BootEnvironment/Preboot/CD.pm b/boot-env/OpenSLX/BootEnvironment/Preboot/CD.pm
index 7fc61875..a6c36cd7 100644
--- a/boot-env/OpenSLX/BootEnvironment/Preboot/CD.pm
+++ b/boot-env/OpenSLX/BootEnvironment/Preboot/CD.pm
@@ -29,7 +29,7 @@ sub createImage
my $self = shift;
my $client = shift;
my $info = shift;
-
+
vlog(
0,
_tr(
@@ -39,48 +39,95 @@ sub createImage
);
my $imageDir = "$openslxConfig{'public-path'}/images/$client->{name}/cd";
- mkpath($imageDir) unless $self->{'dry-run'};
+ my $isoDir = "$imageDir/iso/isolinux";
+ mkpath($isoDir) unless $self->{'dry-run'};
# copy static data
- my $dataDir = "$openslxConfig{'base-path'}/share/boot-env/preboot/cd";
- slxsystem(qq{rsync -rlpt $dataDir/iso "$imageDir/"})
- unless $self->{'dry-run'};
+ my $dataDir = "$openslxConfig{'base-path'}/share/boot-env/syslinux";
+ for my $file ('LICENSE', 'README.iso', 'vesamenu.c32', 'isolinux.bin') {
+ if (!-e "$isoDir/$file") {
+ slxsystem(
+ qq[cp -p "$dataDir/$file" "$isoDir/"]
+ )
+ unless $self->{'dry-run'};
+ }
+ }
# copy kernel (take the one from the given system info)
my $kernelFile = $info->{'kernel-file'};
my $kernelName = basename($kernelFile);
- slxsystem(qq{cp -p "$kernelFile" "$imageDir/iso/isolinux/vmlinuz"})
+ slxsystem(qq{cp -p "$kernelFile" "$isoDir/vmlinuz"})
unless $self->{'dry-run'};
# create initramfs
- my $initramfsName = qq{"$imageDir/iso/isolinux/initramfs"};
+ my $initramfsName = qq{"$isoDir/initramfs"};
$self->makePrebootInitRamFS($info, $initramfsName, $client);
# write trivial isolinux config
- my $isolinuxConfig = unshiftHereDoc(<<" End-of-Here");
- PROMPT 0
- TIMEOUT 100
- DEFAULT menu.c32
+ # include static defaults
+ my $isolinuxConfig = "DEFAULT vesamenu.c32\n";
+ $isolinuxConfig .= "PROMPT 0\n";
+ $isolinuxConfig .= "TIMEOUT 100\n";
+
+ # theme stuff
+ my $basePath = $openslxConfig{'base-path'};
+ my $configPath = $openslxConfig{'config-path'};
+ my $isoTheme = $openslxConfig{'syslinux-theme'};
+
+ my $isoThemePath;
+ my $isoThemeInConfig
+ = "$configPath/boot-env/syslinux/themes/${isoTheme}";
+ my $isoThemeInBase
+ = "$basePath/share/boot-env/syslinux/themes/${isoTheme}";
+ if (-e "$isoThemeInConfig/theme.conf") {
+ $isoThemePath = $isoThemeInConfig;
+ }
+ else {
+ if (-e "$isoThemeInBase/theme.conf") {
+ $isoThemePath = $isoThemeInBase;
+ }
+ }
+ # include theme specific stuff
+ if (defined $isoThemePath) {
+ $isolinuxConfig .= slurpFile("$isoThemePath/theme.conf");
+ }
+
+ # copy background picture if exists
+ my $pic;
+ if (defined $isoTheme) {
+ while ($isolinuxConfig =~ m{^\s*MENU BACKGROUND (\S+?)\s*$}gims) {
+ chomp($pic = $1);
+ }
+ }
+ if (defined $pic) {
+ my $isoBackground = "$isoThemePath/$pic";
+ if (-e $isoBackground && !$self->{'dry-run'}) {
+ slxsystem(qq[cp "$isoBackground" "$isoDir/"]);
+ }
+ }
+
+ # write trivial isolinux config
+ $isolinuxConfig .= unshiftHereDoc(<<" End-of-Here");
MENU TITLE Welcome to OpenSLX PreBoot ISO/CD (Mini Linux/Kexec)
LABEL SLXSTDBOOT
- MENU LABEL OpenSLX PreBoot - Stateless Netboot Linux ...
- MENU DEFAULT
- KERNEL vmlinuz
- APPEND initrd=initramfs vga=0x317
- TEXT HELP
+ MENU LABEL OpenSLX PreBoot - Stateless Netboot Linux ...
+ MENU DEFAULT
+ KERNEL vmlinuz
+ APPEND initrd=initramfs vga=0x317
+ TEXT HELP
Use this (default) entry if you have configured your client.
- You have chance to edit the kernel commandline by hitting the
- TAB key (e.g. for adding debug=3 to it for bug hunting) ...
- ENDTEXT
+ You have chance to edit the kernel commandline by hitting
+ the TAB key (e.g. for adding debug=3 to it for bug hunting).
+ ENDTEXT
LABEL LOCALBOOT
- MENU LABEL Boot locally (skip OpenSLX PreBoot) ...
- LOCALBOOT -1
- TEXT HELP
- Gets you out of here by booting from next device in BIOS boot
- order.
- ENDTEXT
+ MENU LABEL Boot locally (skip OpenSLX PreBoot) ...
+ LOCALBOOT -1
+ TEXT HELP
+ Gets you out of here by booting from next device in BIOS
+ boot order.
+ ENDTEXT
End-of-Here
- spitFile("$imageDir/iso/isolinux/isolinux.cfg", $isolinuxConfig);
+ spitFile("$isoDir/isolinux.cfg", $isolinuxConfig);
my $mkisoCmd = unshiftHereDoc(<<" End-of-Here");
mkisofs
diff --git a/boot-env/preboot/cd/iso/isolinux/menu.c32 b/boot-env/preboot/cd/iso/isolinux/menu.c32
deleted file mode 100755
index 9413ec46..00000000
--- a/boot-env/preboot/cd/iso/isolinux/menu.c32
+++ /dev/null
Binary files differ
diff --git a/boot-env/preboot/cd/iso/LICENSE b/boot-env/syslinux/LICENSE
index 7233bc7e..7233bc7e 100644
--- a/boot-env/preboot/cd/iso/LICENSE
+++ b/boot-env/syslinux/LICENSE
diff --git a/boot-env/preboot/cd/iso/README b/boot-env/syslinux/README.iso
index f9abdbea..f9abdbea 100644
--- a/boot-env/preboot/cd/iso/README
+++ b/boot-env/syslinux/README.iso
diff --git a/boot-env/pxe/Readme.pxe b/boot-env/syslinux/README.pxe
index 84fea704..9a14ee52 100644
--- a/boot-env/pxe/Readme.pxe
+++ b/boot-env/syslinux/README.pxe
@@ -26,12 +26,12 @@ Example how the PXElinux information is gathered:
##### #####
# #
# TIMEOUT 100 #
-# TOTALTIMEOUT 600 #
+# TOTALTIMEOUT 600 #
# MENU MASTER PASSWD secret #
# MENU TITLE Welcome to OpenSLX #
# #
-##### after this /etc/opt/openslx/boot-env/pxe/menu-include is included #####
-##### if it is existing, overriding above statements #####
+##### after this /etc/opt/openslx/boot-env/syslinux/pxemenu-include is #####
+##### included if it is existing, overriding above statements #####
# #
# MENU PASSPROMPT Gesicherter Bereich, bitte Passwort eingeben: #
# MENU AUTOBOOT Auswahl startet in # Sekunden #
@@ -54,8 +54,9 @@ Example how the PXElinux information is gathered:
# . #
# . #
# #
-##### at the end /etc/opt/openslx/boot-env/pxe/menu-bottom is being incl. #####
-##### if existing, please specify only systems and further menus #####
+##### at the end /etc/opt/openslx/boot-env/syslinux/pxemenu-bottom is #####
+##### being incl. if existing #####
+##### please specify only systems and further menus #####
# #
# MENU SEPARATOR #
# LABEL test #
diff --git a/boot-env/pxe/initramfs-shutdown b/boot-env/syslinux/initramfs-shutdown
index 3e4376bd..3e4376bd 100644
--- a/boot-env/pxe/initramfs-shutdown
+++ b/boot-env/syslinux/initramfs-shutdown
Binary files differ
diff --git a/boot-env/preboot/cd/iso/isolinux/isolinux.bin b/boot-env/syslinux/isolinux.bin
index 80f71c98..80f71c98 100644
--- a/boot-env/preboot/cd/iso/isolinux/isolinux.bin
+++ b/boot-env/syslinux/isolinux.bin
Binary files differ
diff --git a/boot-env/pxe/kernel-shutdown b/boot-env/syslinux/kernel-shutdown
index ddb180dd..ddb180dd 100644
--- a/boot-env/pxe/kernel-shutdown
+++ b/boot-env/syslinux/kernel-shutdown
Binary files differ
diff --git a/boot-env/pxe/mboot.c32 b/boot-env/syslinux/mboot.c32
index dfff3789..dfff3789 100755
--- a/boot-env/pxe/mboot.c32
+++ b/boot-env/syslinux/mboot.c32
Binary files differ
diff --git a/boot-env/pxe/pxechain.com b/boot-env/syslinux/pxechain.com
index 8c4e0c5b..8c4e0c5b 100644
--- a/boot-env/pxe/pxechain.com
+++ b/boot-env/syslinux/pxechain.com
Binary files differ
diff --git a/boot-env/pxe/pxelinux.0 b/boot-env/syslinux/pxelinux.0
index 743948e3..743948e3 100644
--- a/boot-env/pxe/pxelinux.0
+++ b/boot-env/syslinux/pxelinux.0
Binary files differ
diff --git a/boot-env/pxe/menu-bottom.example b/boot-env/syslinux/pxemenu-bottom.example
index 6e580a03..29ceee3c 100644
--- a/boot-env/pxe/menu-bottom.example
+++ b/boot-env/syslinux/pxemenu-bottom.example
@@ -2,7 +2,7 @@
# labels, please define only further menus and systems
# for theme configuration use theme.conf in your theme directory
# general settings can be set via slxsettings
-# please copy to menu-bottom if needed
+# please copy to pxemenu-bottom if needed
## example: shutdown label in menu
#LABEL shutdown
diff --git a/boot-env/pxe/menu-include.example b/boot-env/syslinux/pxemenu-include.example
index 9f36df23..c09f8e70 100644
--- a/boot-env/pxe/menu-include.example
+++ b/boot-env/syslinux/pxemenu-include.example
@@ -3,7 +3,7 @@
# it will overwrite existing defs
# for theme configuration use theme.conf in your theme directory
# general settings can be set via slxsettings
-# please copy to menu-include if needed
+# please copy to pxemenu-include if needed
## example german help:
#MENU PASSPROMPT Gesicherter Bereich, bitte Passwort eingeben:
diff --git a/boot-env/pxe/themes/openslx/openslx.png b/boot-env/syslinux/themes/openslx/openslx.png
index ccf8cc0a..ccf8cc0a 100644
--- a/boot-env/pxe/themes/openslx/openslx.png
+++ b/boot-env/syslinux/themes/openslx/openslx.png
Binary files differ
diff --git a/boot-env/pxe/themes/openslx/theme.conf b/boot-env/syslinux/themes/openslx/theme.conf
index c1fab72b..e28562d6 100644
--- a/boot-env/pxe/themes/openslx/theme.conf
+++ b/boot-env/syslinux/themes/openslx/theme.conf
@@ -1,7 +1,7 @@
# openslx theme style definition
# please define only look of your theme
# for non-theme definitions use slxsettings
-# or include file in /etc/opt/openslx/boot-env/pxe/menu-include
+# or include file in /etc/opt/openslx/boot-env/syslinux/pxemenu-include
MENU BACKGROUND openslx.png
MENU WIDTH 78
diff --git a/boot-env/pxe/vesamenu.c32 b/boot-env/syslinux/vesamenu.c32
index d9884770..d9884770 100755
--- a/boot-env/pxe/vesamenu.c32
+++ b/boot-env/syslinux/vesamenu.c32
Binary files differ
diff --git a/lib/OpenSLX/Basics.pm b/lib/OpenSLX/Basics.pm
index e125cd7e..c14046eb 100644
--- a/lib/OpenSLX/Basics.pm
+++ b/lib/OpenSLX/Basics.pm
@@ -107,8 +107,8 @@ I<slxsettings>-script, so please look there if you'd like to know more.
'mirrors-to-try-count' => '20',
'mirrors-to-use-count' => '5',
'ossetup-max-try-count' => '5',
+ 'syslinux-theme' => 'openslx',
'pxe-passwd' => 'secret',
- 'pxe-theme' => 'openslx',
'pxe-timeout' => '100',
'pxe-title' => 'Welcome to OpenSLX',
'pxe-totaltimeout' => '600',