SF.net SVN: morphix: [2537] trunk/morph-scripts/mmorphix/ morphing-morphix-gui.sh
[email protected] Sun, 15 Jul 2007 07:35:03 -0700
| Newsgroups | gmane.linux.morphix.cvs |
|---|---|
| Message-ID | <[email protected]> |
Revision: 2537
http://svn.sourceforge.net/morphix/?rev=2537&view=rev
Author: bmsleight
Date: 2007-07-15 07:35:02 -0700 (Sun, 15 Jul 2007)
Log Message:
-----------
Work in progress
Modified Paths:
--------------
trunk/morph-scripts/mmorphix/morphing-morphix-gui.sh
Modified: trunk/morph-scripts/mmorphix/morphing-morphix-gui.sh
===================================================================
--- trunk/morph-scripts/mmorphix/morphing-morphix-gui.sh 2007-07-15 14:33:27 UTC (rev 2536)
+++ trunk/morph-scripts/mmorphix/morphing-morphix-gui.sh 2007-07-15 14:35:02 UTC (rev 2537)
@@ -64,6 +64,9 @@
SETTING_LOG_COMMANDS=~/mmscript.sh
SETTING_MYMORPH="MyMorph.iso"
SETTING_MYMORPH_MAIN="morphing-morphix.mod"
+ SETTING_CURRENT_BASE="http://surfnet.dl.sourceforge.net/sourceforge/morphix/MorphixBase-0.5-pre6.iso"
+ SETTING_CURRENT_MLK="http://www.barwap.com/morphix/livekiosk/MorphixLiveKiosk.mod"
+ SETTING_MY_MLK="MyMLK.iso"
TMP_FILE=/tmp/mmorphix.$$
TMP_FILE_2=/tmp/mmorphix_.$$
TMP_SCRIPT=/tmp/mmorphix.$$.sh
@@ -233,8 +236,8 @@
MESSAGE_HELP_TITLE="MorphingMorphix Help"
MESSAGE_MAIN_MENU="Welcome to MorphingMorphix"
MESSAGE_MAIN_MENU_1="Submenu [Configure MorphingMorphix]"
-MESSAGE_MAIN_MENU_2="Introduction to isomorph"
-MESSAGE_MAIN_MENU_3="Using isomorph to get a clean base"
+MESSAGE_MAIN_MENU_2="Submenu [Isomorph examples]"
+MESSAGE_MAIN_MENU_3="Building a Customized MorphixLiveKiosk"
MESSAGE_MAIN_MENU_4="Submenu [MiniModules]"
MESSAGE_MAIN_MENU_5="Submenu [MainModules]"
MESSAGE_MAIN_MENU_6="Rebranding a Morphix LiveCD"
@@ -245,6 +248,9 @@
MESSAGE_CONFIGURE_MENU="$MESSAGE_MAIN_MENU_1"
MESSAGE_CONFIGURE_MENU_1="Configure MorphingMorphix"
MESSAGE_CONFIGURE_MENU_2="Remove old CD Images then complete Configuration"
+MESSAGE_ISOMORPH_MENU="$MESSAGE_MAIN_MENU_2"
+MESSAGE_ISOMORPH_MENU_1="Introduction to isomorph"
+MESSAGE_ISOMORPH_MENU_2="Using isomorph to get a clean base"
MESSAGE_MINIMODS_MENU="$MESSAGE_MAIN_MENU_4"
MESSAGE_MINIMODS_MENU_1="Using a XML template to build a MiniModule"
MESSAGE_MINIMODS_MENU_2="Saving the Home Directory to a MiniModule "
@@ -267,8 +273,10 @@
###########################################################
MESSAGE_SETTING_MAKEISO="Setting up Morphing Morphix
-We need to make a iso image for us to morph
-We will use this CD and call the image MyMorph.iso"
+We need a base ISO as a starting point for morphing.
+The easiest way is to download one of the pre-build bases
+available from Morphix.org.
+We will call the image MyMorph.iso"
###########################################################
MESSAGE_SETTING_TMPFS="Setting up Morphing Morphix
@@ -293,6 +301,46 @@
For example we will now run the command :-
isomorph --list MyMorph.iso"
###########################################################
+MESSAGE_BUILD_MLK_1="Building MorphixLiveKiosk
+
+This morph is to build a new MorphixLiveKiosk
+
+It is a straight forward process.
+ - Download the MainModule
+ - Make a MiniModule for the Kiosk Setting
+ - If required build the non-free MiniModules
+ - Add all of the above to the base
+ - Rebrand the ISO"
+###########################################################
+MESSAGE_BUILD_MLK_2="Building MorphixLiveKiosk
+
+Default homepage for MorphixLiveKiosk ?"
+###########################################################
+MESSAGE_BUILD_MLK_3="Building MorphixLiveKiosk
+
+Should the Navigation toolbar be visible ?"
+###########################################################
+MESSAGE_BUILD_MLK_4="Building MorphixLiveKiosk
+
+Do you want to build the non-Free MiniModules which
+contains Non-GPL software; flash and java plugins ?"
+###########################################################
+MESSAGE_BUILD_MLK_5="Building MorphixLiveKiosk
+
+New step is to select a graphics file which will be used
+for rebranding by changing the following:-
+ * Grub Titles - shown on booting
+ * Grub Background - shown on booting
+ * Username, Hostname
+ * Boot-up messages
+ * Boot-up backgrounds
+ * Main Wallpaper
+
+Any Graphic file will do. Rebrand.png, Rebrand.jpg or
+Rebrand.gif The name of the graphics file is important as
+the script takes Rebrand as the new title for the part of
+the LiveCD."
+###########################################################
MESSAGE_MINIMORPH_1="MiniMorph Example
The next Morph is making the MiniModule to auto run an
@@ -323,26 +371,16 @@
###########################################################
MESSAGE_REMOVE_MODS="Remove Modules
-We have now got our CD Image file, by copying this running
-CD. As you have seen in the last example, this image
-contains the MainModule and lots of MiniModules. The easy
-way to make a new LiveCD is to build new MiniModules and a
-new MainModule.
+We can use the tool isomorph to add and remove parts of
+LiveCD.
-Hence the first task is to delete the MainModule and
-MiniModules from the LiveCD image."
-MESSAGE_REMOVE_MODS_1="Remove Modules
+A simple example is to use isomorph remove all the
+MainModules, MiniModules and other additions from the
+LiveCD to get back to a nice clean base.
-We will again use isomorph
-
-isomorph --del-all main ./MyMorph.iso ./tmp.iso
+isomorph --del-all ./MyMorph.iso ./tmp.iso
mv ./tmp.iso ./MyMorph.iso
-isomorph --del-all mini ./MyMorph.iso ./tmp.iso
-mv ./tmp.iso ./MyMorph.iso"
-MESSAGE_REMOVE_MODS_2="Remove Modules
-We can now choose option 2 (isomorph --list) and confirm
-that the MainModule and MiniModules have been removed from
-the LiveCD"
+isomorph --list ./MyMorph.iso"
###########################################################
MESSAGE_MAKE_MINI="Saving files in /home/morph
@@ -780,10 +818,10 @@
configure_mm_submenu;;
2)
log_file "main_menu selected $?"
- isomorph_intro;;
+ isomorph_submenu;;
3)
log_file "main_menu selected $?"
- remove_main_and_minis;;
+ custom_mlk;;
4)
log_file "main_menu selected $?"
minimodules_submenu;;
@@ -821,7 +859,7 @@
1)
set_up_mmorphix;;
2)
-
+ remove_images
set_up_mmorphix;;
3)
main_menu;;
@@ -835,6 +873,28 @@
esac
}
+isomorph_submenu ()
+{
+xdialog_menu "$MESSAGE_ISOMORPH_MENU" \
+ '$MESSAGE_ISOMORPH_MENU_1' '$MESSAGE_ISOMORPH_MENU_2'\
+ '$MESSAGE_MAIN_MENU_RETURN'
+ case $? in
+ 1)
+ isomorph_intro;;
+ 2)
+ remove_main_and_minis;;
+ 3)
+ main_menu;;
+ 254)
+ xdialog_message "$MESSAGE_HELP"
+ xdialog_message "$MESSAGE_HELP_2"
+ xdialog_message "$MESSAGE_HELP_3"
+ configure_mm_submenu;;
+ 255)
+ closing_mmorphix "isomorph_submenu";;
+ esac
+}
+
minimodules_submenu ()
{
xdialog_menu "$MESSAGE_MINIMODS_MENU" \
@@ -944,11 +1004,8 @@
log_file "Images exist"
else
xdialog_message "$MESSAGE_SETTING_MAKEISO"
- log_and_do_command "sudo dd if=/dev/cdrom \
- of=$MNT_POINT/mmorphix/iso/$SETTING_MYMORPH >$TMP_FILE 2>&1 &"
- sleep 4
- log_and_do_command_progress "while pidof dd >/dev/null; do sudo kill -USR1 $(pidof dd); \
- tail -n 1 $TMP_FILE; sleep 2; done"
+ log_and_do_command_progress_pause "wget --output-document=$MNT_POINT/mmorphix/iso/$SETTING_MYMORPH \
+ $SETTING_CURRENT_BASE"
fi
if [ "$MM_IS_SET_UP" = "" ]
then
@@ -987,7 +1044,7 @@
remove_images ()
{
- log_and_do_command "rm -f $MNT_POINT/mmorphix/iso/*"
+ log_and_do_command_progress_pause "rm -f $MNT_POINT/mmorphix/iso/*"
}
is_mmorphix_set_up ()
@@ -1040,15 +1097,11 @@
log_file "remove_main_and_minis"
# MESSAGE_REMOVE_MODS
xdialog_message "$MESSAGE_REMOVE_MODS"
- xdialog_message "$MESSAGE_REMOVE_MODS_1"
- log_and_do_command_progress_pause "sudo isomorph --del-all main
+ log_and_do_command_progress_pause "sudo isomorph --del-all
$MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
- log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
- log_and_do_command_progress_pause "sudo isomorph --del-all mini
- $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
- log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
- xdialog_message "$MESSAGE_REMOVE_MODS_2"
-
+ log_and_do_command_progress_pause "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
+ log_and_do_command_progress_pause "sudo isomorph --list
+ $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH "
fi
main_menu
}
@@ -1132,7 +1185,7 @@
0)
log_and_do_command_progress_pause "sudo mmaker
/usr/share/morphing-morphix/morphing-morphix.xml
- /tmp/$SETTING_MYMORPH_MAIN"
+ /tmp/$"
log_and_do_command_progress_pause "sudo isomorph --add main
/tmp/morphing-morphix.mod
$MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
@@ -1322,6 +1375,90 @@
###########################################################
# #
+# SECTION 19 : BUILD A CUSTOM MORPHIXLIVEKIOSK #
+# #
+# o Download, Build minis, pack - enjoy #
+# #
+###########################################################
+custom_mlk ()
+{
+is_mmorphix_set_up
+ if [ "$?" = "1" ]
+ then
+ log_file "custom_mlk"
+ xdialog_message "$MESSAGE_BUILD_MLK_1"
+ xdialog_input "$MESSAGE_BUILD_MLK" "$MESSAGE_BUILD_MLK_2" "www.morphix.org"
+ HOMEPAGE="$RETURN_VALUE"
+ xdialog_yes_no "$MESSAGE_BUILD_MLK_3"
+ case $? in
+ 0)
+ log_file "See nav toolbar"
+ ECOMMENT_OUT=""
+ COMMENT_OUT="";;
+ 1)
+ log_file "Do not see nav toolbar"
+ ECOMMENT_OUT="-->"
+ COMMENT_OUT="\!--";;
+ 255)
+ closing_mmorphix "custom_mlk";;
+ esac
+ xdialog_yes_no "$MESSAGE_BUILD_MLK_4"
+ case $? in
+ 0)
+ log_file "Non GPL MM"
+ NONFREEMM="YES";;
+ 1)
+ log_file "They will never take our freedom"
+ NONFREEMM="";;
+ 255)
+ closing_mmorphix "custom_mlk";;
+ esac
+ xdialog_file_select "$MESSAGE_BUILD_MLK_5" "$MNT_POINT"
+ REBRAND_GRAPHIC="$RETURN_VALUE"
+ log_and_do_command_progress_pause "wget --output-document=$MNT_POINT/mmorphix/morphed/MorphixLiveKiosk.mod \
+ $SETTING_CURRENT_MLK"
+ sed -e s/ECOMMENTOUTNAVBAR/$ECOMMENTOUT/g /usr/share/morphing-morphix/MorphixMini-KioskSetting.xml.pre >$TMP_FILE
+ sed -e s/COMMENTOUTNAVBAR/$COMMENT_OUT/g $TMP_FILE >$TMP_FILE_2
+ sudo sed -e s/HOMEPAGE/$HOMEPAGE/g /usr/share/morphing-morphix/MorphixMini-KioskSetting.xml
+ log_and_do_command_progress_pause "sudo morphmini /usr/share/morphing-morphix/MorphixMini-KioskSetting.xml \
+ $MNT_POINT/mmorphix/morphed/MorphixMini-KioskSetting.mod"
+ if [ "$NONFREEMM" = "YES" ]
+ then
+ log_and_do_command_progress_pause "sudo morphmini /usr/share/morphing-morphix/MorphixMini-NonFree-FlashPlugin.xml \
+ $MNT_POINT/mmorphix/morphed/MorphixMini-NonFree-FlashPlugin.mod"
+ log_and_do_command_progress_pause "sudo morphmini /usr/share/morphing-morphix/MorphixMini-NonFree-Java.xml \
+ $MNT_POINT/mmorphix/morphed/MorphixMini-NonFree-Java.mod"
+ fi
+ log_and_do_command_progress_pause "sudo isomorph --add main
+ $MNT_POINT/mmorphix/morphed/MorphixLiveKiosk.mod
+ $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
+ log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
+ log_and_do_command_progress_pause "sudo isomorph --add mini
+ $MNT_POINT/mmorphix/morphed/MorphixMini-KioskSetting.mod
+ $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
+ log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
+ if [ "$NONFREEMM" = "YES" ]
+ then
+ log_and_do_command_progress_pause "sudo isomorph --add mini
+ $MNT_POINT/mmorphix/morphed/MorphixMini-NonFree-FlashPlugin.mod
+ $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
+ log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
+ log_and_do_command_progress_pause "sudo isomorph --add mini
+ $MNT_POINT/mmorphix/morphed/MorphixMini-NonFree-Java.mod
+ $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH /tmp/tmp.iso"
+ log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
+ fi
+ log_and_do_command_progress_pause "sudo morphix-rebrand
+ $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH
+ /tmp/tmp.iso
+ $REBRAND_GRAPHIC"
+ log_and_do_command "mv -f /tmp/tmp.iso $MNT_POINT/mmorphix/iso/$SETTING_MYMORPH"
+ fi
+ main_menu
+}
+
+###########################################################
+# #
# SECTION 98 : ABOUT MORPHING-MORPHIX #
# #
###########################################################
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/