In order to install RedHat 5.2 on a VGA system with a monochrome
monitor, it is necessary to modify init.c to allow the setting of the
NEWT_MONO environment variable so that the RedHat installation
programs do not attempt to use colours.

To modify init.c and create a new installation boot diskette, follow
this procedure:

1) As root, mount the RedHat 5.2 cdrom:

   mount /mnt/cdrom

2) Copy the misc/src, images and dosutils directories from the CD to a
working directory (you probably do not need to copy all of this, but
if you have > 60 MB, then this seems like the simplest approach):

   mkdir /home/newdir
   cd /mnt/cdrom
   tar -cf - misc/src images dosutils | (cd /home/newdir && tar -xpvf -)

2a) If your CD was created with translation tables, then remove them
from the directory tree:

   find /home/newdir -name TRANS.TBL -exec rm -f {} \;

3) Go to the misc/src/installinit directory in the new tree and apply
this patch (you can put the patch file wherever you want):

   cd /home/newdir/misc/src/installinit
   patch < /tmp/mono_rh52.patch

4) Build init and copy it to the initrd tree:

   make
   cp -i init ../trees/initrd/sbin/.

5) Cd to the trees directory and rebuild the boot image:

   cd ../trees
   ./mkboot -f

6) Copy the boot image to a new (previously formatted) floppy:

   dd if=/home/newdir/images/boot.img of=/dev/fd0H1440 bs=1440k

7) Reboot. At the RedHat installation prompt, add the "mono" option:

   linux mono

-----------------------init.c-------------------------------------------
*** init.c.orig	Tue May 18 06:02:58 1999
--- init.c	Mon May 17 05:36:37 1999
***************
*** 55,60 ****
--- 55,61 ----
  #define ENV_HOME		2
  #define ENV_TERM		3
  #define ENV_DEBUG		4
+ #define ENV_NEWT		5
  
  char * environ[] = {
      "PATH=/usr/bin:/bin:/sbin:/usr/sbin:/mnt/sbin:/mnt/usr/sbin:"
***************
*** 63,68 ****
--- 64,70 ----
      "HOME=/",
      "TERM=linux",
      "DEBUG=",
+     NULL,
      NULL
  };
  
***************
*** 480,485 ****
--- 482,489 ----
  		*isKick = KICK_BOOTP;
  		printf("\n\tan bootp kickstart install will be performed");
  	    }
+ 	} else if (!strncmp(start, "mono", 4)) {
+ 	    environ[ENV_NEWT] = "NEWT_MONO=";
  	} else {
  	    printf("\n\tunknown option '%s'!", start);
  	    sleep(5);
------------------------------------------------------------------------
