SF.net SVN: morphix: [2307] trunk/morph-scripts/morphix-rebrand.sh

[email protected] Mon, 12 Jun 2006 15:32:25 -0700
Newsgroups gmane.linux.morphix.cvs
Message-ID <[email protected]>
Revision: 2307
Author:   bmsleight
Date:     2006-06-12 15:32:17 -0700 (Mon, 12 Jun 2006)
ViewCVS:  http://svn.sourceforge.net/morphix/?rev=2307&view=rev

Log Message:
-----------
morphix-rebrand - work in progrss lots to do.

Added Paths:
-----------
    trunk/morph-scripts/morphix-rebrand.sh
Added: trunk/morph-scripts/morphix-rebrand.sh
===================================================================
--- trunk/morph-scripts/morphix-rebrand.sh	                        (rev 0)
+++ trunk/morph-scripts/morphix-rebrand.sh	2006-06-12 22:32:17 UTC (rev 2307)
@@ -0,0 +1,149 @@
+#!/bin/bash
+#
+# morphix-rebrand
+#
+# Copyleft (c) 2006 Brendan M. Sleight                    #
+#              <bmsleight@barwap._REMOVE_SPAM_TRAP.com>   # 
+#                                                         #
+# This script is licensed under the GNU GPL v2 or later.  #
+#                                                         #
+# On Debian systems, this license can be obtained via     #
+# /usr/share/common-licenses/GPL                          #
+#
+
+get_global_variables ()
+{
+ TMP_DIR=/tmp/morphix-rebrand.$$
+ TMP_FILE=/tmp/morphix-rebrand.$$.tmp
+ OLD_IMAGE_DIR=$TMP_DIR/old_image
+ NEW_IMAGE_DIR=$TMP_DIR/new_image
+ mkdir -p $TMP_DIR
+ mkdir -p $NEW_IMAGE_DIR
+ mkdir -p $OLD_IMAGE_DIR
+ TITLE=$(basename $GRAPHIC .png)
+ echo "Title $TITLE"
+}
+
+mount_and_copy ()
+{
+echo "Mount old image and copying files for new Image"
+mount $STARTISO $OLD_IMAGE_DIR -o loop
+cp -av $OLD_IMAGE_DIR/* $NEW_IMAGE_DIR 	>/dev/null 2>&1
+umount $STARTISO
+echo "Copied old iso"
+OLD_TITLE=$(grep -e "title" -m 1 $NEW_IMAGE_DIR/boot/grub/menu.lst | sed s/title\ //g)
+LOWERCASE_OT=$(echo $OLD_TITLE | tr A-Z a-z)
+UPPERCASE_OT=$(echo $OLD_TITLE | tr a-z A-Z)
+
+echo "Old name " $OLD_TITLE $LOWERCASE_OT $UPPERCASE_OT
+}
+
+grub_title_boot_options ()
+{
+echo
+for TMP_GRUB_FILE in $NEW_IMAGE_DIR/boot/grub/*.lst
+do
+ sed "/title/s/$OLD_TITLE/$TITLE/g" $TMP_GRUB_FILE > $TMP_FILE
+ mv  $TMP_FILE $TMP_GRUB_FILE 
+done
+#Remove BOOT_IMAGE
+for TMP_GRUB_FILE in $NEW_IMAGE_DIR/boot/grub/*.lst
+do
+ sed "/kernel/s/BOOT_IMAGE=[A-z]*\ //g" $TMP_GRUB_FILE > $TMP_FILE
+ mv  $TMP_FILE $TMP_GRUB_FILE 
+done
+#BOOT_IMAGE
+mv $NEW_IMAGE_DIR/base/$LOWERCASE_OT $NEW_IMAGE_DIR/base/$TITLE
+
+#Remove old Username
+for TMP_GRUB_FILE in $NEW_IMAGE_DIR/boot/grub/*.lst
+do
+ sed "/kernel/s/username=[A-z]*\ //g" $TMP_GRUB_FILE > $TMP_FILE
+ mv  $TMP_FILE $TMP_GRUB_FILE 
+done
+
+#Remove old Hostname
+for TMP_GRUB_FILE in $NEW_IMAGE_DIR/boot/grub/*.lst
+do
+ sed "/kernel/s/hostname=[A-z]*\ //g" $TMP_GRUB_FILE > $TMP_FILE
+ mv  $TMP_FILE $TMP_GRUB_FILE 
+done
+
+#Add BOOT_IMAGE username and hostname
+for TMP_GRUB_FILE in $NEW_IMAGE_DIR/boot/grub/*.lst
+do
+ sed "/kernel/s/$/ BOOT_IMAGE=$TITLE hostname=$TITLE username=$TITLE /" $TMP_GRUB_FILE > $TMP_FILE
+# sed "/kernel/s/$/ hostname=$TITLE username=$TITLE /" $TMP_GRUB_FILE > $TMP_FILE
+ mv  $TMP_FILE $TMP_GRUB_FILE 
+done
+}
+
+kernel_image ()
+{
+echo "Kernel Image - to do"
+}
+
+bootsplash ()
+{
+echo "Boot Splash (Grub background) - to do"
+}
+
+linuxrc ()
+{
+cp $NEW_IMAGE_DIR/boot/miniroot.gz $TMP_DIR/
+cd $TMP_DIR/ && gunzip miniroot.gz
+mkdir $TMP_DIR/lxrc
+sync
+mount $TMP_DIR/miniroot $TMP_DIR/lxrc -o loop -t ext2
+sed "s/DERIVATE=.*/DERIVATE=\"$TITLE\"/g" $TMP_DIR/lxrc/linuxrc >$TMP_FILE
+mv $TMP_FILE $TMP_DIR/lxrc/linuxrc
+sed "s/$UPPERCASE_OT/$TITLE/g" $TMP_DIR/lxrc/linuxrc >$TMP_FILE
+sed "s/$LOWERCASE_OT/$TITLE/g" $TMP_FILE >$TMP_DIR/lxrc/linuxrc
+sed "s/$OLD_TITLE/$TITLE/g" $TMP_DIR/lxrc/linuxrc >$TMP_FILE
+mv $TMP_FILE $TMP_DIR/lxrc/linuxrc
+chmod a+x $TMP_DIR/lxrc/linuxrc
+ln -s /${OLD_TITLE}CD $TMP_DIR/lxrc/${TITLE}CD 
+sync
+umount $TMP_DIR/miniroot 
+cd $TMP_DIR/ && gzip miniroot
+cp $TMP_DIR/miniroot.gz $NEW_IMAGE_DIR/boot/
+echo "Images stored in linuxrc (bootsplas) - to do"
+}
+
+xbackground ()
+{
+echo "Xbackground - to do"
+}
+
+cleanup_and_make_iso ()
+{
+make-iso $NEW_IMAGE_DIR $ENDISO
+rm $TMP_DIR -R	2>/dev/null
+rm $TMP_FILE 		2>/dev/null
+}
+
+
+#Main loop
+
+#Confirm parameters
+STARTISO=$1
+ENDISO=$2
+GRAPHIC=$3
+if [ -z "$STARTISO" -a -z "$ENDISO" -a -z "$GRAPHIC" ]; then
+    echo "Usage: $0 old.iso new.iso Rebrand.png"
+    echo
+    echo " This script Re-brands a Morphix CD image using the graphic Rebrand.png"
+    echo " taking Rebrand as the new title."
+    echo " Need to have be able to run the mount command, i.e. must be root"
+    exit
+fi
+
+
+get_global_variables
+mount_and_copy 
+grub_title_boot_options
+kernel_image 
+bootsplash 
+linuxrc 
+xbackground
+cleanup_and_make_iso


Property changes on: trunk/morph-scripts/morphix-rebrand.sh
___________________________________________________________________
Name: svn:executable
   + *


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.