SF.net SVN: morphix: [2411] trunk/how_tos/morphix_docbook.txt

[email protected] Mon, 04 Sep 2006 15:37:58 -0700
Newsgroups gmane.linux.morphix.cvs
Message-ID <[email protected]>
Revision: 2411
          http://svn.sourceforge.net/morphix/?rev=2411&view=rev
Author:   bmsleight
Date:     2006-09-04 15:37:50 -0700 (Mon, 04 Sep 2006)

Log Message:
-----------
Updating manaul to reflect MM_0.3

Modified Paths:
--------------
    trunk/how_tos/morphix_docbook.txt

Modified: trunk/how_tos/morphix_docbook.txt
===================================================================
--- trunk/how_tos/morphix_docbook.txt	2006-09-04 22:06:14 UTC (rev 2410)
+++ trunk/how_tos/morphix_docbook.txt	2006-09-04 22:37:50 UTC (rev 2411)
@@ -263,6 +263,7 @@
 HowTo: Building a new LiveCD in two commands
 --------------------------------------------
 indexterm:HowToLiveCD[HowToLiveCD]
+[[BuildingLiveCDtwocommands]]
 
 * <<SettingUptheBuildEnvironment, Setting Up the Build Environment>>
 * <<GettingtheTemplatesandmainGraphicsFile, Getting the Templates and main Graphics File>>
@@ -443,8 +444,10 @@
 * <<Remove, Remove Modules>>
 * <<MiniMorphExample, MiniMorph Example>>
 * <<HomeDir, Saving files in /home/morph>>
-* <<AutoBuilding, Auto-Building using mmaker>>
-* <<MainModule, Morphing a MainModule>>
+* <<AutoBuilding, Mmaker Example>>
+* <<MainModule, Chrooting a Main Module>>
+* <<Rebrand, Rebrand an ISO>>
+* <<BuildingwholeISO, Building a whole ISO from Scratch>>
 * <<TestQemu, Testing an iso using Qemu>>
 
 [[Introduction]]
@@ -480,6 +483,7 @@
 Remove Modules
 
 We will again use isomorph
+
  isomorph --del-all main ./MyMorph.iso ./tmp.iso
  mv ./tmp.iso ./MyMorph.iso
  isomorph --del-all mini ./MyMorph.iso ./tmp.iso
@@ -569,25 +573,40 @@
 make-mini, along with isomorph to add the MiniModule to the
 image file. 
 
-Commands
  make-mini --homedir --hidden MorphixMini-MM-Saved-Home.mod
  isomorph --add mini MorphixMini-MM-Saved-Home.mod ./MyMorph.iso ./tmp.iso
  mv ./tmp.iso ./MyMorph.iso
 
 [[AutoBuilding]]
 
-Auto-Building Morphix Modules
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mmaker Example
+~~~~~~~~~~~~~~
 
-We will take a look at Module Maker, or MMaker, a tool for autobuilding Morphix modules. Remastering modules is all fine and well, and you can do this just as you can with a compressed KNOPPIX image. However, laziness is seen as a virtue in Morphix-land: one command is all it should take to (re)build a module.
-A look at a module generator
+MMaker is a tool that is quite simple in nature. Using a 
+so-called template, an xml file with all the information 
+about the module you want to build, you can auto-build a 
+Morphix MainModule. 
 
-MMaker is a tool under development at the moment, but is quite simple in nature. Using a so-called template, an xml file with all the information about the module you want to build, you can auto-build a Morphix module:
+That's it kids, we will just have a look at 
+morphing-morphix.xml used to build this MainModule 
+currently running. 
 
- mmaker mytemplate.xml mymodule.mod
+We will then use mmaker to build a new version of the 
+MainModule. Unless you one of the lucky people who has a 
+local repository, you will be using the main Debian repository.
 
-What MMaker does when you execute this command is debootstrap a new debian filesystem using the details in the template, set up the necessary mainmodule directories and installs all packages specified in the template, while using apt to handle any dependancies. Afterwards it compresses the whole bunch into a fresh new module, ready to be added to a Morphix Live CD in the usual manner.
+You need a fast connection to Debian repository and a lot 
+of space to build the MainModule before it is compressed. 
 
+This step could take up to 45 minutes, but hey it is 
+automated!
+
+We will use these commands
+
+ mmaker /usr/share/morphing-morphix/morphing-morphix.xml /tmp/morphing-morphix.mod
+ isomorph --add main /tmp/morphing-morphix.mod ./MyMorph.iso ./tmp.iso
+ mv ./tmp.iso ./MyMorph.iso
+
 As you might have guessed, the template is the key to all of this. A look at one for Morphix LightGUI: [note to editor: the template uses an xml notation, so might not appear when viewing in html]
 
   <comps>
@@ -614,7 +633,7 @@
 
 NB This is a partial template see http://svn.sourceforge.net/viewcvs.cgi/morphix/trunk/mmaker/templates/[] for template examples.
 
-Seems simple, doesn't it? The actual template for LightGUI is quite a bit longer (and contains a package to start xfce4 at boot time), but it's very simple to specify which repositories you want to use, what Debian suite you want, what type of Morphix module you want to autobuild and naturally the packages you want. Currently, MMaker can only build base and main modules . A few tags might need some extra explaining:
+Seems simple, doesn't it? The actual template for MorphingMorphix is quite a bit longer (and contains a package to start xfce4 at boot time), but it's very simple to specify which repositories you want to use, what Debian suite you want, what type of Morphix module you want to autobuild and naturally the packages you want. Currently, MMaker can only build base and main modules . A few tags might need some extra explaining:
 
 <repository> - With this tag you define the Debian repository/repositories from which to build your module. Use the type="plain" attribute when you have a repository without separate suites (You can verify this by checking the repository, if it has a Packages file in the root directory of the repository we call it 'plain'). Normal, Debian-style repositories is default
 
@@ -639,82 +658,85 @@
 
 [[MainModule]]
 
-Morphing a MainModule
-~~~~~~~~~~~~~~~~~~~~~
+Chrooting a Main Module
+~~~~~~~~~~~~~~~~~~~~~~~
 
-The next Morph is make changes to a MainModule, rather than autobuild the module jumo inside the MainModuel and make changes by hand. 
+One of the easiest ways to modify a MainModule is to 
+extract the compressed filesystem then change the root 
+directory to the extracted file system - chroot.
 
-One of the easiest way to modify a MainModule is to extract
-the compressed filesystem then change the root directory
-to the extracted file system - chroot.
-
 Once you have issued the chroot command it is just like you
 are running the compressed file system, rather than the 
 current filesystem.
 
 You can for example
-
-* apt-get install new-application
+* apt-get install new-applications
 * Edit configuration files
 * Have fun ....
 
- #!/bin/bash
- #Setting-up mmorphing
- sudo mount /mnt/hda3 -o dev
- sudo mkdir /mnt/hda3/mmorphix 2>/dev/null
- sudo chown mmorph.users /mnt/hda3/mmorphix 2>/dev/null
- mkdir /mnt/hda3/mmorphix/tmp 2>/dev/null
- mkdir /mnt/hda3/mmorphix/iso 2>/dev/null
- mkdir /mnt/hda3/mmorphix/morphing 2>/dev/null
- mkdir /mnt/hda3/mmorphix/morphed 2>/dev/null
- mkdir /mnt/hda3/mmorphix/mnt 2>/dev/null
- #Setting-up complete
- #Start of My First Morph Commands
- mount Morphing-Morphix_0-0-1.iso /mnt/hda3/mmorphix/mnt -o loop
- # sudo rm -R /mnt/hda3/mmorphix/morphed
- sudo cp -av /mnt/hda3/mmorphix/mnt/* /mnt/hda3/mmorphix/morphed 
- #Start Morphing the main-module
- sudo -R /mnt/hda3/mmorphix/morphing/*
- sudo module-extractor /mnt/hda3/mmorphix/morphed/mainmod/morphing-morphix.mod /mnt/hda3/mmorphix/morphing/
- # resolv.conf required for network
- sudo cp /etc/resolv.conf /mnt/hda3/mmorphix/morphing/etc/resolv.conf
- sudo chroot /mnt/hda3/mmorphix/morphing/ mount -t proc /proc proc
- xterm -e sudo chroot /mnt/hda3/mmorphix/morphing/
- sudo chroot /mnt/hda3/mmorphix/morphing/ umount -lf /proc
- sudo rm /mnt/hda3/mmorphix/morphed/mainmod/morphing-morphix.mod 
- #sudo rm /mnt/hda3/mmorphix/morphed/mainmod/*
- sudo module-builder /mnt/hda3/mmorphix/morphing/ /mnt/hda3/mmorphix/morphed/mainmod/morphing-morphix.mod
- sudo /usr/bin/make-iso /mnt/hda3/mmorphix/morphed /mnt/hda3/mmorphix/iso/My_Morph.iso
+We will now extract the MainModule. This can take a while 
+as ~800M is extracted. We started then dropped in to the
+MainModule root. Once we exit we re-compress the MainModule.
 
+We will use the commands
 
+ isomorph --get main ./MyMorph.iso /tmp/
+ morphix-chroot /tmp/morphing-morphix.mod 
+ isomorph --add main /tmp/morphing-morphix.mod ./MyMorph.iso ./tmp.iso
+ mv ./tmp.iso ./MyMorph.iso
 
+[[Rebrand]]
+
+Rebrand an ISO
+~~~~~~~~~~~~~~
+This script Re-brands a Morphix CD image using a graphic
+file. 
+
+The following will be changed
+
+* Grub Titles
+* Grub Background
+* Username, Hostname
+* Boot-up message
+* Boot-up background
+* Window Manager 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 LiveCD.
+
+We will use these commands
+
+ morphix-rebrand ./MyMorph.iso ./tmp.iso Rebrand.jpg
+ mv ./tmp.iso ./MyMorph.iso
+
+[[BuildingwholeISO]]
+
+Building a whole ISO from Scratch
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+See <<BuildingLiveCDtwocommands, Building a LiveCD using two commands>>
+
+
 [[TestQemu]]
 
 Testing an iso using Qemu
 ~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The next Morph is not really a Morph. It is used to test 
-other morphs.
+other morphs. It is a common tool for Morphers to use.
 
 Qemu is a generic and open source processor emulator which
 achieves a good emulation speed by using dynamic 
 translation.
 
-In short: Boot you LiveCD inside this LiveCD, but a little
-slow. Faster than burning a cd and rebooting. Good for 
-testing
+In short: Boot your LiveCD inside your current operating
+system. A little slower but faster than burning a cd and 
+rebooting. Good for testing.
 
- sudo qemu -cdrom ./My_Morph.iso
+ qemu -boot d -cdrom ./MyMorph.iso
 
 
-Using iBuild
-~~~~~~~~~~~~
-
-To be added. In the meantime, see:
-http://ibuild.livecd.net/[]
-http://wiki.livecd.net/livecd/IbuildHowto[]
-
-
 Appendix FAQ: Frequently Asked Questions FAQ
 --------------------------------------------
 indexterm:FAQ[Frequently Asked Questions]


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

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642