summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--os-plugins/plugins/bootsplash/OpenSLX/OSPlugin/bootsplash.pm35
-rw-r--r--os-plugins/plugins/bootsplash/XX_bootsplash.sh15
2 files changed, 41 insertions, 9 deletions
diff --git a/os-plugins/plugins/bootsplash/OpenSLX/OSPlugin/bootsplash.pm b/os-plugins/plugins/bootsplash/OpenSLX/OSPlugin/bootsplash.pm
index 0d2b566d..17e4416f 100644
--- a/os-plugins/plugins/bootsplash/OpenSLX/OSPlugin/bootsplash.pm
+++ b/os-plugins/plugins/bootsplash/OpenSLX/OSPlugin/bootsplash.pm
@@ -113,6 +113,41 @@ sub suggestAdditionalKernelModules
return @suggestedModules;
}
+sub installationPhase
+{
+ my $self = shift;
+ my $info = shift;
+
+ $self->{pluginRepositoryPath} = $info->{'plugin-repo-path'};
+ $self->{openslxBasePath} = $info->{'openslx-base-path'};
+ my $splashyBinPath =
+ "$self->{openslxBasePath}/lib/plugins/bootsplash/files/bin";
+ my $uClibcPath = "$self->{openslxBasePath}/share/uclib-rootfs/lib";
+ my $pluginRepoPath = "$self->{pluginRepositoryPath}";
+
+ # copy splashy_update into plugin-repo folder
+ mkpath("$pluginRepoPath/bin");
+ mkpath("$pluginRepoPath/lib");
+ slxsystem("cp -a $splashyBinPath/* $pluginRepoPath/bin") == 0
+ or die _tr(
+ "unable to copy splashy to $pluginRepoPath/bin"
+ );
+ slxsystem("cp -a $uClibcPath/libuClibc* pluginRepoPath/lib") == 0
+ or die _tr(
+ "unable to copy libuClibc to $pluginRepoPath/lib"
+ );
+
+ return;
+}
+
+sub removalPhase
+{
+ my $self = shift;
+ my $info = shift;
+
+ return;
+}
+
sub copyRequiredFilesIntoInitramfs
{
my $self = shift;
diff --git a/os-plugins/plugins/bootsplash/XX_bootsplash.sh b/os-plugins/plugins/bootsplash/XX_bootsplash.sh
index c28df473..41471323 100644
--- a/os-plugins/plugins/bootsplash/XX_bootsplash.sh
+++ b/os-plugins/plugins/bootsplash/XX_bootsplash.sh
@@ -18,17 +18,14 @@ if [ -e /initramfs/plugin-conf/bootsplash.conf ]; then
. /initramfs/plugin-conf/bootsplash.conf
if [ $bootsplash_active -ne 0 ]; then
if [ ${no_bootsplash} -eq 0 ]; then
- # make the splashy_update binary available in stage4 ...
- testmkd /mnt/var/lib/openslx/bin
- cp -a /bin/splashy_update /mnt/var/lib/openslx/bin
- # ... and create a runlevelscript that will stop splashy somewhere near
- # the end of stage4
+ # create a runlevelscript that will stop splashy before the start of KDM
d_mkrlscript init splashy.stop "Stopping Splashy ..."
- echo -e "\t/var/lib/openslx/bin/splashy_update exit 2>/dev/null \
+ echo -e "\tLD_PRELOAD=/opt/openslx/plugin-repo/bootsplash/lib \
+ \nt/opt/openslx/plugin-repo/bootsplash/bin/splashy_update \
+ exit 2>/dev/null \
\n\ttype killall >/dev/null 2>&1 && killall -9 splashy \
- \n\trm -f /var/lib/openslx/bin/splashy_update 2>/dev/null \
- \n\trm -f /etc/init.d/splashy.stop 2>/dev/null" \
- >>/mnt/etc/init.d/splashy.stop
+ \n\trm -f /etc/${D_INITDIR}/splashy.stop 2>/dev/null" \
+ >>/mnt/etc/${D_INITDIR}/splashy.stop
d_mkrlscript close splashy.stop ""
fi
fi