summaryrefslogtreecommitdiffstats
path: root/move/tree
diff options
context:
space:
mode:
Diffstat (limited to 'move/tree')
-rwxr-xr-xmove/tree/mdk_behind_totem8
-rwxr-xr-xmove/tree/mdk_totem20
2 files changed, 13 insertions, 15 deletions
diff --git a/move/tree/mdk_behind_totem b/move/tree/mdk_behind_totem
index 11ef2ae22..f8f198cf2 100755
--- a/move/tree/mdk_behind_totem
+++ b/move/tree/mdk_behind_totem
@@ -33,7 +33,7 @@ if [ -z "$totem_pid" -o -z "$ok" ]; then
exit 1
fi
-exec 2> /tmp/mdk_behind_totem.log
+exec &> /tmp/mdk_behind_totem.log
trap 'umount_cd' USR1
@@ -52,10 +52,10 @@ umount_cd() {
mount_cd() {
echo mount_cd
- /image_always/sbin/losetup -r -e gz /image_raw/live_tree.clp /dev/$main_loop
+ /image_always/sbin/losetup -r -e gz /dev/$main_loop /image_raw/live_tree.clp
/image_always/bin/mount /dev/$main_loop /image
- losetup -r -e gz /image_raw/live_tree_boot.clp /dev/$boot_loop
+ losetup -r -e gz /dev/$boot_loop /image_raw/live_tree_boot.clp
mount /dev/$boot_loop /image_boot
ln -sf /image/lib /
@@ -65,7 +65,7 @@ mount_cd() {
while [ -e "/proc/$totem_pid" ]; do
echo "waiting..."
- sleep 1
+ /image_totem/bin/sleep 1
done
mount_cd
diff --git a/move/tree/mdk_totem b/move/tree/mdk_totem
index 857089a1c..f340c6303 100755
--- a/move/tree/mdk_totem
+++ b/move/tree/mdk_totem
@@ -1,14 +1,12 @@
-#!/bin/sh -x
+#!/usr/bin/perl
-# kill 15, fuzzy_pidofs(qr/\bkded\b/);
-# kdesud
+system('mdk_move_loop', 'to_memory', 'always', 'totem');
-# done ASAP since it needs to be done and will speed up totem launch
-mdk_move_loop to_memory always totem
+my $totem_pid = $$;
-cp -a /image_raw/{totem,mdk_behind_totem} /tmp
-
-sudo /tmp/mdk_behind_totem --totem-pid $$ &
-export MDKMOVE=$!
-
-exec /tmp/totem "$@"
+if (my $pid = fork()) {
+ $ENV{MDKMOVE} = $pid;
+ exec 'totem';
+} else {
+ exec 'sudo', 'mdk_behind_totem', '--totem-pid', $totem_pid;
+}