LiveCD Notes: Difference between revisions

From IHRIS Wiki
m (copy-paste my steps)
m (typo)
Line 32: Line 32:
::Firefox is started without a window manager running.  When it exits, the user is (currently) returned to the GDM login screen.
::Firefox is started without a window manager running.  When it exits, the user is (currently) returned to the GDM login screen.


====Steps for how Mark made the image===
====Steps for how Mark made the image====


** Source: http://mirrors.kernel.org/ubuntu-releases/jaunty/ubuntu-9.04-desktop-i386.iso
** Source: http://mirrors.kernel.org/ubuntu-releases/jaunty/ubuntu-9.04-desktop-i386.iso

Revision as of 09:03, 30 September 2009

See the Ubuntu LiveCD page for details. This page just outlines the steps particular to the iHRIS LiveCD

Source

The image used to create this CD is stored on ihrisdev under /home/mah/ihris-live. Use rsync to copy the structure there to your work area.

  sudo env SSH_AUTH_SOCK=$SSH_AUTH_SOCK rsync -a --numeric-ids \
           --progress hrisdev.intrahealth.org:/home/mah/ihris-live/ ihris-live/

Scripts

I've written a few simple scripts to automate some of the tedious steps. These are located directly under ihris-live:

edit-chroot

This will drop you into a properly configured chroot that is, for all intents and purposes, the filesystem that the LiveCD will use. After you exit, you'll be returned to your command prompt.

NOTE: If you try to run MySQL from chroot, you'll run into problems if you already have an instance of MySQL running on your workstation since it will try to listen on the same port. Other processes, like Apache will also cause conflicts. make-iso

After running edit-chroot, use this script to create the ISO.

The other scripts should not be necessary for regular use.

Of Note

A user is created from the contents of /etc/skel when the LiveCD begins running. Anything you put in here will be in the LiveCD user's environment. Here is a list of notable modifications to this environment:

Mark's Image

R-Kiosk plugin

A .mozilla directory is set up with the R-Kiosk plugin installed. I had to edit the .mozilla/firefox/d0i2gqoj.default/extensions/{4D498D0A-05AD-4fdb-97B5-8A0AABC1FC5B}/install.rdf file and change em:maxVersion from “3.0” to “3.0.*” to get the kiosk plugin to work on boot-up

.xsession file

Firefox is started without a window manager running. When it exits, the user is (currently) returned to the GDM login screen.

Steps for how Mark made the image

                  evolution evolution-common evolution-plugins evolution-indicator evolution-exchange \
                  ekiga evolution-data-server \
                  evolution-documentation-en evolution-data-server \
                  evolution-documentation-en f-spot gnome-games-data \
                  gnome-games pidgin gnome-games pidgin-otr pidgin-libnotify

See http://people.debian.org/~hmh/invokerc.d-policyrc.d-specification.txt

# cat > /usr/sbin/policy-rc.d
 #!/bin/sh
 exit 101
 ^D
# chmod +x /usr/sbin/policy-rc.d
    • aptitude update
    • aptitude dist-upgrade
    • aptitude install flashplugin-installer
    • if kernel was upgraded (look under chroot's /boot)
      • aptitude purge old version
      • outside of chroot:
        • cp edit/boot/vmlinuz* extract-cd/casper/vmlinuz
        • cp edit/boot/initrd* extract-cd/casper/initrd.gz
    • If proc or sys won't umount from the chroot, try turning off klog
    • Extract toolkit to extract-cd/ihris-live/toolkit

http://www.capacityproject.org/hris/hris-toolkit/hris-toolkit.zip

    • Extract touch demo to extract-cd/ihris-live/demo

http://www.ibiblio.org/litlfred/ihris/ihris_demo.zip

    • Extract resources to extract-cd/ihris-live/resources

currently get these from Carol


EOP Image

It is on hrisdev:~/litlfred/eop_live_dvd.tar.gz (gzipped w/ --rsyncable) It is based on mark's image with the changes as detailed below. I updated make-iso to clean out the log and temporary files.

  • under chroot:
    • uncomment all the #deb lines in /etc/apt/sources.list
    • apt-get install flashplugin-nonfree evince
  • created edit/usr/share/i2ce/lib/3.0
  • unpacked the ihris-suite-full-3.1.4.tgz in edit/usr/share/i2ce/lib/3.0
  • database setup chroot:
    • kill mysqld before chroot.
    • sudo ./edit-chroot (the rest of this bullet is under chroot)
    • start mysqld (mysql root user has no password)
    • a2enmod rewrite
    • edit /etc/apache2/sites-available/000-default so that /var/www has overide all set
    • ihris_* tables in database were dropped.
    • for each of the $software in manage,qualify,plan
      • ln -s /usr/share/i2ce/lib/3.0/ihris-$software/sites/Demo/pages /var/www/$software
      • cd /var/www/$software
      • cp htaccess.template .htaccess -- and edit to so docuement root is /$software
      • mkdir -p local
      • cp config.values.php local/config.values.php
      • vi local/config.values.php:
        • setup the database user, password, path to i2ce, path to site config file
      • php index.php
  • extract-cd/isolinx/splash.pcx -- changed unbuntu icon to ihris
  • under in edit/
    • etc/skel
      • removed the .xsession file from mark's image
      • The r-kiosk plugin from mark's was removed.
      • in .mozilla/firefox/d0i2gg0j.default/pref.js:
        • added in "user_pref("toolkit.networkmanager.disable", true);" so that firefox does not keep switching to work-offline mode
      • in .mozilla/firefox/d0i2gg0j.default/extensions.ini:
        • removed the line enabling the r-kiosk
      • changed examples.desktop to:
[Desktop Entry]
Version=1.0
Type=Link
Name=iHRIS Demo
Comment=Live iHRIS Demo
URL=http://localhost
Icon=/var/www/ihris_logo.png
    • var/www has:
      • index.html which links the demo, toolkit, resources and the iHRIS software
      • supporting image files for index.html
      • ihris_logo.png (used in the desktop link above)
      • demo/ - a directory containing the touch demo
      • resource/ - a directory with the hr strengthening news briefs
      • toolkit/ - a directory containing the hris strengthening toolkit
  • added in extract-cd/
    • autorun.inf
    • autorun.ico
    • index.html a file identicial to the one in edit/var/www/index.html except:
      • clicking on manage, qualify, etc says to reboot with the dvd in the drive
      • added the magical so that explored does not complain
    • supporting image files for index.html
    • demo/ - a directory containing the touch demo
    • resource/ - a directory with the hr strengthening news briefs
    • toolkit/ - a directory containing the hris strengthening toolkit
    • isolinux/lang:
      • created and added the line 'en' so that the defaul language is english
      • set the timeout to 50 (5 seconds)
    • isolinux/test.cfg -- changed the menu option so that 'Try iHRIS Live' is the only thing shown
    • isolinux/langlist -- removed everything except
    • isolinux/isolinx.cfg set timeout to 50 (5 seconds)
  • under sudo ./edit-chroot
    • apt-get clean
    • dpkg-reconfigure gdm (gdm was spitting us out to busybox)
    • mkinitramfs -o /initrd.img 2.6.28-15-generic (don't know if this was needed but probably was)

To Do

  • fixup the desktop icon to launch the ihris suite (done by carl).
  • Change the progress bar boot branding (usplash)
  • skip the gdm user login
  • set a desktop background
  • add in a page/add to index.html about contacting us, the projects, where to find the software.
  • remove emacs backup ~ files.
  • redo the ihris icon on the boot image (extract-cd/isolinux/splash.pcx) so that the icon looks better on a black backround. maybe also change the text to say iHRIS instead of ubuntu. do we need other branding here e.g. capacity/usaid?
  • when all the .deb demo packages for ihris are done, use those to populate the database
  • make it boot faster