cvs commit: patches/grub grub-0.93-debian-pixmap.patch

tushar at linuxfromscratch.org tushar at linuxfromscratch.org
Sat Sep 27 13:10:24 PDT 2003


tushar      03/09/27 14:10:24

  Added:       grub     grub-0.93-debian-pixmap.patch
  Log:
  added grub-0.93-debian-pixmap.patch
  
  Revision  Changes    Path
  1.1                  patches/grub/grub-0.93-debian-pixmap.patch
  
  Index: grub-0.93-debian-pixmap.patch
  ===================================================================
  Submitted By: Jeremy Utley <jeremy at linuxfromscratch.org>
  Date: 2003-09-27
  Initial Package Version: 0.93
  Origin: Debian Source Archive (http.us.debian.org/debian/pool/main/g/grub/grub_0.93+cvs20030224-2.diff.gz)
  Description: This patch implements a number of Debian fixes to Grub, including
  support for XPM Pixmaps on the grub boot screen.  Pixmaps must be in XPM
  format, 640x480 resolution, utilizing no more than 14 colors.
  
  
  diff -Naur grub-0.93/debian/README.Debian grub-0.93-new/debian/README.Debian
  --- grub-0.93/debian/README.Debian	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/README.Debian	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,144 @@
  +grub for Debian
  +---------------
  +
  +GRUB is a GPLed bootloader intended to unify bootloading across x86
  +operating systems.  In addition to loading Linux and FreeBSD, it
  +implements the Multiboot standard, which allows for flexible loading
  +of multiple boot images (needed for modular kernels such as the GNU
  +Hurd).
  +
  +One unique feature of GRUB is that it can understand filesystems at
  +boot time, rather than just simple blocklists.  Hence, you can load
  +any kernel in the file system from the boot prompt without having to
  +edit configuration files or rerun a special installation program.
  +
  +GRUB also automatically detects BIOS lba block addressing.  To force
  +lba mode see the GRUB `setup` command.  Lilo's install and map 
  +directives are fulfilled by GRUB's `root` and `setup` commands.  To
  +reinstall GRUB, the installation location is either determined at 
  +runtime by the `grub-install` script or given as an option to the 
  +`setup` command.
  +
  +more documentation
  +------------------
  +the full grub documentation is available in the grub-doc package.
  +
  +quick setup
  +-----------
  +
  +after installing the package:
  +
  +1) grub-install /dev/hda
  +   or if /boot is a separate partition
  +   grub-install --root-directory=/boot /dev/hda
  +
  +   using in place of /dev/hda the device that you boot from
  +
  +2) update-grub which will create a menu.lst for you if one does not exist
  +   or manually create one, and skip to step 4
  +
  +3) edit /boot/grub/menu.lst
  +   or if /boot is a separate partition
  +   edit /boot/boot/menu.lst
  +
  +   and change groot, and kopt to whatever settings you need.
  +   modify anything else in the menu.lst you want,
  +
  +   re-run update-grub to update the lines for each kernel to those
  +   that you specified with groot and kopt
  +
  +4) thats it, making sure you have a rescue disk or some other way to boot
  +   your machine attempt to reboot using grub!
  +
  +   to create a grub boot floppy:
  +
  +   cat /boot/grub/stage1 /boot/grub/stage2 > /dev/fd0
  +   
  +   using in place of /dev/fd0 the device that is for your floppy drive.
  +
  +   note: that you need to run grub-install each time a new grub package
  +         is installed, this script updates the grub images in /boot/grub
  +	 or /boot/boot/grub and installs grub into the boot sector.
  +
  +for more detailed information see the info documentation or manpages
  +
  +update-grub
  +-----------
  +This script is a debian specific addon used to generate a menu.lst for you
  +either intially, and/or automatically everytime you install a new kernel.
  +
  +To setup automatic updates add these lines to your /etc/kernel-img.conf:
  +
  +postinst_hook = /sbin/update-grub
  +postrm_hook = /sbin/update-grub
  +do_bootloader = no
  +
  +For further information see the manpage kernel-img.conf(5) or update-grub(8)
  +
  +Unlike Lilo, it is not necessary to re-run or re-install the boot loader 
  +after every change to /boot/grub/menu.lst.  menu.lst is automatically 
  +found on GRUB's root disk and read during GRUB's boot process.
  +
  +initrd
  +------
  +Be warned if your initrd image is larger than 4MB it is bigger than the
  +default ramdisk size and you will need to use a kernel command line
  +option like the following:
  +
  +ramdisk_size=16384
  +
  +splashimage support
  +-------------------
  +The use of graphics is an unofficial extension to Grub that has not yet been
  +included by the developers in the official software. The patch
  +was first proposed on the bug-grub mail list late in 2001. This feature will
  +not be supported by upstream until after the 1.0 version of Grub is released.
  +
  +However, this Debian package has been patched and supports splash images.
  +This is how you can add a splash image to your grub configuration:
  +
  +1) Be sure to run grub-install, or you will still be running the old
  +   (unpatched) version
  +
  +2) Create your image, and transform it into a XPM file, 640x480, with
  +   14 colors:
  +
  +   $ convert my-nice-image.jpg -colors 14 -geometry 640x480! my-nice-image.xpm
  +
  +    gzip it:
  +
  +   $ gzip my-nice-image.xpm
  +
  +3) Change your menu.lst file to include the new commands:
  +
  +# Set colors for foreground and background:
  +# (RRGGBB, in hex)
  +#
  +# These are optional it will still work without them
  +#
  +foreground  = ffffff
  +background  = 000000
  +
  +# The splash image location (doesn't need to be the root partition, BTW,
  +# since grub can read your filesystem):
  +#
  +splashimage=(hd0,5)/boot/grub/my-nice-image.xpm.gz
  +
  +4) Reboot, and see your splash image. You may want to fine tune the colors used
  +   for the text
  +
  +Note if the path to the splashimage file happens to be wrong you will get a really messed up looking screen.
  +
  +There is a grub splashimage howto here:
  +http://ruslug.rutgers.edu/~mcgrof/grub-images/
  +
  +netbsd/freebsd/*bsd
  +-------------------
  +From http://www.gnu.org/software/grub/#bsd :
  +
  +"We really need help by BSD hackers. Currently, almost nobody works for
  +BSD-based operating systems, such as FreeBSD, NetBSD, and OpenBSD. So we have
  +critical problems in booting later versions of NetBSD and OpenBSD.  FreeBSD is
  +not a big problem, because GRUB can boot it via /boot/loader for now.
  +
  +If you're willing to give help to us, please contact us."
  diff -Naur grub-0.93/debian/changelog grub-0.93-new/debian/changelog
  --- grub-0.93/debian/changelog	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/changelog	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,614 @@
  +grub (0.93+cvs20030224-2) unstable; urgency=low
  +
  +  * applied patch to mkbimage which fixes it for other filesystems types,
  +    thanks to Carlo Contavalli.
  +    (closes: #182646)
  +  * update-grub should not go looking for a root device and friends if we
  +    already have a menu.lst file as it will have all the info we need in it.
  +  * update-grub does not try to calculate the grub root device if we don't
  +    have a device.map file or if /boot is the root dir
  +    (closes: #182504)
  +
  + -- Jason Thomas <jason at debian.org>  Thu, 27 Feb 2003 12:13:46 +1100
  +
  +grub (0.93+cvs20030224-1) unstable; urgency=low
  +
  +  * New CVS snapshot.
  +    - upstream fixed a bug in grub-install caused by new sed.
  +    (closes: #182071)
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 24 Feb 2003 12:58:53 +1100
  +
  +grub (0.93+cvs20030217-1) unstable; urgency=low
  +
  +  * New CVS snapshot.
  +  * Allow mkbimage to be installed into different dir on gnu systems, thanks
  +    to Robert Millan.
  +    (closes: #160912)
  +  * Fixed error in mkbimage script, thanks to Bruce Edge.
  +    (closes: #176607)
  +  * This could bite me in that ass later, but update-grub now figures out the
  +    root_device and grub_device.
  +    (closes: #110431)
  +  * update-grub now prints each kernel that it finds.
  +  * more info about splashimages in README.Debian, thanks to Jeronimo
  +    Pellegrini
  +    (closes: #176055)
  +  * update-grub can now run can now be run noninteractively.
  +    (closes: #158485)
  +  * forgot to close a bunch of bugs todo with splashimage last upload.
  +    (closes: #121083, #116965, #118701)
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 17 Feb 2003 11:45:45 +1100
  +
  +grub (0.93+cvs20030102-1) unstable; urgency=low
  +
  +  * New CVS snapshot + automake patch + splashimage patch
  +  * It was necessary to apply the automake and splashimage patches before
  +    creating the tarball, so I would not need to run automake and autoconf
  +    from the build scripts.
  +
  + -- Jason Thomas <jason at debian.org>  Thu,  9 Jan 2003 14:26:20 +1100
  +
  +grub (0.92+cvs20021128-1) unstable; urgency=low
  +
  +  * New CVS snapshot.
  +  * removed 01force-lba.patch which is no longer needed
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 28 Oct 2002 12:52:42 +1100
  +
  +grub (0.92+cvs20020923-1) unstable; urgency=low
  +
  +  * CVS snapshot, fixes:
  +    - /dev/root problem with devfs.
  +    - kernel to big for memory problem.
  +    - -no-curses option causes bad output.
  +    (closes: #154543, #153978, #136766)
  +  * remove patch 04device.map_dup.patch, not needed now!
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 23 Aug 2002 10:40:09 +1000
  +
  +grub (0.92-4) unstable; urgency=low
  +
  +  * update-grub now handles rc kernels thanks to Decklin Foster.
  +    (closes: #155455)
  +
  + -- Jason Thomas <jason at debian.org>  Sat, 17 Aug 2002 09:55:26 +1000
  +
  +grub (0.92-3) unstable; urgency=low
  +
  +  * added 01force-lba.patch to fix grub install when --force-lba is specified
  +    (closes: #152420)
  +  * added 04device.map_dup.patch which checks for duplicates in the device.map
  +    (closes: #147109)
  +  * update-grub now writes the implied boot line to menu.lst
  +    (closes: #150570)
  +  * fixed typo in README.Debian, fdo should be fd0
  +    (closes: #151476)
  +
  + -- Jason Thomas <jason at debian.org>  Wed, 10 Jul 2002 10:22:58 +1000
  +
  +grub (0.92-2) unstable; urgency=low
  +
  +  * added 05hurd-boot.patch again, which was still needed.
  +    (closes: #145673)
  +  * fixed typo in update-grub manpage.
  +    (closes: #146318)
  +  * added info about splashimage to README.Debian
  +    (closes: #145418)
  +
  + -- Jason Thomas <jason at debian.org>  Thu,  9 May 2002 10:36:47 +1000
  +
  +grub (0.92-1) unstable; urgency=low
  +
  +  * New upstream release
  +  * removed the following unneeded patches:
  +    04xfs_md5_serial.patch
  +    05hurd-boot.patch
  +    06xfs_savedefault.patch
  +
  + -- Jason Thomas <jason at debian.org>  Wed,  1 May 2002 15:17:56 +1000
  +
  +grub (0.91-6) unstable; urgency=low
  +
  +  * patch from upstream for xfs and jfs savedefault.  Thanks to Ian Cumming. 
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 23 Apr 2002 11:33:51 +1000
  +
  +grub (0.91-5) unstable; urgency=low
  +
  +  * update-grub now adds more comments to the generated menu.lst file.
  +    error messages are more verbose.
  +    makes a back up copy of the existing menu.lst
  +    (closes: #142961)
  +  * some updates to README.Debian thanks to Grant Bowman.
  +    (closes: #142959)
  +  * correct example menu.lst patch for booting the hurd
  +    (closes: #142362)
  +
  + -- Jason Thomas <jason at debian.org>  Thu, 18 Apr 2002 08:57:23 +1000
  +
  +grub (0.91-4) unstable; urgency=low
  +
  +  * fix to make mkbimage create a node directory, from Robert Millan
  +    (closes: #142211)
  +
  + -- Jason Thomas <jason at debian.org>  Thu, 11 Apr 2002 08:26:20 +1000
  +
  +grub (0.91-3) unstable; urgency=low
  +
  +  * removed special mention of xfs and jfs from README.debian since they are
  +    now in upstream tarball. also fixed small typo
  +    (closes: #130526)
  +  * updated the example menu.lst to have current boot method for GNU/Hurd
  +    (closes: #141048)
  +  * added mkbimage
  +    (closes: #121640)
  +
  + -- Jason Thomas <jason at debian.org>  Thu,  4 Apr 2002 16:29:21 +1000
  +
  +grub (0.91-2) unstable; urgency=low
  +
  +  * added patch from upstream which fixes a typo in the makefile that broke
  +    xfs support, md5crypt, serial support and hercules support
  +
  + -- Jason Thomas <jason at debian.org>  Mon,  4 Feb 2002 15:35:01 +1100
  +
  +grub (0.91-1) unstable; urgency=low
  +
  +  * New upstream release
  +    (closes: #130272)
  +  * removed the following unneeded patches:
  +    00grub-dac960.patch
  +    01grub-devfs-floppy.patch
  +    04grub-jfs+xfs-0.9-build.patch
  +    05grub-jfs+xfs-0.9-core.patch
  +    06grub-hide-unhide.patch
  +    07grub-md5-crypt.patch
  +    08grub-mkreiserfs.patch
  +    09grub-sigwinch.patch
  +  * added info about *bsd's to README.Debian
  +  * removed mention of bsd from the description for now as they are not
  +    properly supported.
  +
  + -- Jason Thomas <jason at debian.org>  Wed, 23 Jan 2002 13:02:44 +1100
  +
  +grub (0.90-19) unstable; urgency=low
  +
  +  * typo in update-grub which caused an syntax error with ash.
  +    (closes: #126174)
  +
  + -- Jason Thomas <jason at debian.org>  Wed,  2 Jan 2002 09:02:42 +1100
  +
  +grub (0.90-18) unstable; urgency=low
  +
  +  * add patch from upstream to ignore SIGWINCH.
  +    (closes: #122905)
  +  * update-grub now allows you to control howmany kernels will be added
  +    to the menu.lst
  +    (closes: #123038)
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 10 Dec 2001 10:15:42 +1100
  +
  +grub (0.90-17) unstable; urgency=low
  +
  +  * kernel sorting function in update-grub now handles other kernel suffixes
  +    it doesn't know about properly
  +    (closes: #122013)
  +  * fixed blank line that had a 'tab' in it, in the rules file
  +    (closes: #121955)
  +  * only look for update-grub configuration options between the magic markers.
  +    (closes: #121320)
  +
  + -- Jason Thomas <jason at debian.org>  Sat,  8 Dec 2001 16:32:28 +1100
  +
  +grub (0.90-16) unstable; urgency=low
  +
  +  * added new function to update-grub which looks for the various formats of
  +    initrd images, looks like we have a new name initrd.img. this currently
  +    supports 'initrd', 'initrd.img', 'initrd-lvm' and those three with .gz.
  +    (closes: #116153, #121084)
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 26 Nov 2001 09:19:25 +1100
  +
  +grub (0.90-15) unstable; urgency=low
  +
  +  * fixed a cosmetic error message in the update-grubs new function to sort
  +    the kernels
  +  * added a y to Crispins last name in the changelog below. Sorry!
  +  * initrd line in update-grub was missing the version string.
  +    (closes: #120196)
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 20 Nov 2001 08:01:53 +1100
  +
  +grub (0.90-14) unstable; urgency=low
  +
  +  * I broke update-grub on /boot partitions
  +    "sed -e" is not the same as "sed -ne"
  +    changed it to use basename instead of sed, a few variable name changes
  +    (closes: #119453, #119455)
  +  * added suport allow multiple alternative boot options
  +  * added 'lockalternatives' to support locking of alternative boot options
  +    so no we have 'alternatives', 'lockalternatives' and 'altoptions'
  +  * updated the man page to reflect the above changes
  +  * added a function from Crispin Flowerday which sorts the kernels properly
  +    by weighting the kernels by their suffix, being 'ac', 'pre' or nothing.
  +    (closes: #103437)
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 16 Nov 2001 15:19:06 +1100
  +
  +grub (0.90-13) unstable; urgency=low
  +
  +  * 0.90-11 closes the wrong bug should have been 113460 not 114360.
  +    (closes: #113460)
  +  * new option for update-grub to allow alternative boot options, rather than
  +    just the recovery option, Thanks to Marc Haber.
  +  * added some examples to the menu.lst output by update-grub.
  +  * updated update-grub man page to reflect the above change.
  +  * added initrd info about ramdisk size to README.Debian.
  +    (closes: #117252)
  +  * added support to update-grub for saveddefault, see grub doc.
  +  * added more explanation about default to update-grub generated menu.lst
  +  * added support to update-grub to lock for the alternative boot option, see
  +    grub doc.
  +    (closes: #116988)
  +  * updated update-grub man page to reflect the above change.
  +
  + -- Jason Thomas <jason at debian.org>  Fri,  9 Nov 2001 10:05:09 +1100
  +
  +grub (0.90-12) unstable; urgency=low
  +
  +  * changed naming scheme for debian/patchs/* so they can be applied and
  +    reversed safely.
  +  * added patch to fsys_reiserfs.c which enables booting on newer reiserfs
  +    partitions. 
  +
  + -- Jason Thomas <jason at debian.org>  Sun, 21 Oct 2001 11:27:02 +1000
  +
  +grub (0.90-11) unstable; urgency=low
  +
  +  * fixed update-grub to sort kernels better. Thanks to Matthew Mueller
  +    (closes: #113460)
  +  * added a mention about grub-doc package in README.Debian (closes: #116095) 
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 19 Oct 2001 07:51:53 +1000
  +
  +grub (0.90-10) unstable; urgency=low
  +
  +  * added --disable-auto-mem-opt to configure options in debian/rules
  +    this option stops grub from automatically adding a mem= option to
  +    the kernel command line. From discussions on the grub mailing list
  +    adding this option should not cause any problems.
  +    (closes: #110793)
  +  * added a quick setup section to README.Debian
  +  * debian/rules commented out dh_installman in binary-indep
  +  * debian/rules commented out dh_installinfo in binary-dep
  +  * update-grub should work on systems that have the grub directory
  +    mounted under /boot  (closes: #113380)
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 25 Sep 2001 08:59:25 +1000
  +
  +grub (0.90-9) unstable; urgency=low
  +
  +  * more patches
  +  * patch to support DAC960 raid controller (closes: #104558)
  +  * patch to support hide and unhide of logical partitions
  +  * updated devfs-floppy.patch to not conflict with DAC960 patch
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 31 Aug 2001 10:46:55 +1000
  +
  +grub (0.90-8) unstable; urgency=low
  +
  +  * okay i fixed up authors in debian/copyright to be less ugly.
  +  * added patches to support jfs and xfs,
  +    http://tzukanov.narod.ru/grub-jfs_xfs/
  +  * added info about theses patches to debian/README.debian
  +  * updated md5-crypt patch to work with the jfs/xfs patches
  +
  + -- Jason Thomas <jason at debian.org>  Wed, 29 Aug 2001 16:38:45 +1000
  +
  +grub (0.90-7) unstable; urgency=low
  +
  +  * added support to debian/rules to handle appling patches to upstream
  +    source
  +  * added debian/patches directory which is used to hold  the patches
  +  * modified update-grub to output more comments to the menu.lst and
  +    modified util/grub-install.in to output more info on what it does in
  +    the usage, which will inturn be added to the grub-install.8 manpage
  +    (closes: #110152)
  +  * updated standards-version to 3.5.6
  +  * changed dashes to underscores in changelog for
  +    emacs add_log_mailing_address to remove lintian warning
  +  * added to debian/rules generation of manpages,
  +    grub.8, grub-install.8, grub-md5-crypt.8 and mbchk.1.
  +  * some tidying up in debian/rules file
  +  * changed "Upstream Author(s)" to "Author(s)" in debian/copyright
  +    to remove lintian error.
  +  * changed debian/README.Debian to mention update-grub manpage
  +  * changed debian/rules so clean does not nuke texinfo.tex from doc dir
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 27 Aug 2001 15:35:34 +1000
  +
  +grub (0.90-6) unstable; urgency=low
  +
  +  * added a shell script (grub-floppy) for creating a grub boot floppy
  +  * added a manpage for the above script.
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 17 Aug 2001 10:38:49 +1000
  +
  +grub (0.90-5) unstable; urgency=low
  +
  +  * patched stage2/Makefile.am to build md5cyrpt support, from upstream
  +    cvs (closes: #106407)
  +
  + -- Jason Thomas <jason at debian.org>  Thu,  2 Aug 2001 16:32:52 +1000
  +
  +grub (0.90-4) unstable; urgency=low
  +
  +  * patched update-grub to correctly generate the initrd line (closes: #106807)
  +
  + -- Jason Thomas <jason at debian.org>  Sat, 28 Jul 2001 00:10:59 +1000
  +
  +grub (0.90-3) unstable; urgency=low
  +
  +  * updated grub doc to show correct location of arch specific files
  +    thanks to Carlos Valdivia Yague
  +  * add Build-Depends on libncurses5-dev | libncurses-dev (closes: #105557)
  +  * added recovery option to update-grub, if recovery=false is set in
  +    menu.lst update-grub will not create the recovery lines in menu.lst
  +  * updated update-grub man page to reflect above.
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 23 Jul 2001 18:07:30 +1000
  +
  +grub (0.90-2) unstable; urgency=low
  +
  +  * patched grub-install to handle devfs when making a boot floppy.
  +    thanks to upstream OKUJI Yoshinori
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 13 Jul 2001 21:30:33 +1000
  +
  +grub (0.90-1) unstable; urgency=low
  +
  +  * New upstream release
  +  * removed mention of version from doc-base files so there is no
  +    need to update with each new release
  +
  + -- Jason Thomas <jason at debian.org>  Fri, 13 Jul 2001 09:20:59 +1000
  +
  +grub (0.5.96.1.cvs20010530-7) unstable; urgency=low
  +
  +  * patched update-grub to detect /boot on seperate partition
  +    thanks to Aaron Schrab (closes: #103082, #103662)
  +  * patched update-grub to support loading of ramdisks, 
  +    thanks to Francis J. Lacoste (closes: #103498)
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 10 Jul 2001 12:53:19 +1000
  +
  +grub (0.5.96.1.cvs20010530-6) unstable; urgency=low
  +
  +  * add postrm_hook to README.debian
  +  * corrected bad grammar and other stuff in the manpage,
  +    thanks to David B. Harris
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 19 Jun 2001 13:23:35 +1000
  +
  +grub (0.5.96.1.cvs20010530-5) unstable; urgency=low
  +
  +  * fixed bashism in update-grub, "echo -e". (closes: #101378)
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 19 Jun 2001 12:06:08 +1000
  +
  +grub (0.5.96.1.cvs20010530-4) unstable; urgency=low
  +
  +  * fixed the doc-base stuff. (closes: #101305)
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 18 Jun 2001 19:05:27 +1000
  +
  +grub (0.5.96.1.cvs20010530-3) unstable; urgency=low
  +
  +  * moved grub binaries and scripts to /sbin from /usr/sbin (closes: #100854)
  +  * added update-grub script which generates menu.lst.
  +  * removed gen-menu.sh example, now we have update-grub
  +  * added manpage for update-grub.
  +  * added instructions for adding update-grub to kernel-img.conf in
  +    README.Debian
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 18 Jun 2001 14:21:55 +1000
  +
  +grub (0.5.96.1.cvs20010530-2) unstable; urgency=low
  +
  +  * moved html doco in grub-doc from /usr/share/doc/grub-doc/ to
  +    /usr/share/doc/grub-doc/html/
  +  * added support for doc-base 
  +  * moved the info files from grub to grub-doc.
  +  * use dh_installinfo so that info files are registered (closes: #100484)
  +  * added example menu generation script, thanks to
  +    Wichert Akkerman (closes: #86750)
  +  * removed add_log_mailing_address from bottom of changelog
  +  * updated standards version
  +
  + -- Jason Thomas <jason at debian.org>  Tue, 12 Jun 2001 12:50:40 +1000
  +
  +grub (0.5.96.1.cvs20010530-1) unstable; urgency=low
  +
  +  * New cvs snapshot
  +  * Upstream has removed the debian specific files from cvs.
  +  * Corrected the Sections in the Control file for each package.
  +  * Corrected documentation to reflect change of directory for arch
  +    specific files. (closes #99429)
  +
  + -- Jason Thomas <jason at debian.org>  Fri,  1 Jun 2001 12:03:41 +1000
  +
  +grub (0.5.96.1.cvs20010528-1) unstable; urgency=low
  +
  +  * New Maintainer (closes: #80394)
  +  * updated standards version.
  +  * changed to use debhelper.
  +  * move html doco into a seperate grub-doc package.
  +  * Took a cvs snapshot to help close a bunch of bugs.
  +  * cvs snapshot fixes grub-install (closes: #75333, #80276, #98750)
  +  * cvs snapshot should fix "Error 22: No such partition" (closes: #80241)
  +  * cvs snapshot should fix symlink problem (closes: #95594)
  +  * grub supports /boot as seperate partition (closes: #78471)
  +  * grub supports devfs already (closes: #72346)
  +  * Changed dir of architecture specific files to /usr/lib (closes: #72311)
  +  * texi2html problem fixed in previous NMU (closes: #80422)
  +  * kernel-package supports kernel images in /boot (closes: #74429)
  +  * the current method for a temporary modification of a menu option is 
  +    to press 'e' for edit. I think this is satisfactory. (closes: #35849)
  +  * update-grub is in the progeny package of grub
  +    please contact them (closes: #92269)
  +
  + -- Jason Thomas <jason at debian.org>  Mon, 28 May 2001 17:04:44 +1000
  +
  +grub (0.5.96.1-0.1) unstable; urgency=low
  +
  +  * Non Maintainer Update by Ralf Treinen <treinen at debian.org>
  +  * added build-dependencies: texi2html (bug #80394)
  +  * applied patch of bug report # 80394: insert blank after "-I" option 
  +    to texi2html in rules file (thanks to Matt Zimmerman <mdz at debian.org>)
  +
  + --  Ralf Treinen <treinen at debian.org>  Sat, 24 Feb 2001 23:09:55 +0100
  +
  +grub (0.5.96.1) unstable; urgency=low
  +
  +  * We lied: this release is to fix some important bugs before 1.0.
  +  * Open devices with O_RDWR in the grub shell. (closes:bug#73654)
  +  * Stricter Linux kernel command line passing. (closes:bug#74618)
  +  * Linux devfs support added to the grub shell. (closes:bug#74740)
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Mon, 16 Oct 2000 12:43:30 -0600
  +
  +grub (0.5.96) unstable; urgency=low
  +
  +  * Many, many new features and bugfixes.  This is the final test release;
  +    the next release will be version 1.0.
  +  * Install HTML documentation in addition to Info pages.
  +    (closes:bug#42242,bug#42273)
  +  * Fix documentation to refer to /usr/sbin/grub as well as
  +    /sbin/grub. (closes:bug#67132)
  +  * Be more verbose about missing setup files. (closes:bug#71661)
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Wed,  4 Oct 2000 10:44:42 -0600
  +
  +grub (0.5.95) unstable; urgency=low
  +
  +  * ReiserFS support from Jochen Hoenicke.
  +  * `--disable-lba-support-bitmap-check' is now a runtime option,
  +    `--force-lba', which works with `install', `setup', and
  +    `grub-install.' (closes:bug#61513)
  +  * Fixed a bug in LBA support checking.  Please let us know if you
  +    need to use `--force-lba' for Grub to work.
  +  * NetBSD ELF kernel support is added.
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Tue, 27 Jun 2000 09:44:41 -0600
  +
  +grub (0.5.94) unstable; urgency=low
  +
  +  * Fix /usr/doc symlink. (closes:bug#50932)
  +  * Better testing for BIOS LBA support. (closes:bug#53507)
  +  * New installation script. (closes:bug#48755)
  +  
  + -- Gordon Matzigkeit <gord at debian.org>  Fri, 10 Mar 2000 14:55:02 -0600
  +
  +grub (0.5.93.1) unstable; urgency=low
  +
  +  * Update to Standards-Version: 3.0.1, mainly for FHS support.
  +  * Fix definition of ext2_dir_entry. (closes:bug#49017)
  +  * Fix rules for cross-compiling. (closes:bug#49034)
  +  * Update synopsis for grub(8). (closes:bug#48991)
  +  * Don't clear the line when hitting enter in the GRUB shell.
  +    (closes:bug#48989)
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Fri,  5 Nov 1999 22:31:30 -0600
  +
  +grub (0.5.93) unstable; urgency=low
  +
  +  * Updated example configurations. (closes:bug#42136)
  +  * Highlight color set correctly when editing. (closes:bug#42549)
  +  * dpkg-shlibdeps called on /usr/sbin/grub. (closes:bug#42704)
  +  * Properly install Texinfo documentation. (closes:bug#42705,bug#42919)
  +    (closes:bug#43080,bug#45150)
  +  * Update file locations in README.debian. (closes:bug#42834)
  +  * Upstream fixes for new binutils assembler syntax. (closes:bug#47946)
  +  * FAT32 support. (closes:bug#47970)
  +  * Password option fixed. (closes:bug#43798)
  +  * Sample menu.lst included in doc directory. (closes:bug#47181)
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Sat, 30 Oct 1999 09:59:09 -0600
  +
  +grub (0.5.92) unstable; urgency=low
  +
  +  * Data files are now in /usr/lib/grub/$(HWARCH).
  +  * Unix boot utility available as /usr/sbin/grub.
  +  * Full Texinfo documentation.
  +
  + -- GRUB Maintainers <bug-grub at gnu.org>  Mon, 26 Jul 1999 12:46:37 -0600
  +
  +grub (0.5.91) unstable; urgency=low
  +
  +  * Added support for LBA mode and preliminary AWARD/AMI hard disk BIOS
  +    extensions.
  +  * GRUB data now installed in /share/grub/$(host_cpu)-$(host_vendor).
  +  * Preliminary Texinfo documentation.
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Sun, 14 Mar 1999 20:23:04 -0600
  +
  +grub (0.5.90) unstable; urgency=low
  +
  +  * Beta-testing release.
  +  * GRUB is now officially part of the GNU Project, and the Debian package
  +    is maintained by its upstream maintainers.
  +  * LS-120 IDE floppy support should work now (fixes: #33720).
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Mon,  1 Mar 1999 12:59:06 -0600
  +
  +grub (0.5-3) unstable; urgency=low
  +
  +  * GRUB now understands symbolic links (fixes: #17306).
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Sun, 21 Feb 1999 05:13:25 -0600
  +
  +grub (0.5-2) unstable; urgency=low
  +
  +  * Assembly source cleanups.
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Sun, 14 Feb 1999 20:33:39 -0600
  +
  +grub (0.5-1) unstable; urgency=low
  +
  +  * Put everything in /lib/grub (not /boot/grub) and don't install during
  +    postinst so that we can't accidentally wreck a working system.  This
  +    means the package needn't be experimental anymore.
  +  * Get rid of grubinst because it doesn't work with 0.5, and I'd rather
  +    improve GRUB's builtin installation process.
  +  * Use `e' rather than enter to edit.
  +  * Minor bug fixes.
  +
  + -- Gordon Matzigkeit <gord at debian.org>  Sun, 31 Jan 1998 14:11:32 -0600
  +
  +grub (0.4-2) experimental; urgency=low
  +
  +  * Make postinstall script
  +  * Create manpage for grubinst
  +  * Make grubinst more flexible
  +  * Address bugs 15227 and 15163 (packaging and clue endowment)
  +
  + -- Steve Dunham <dunham at debian.org>  Thu,  1 Jan 1998 00:38:22 -0500
  +
  +grub (0.4-2) experimental; urgency=low
  +
  +  * Make postinstall script
  +  * Create manpage for grubinst
  +  * Make grubinst more flexible
  +  * Address bugs 15227 and 15163 (packaging and clue endowment)
  +
  + -- Steve Dunham <dunham at debian.org>  Thu,  1 Jan 1998 00:38:22 -0500
  +
  +grub (0.4-1) unstable; urgency=low
  +
  +  * Initial Release.
  +
  + -- Steve Dunham <dunham at debian.org>  Wed, 19 Nov 1997 23:42:47 -0500
  +
  +  vim:ai:et:sts=4:sw=4:tw=78:
  diff -Naur grub-0.93/debian/control grub-0.93-new/debian/control
  --- grub-0.93/debian/control	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/control	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,27 @@
  +Source: grub
  +Section: admin
  +Priority: optional
  +Maintainer: Jason Thomas <jason at debian.org>
  +Build-Depends: debhelper (>> 3.0.0), texi2html, texinfo, libncurses5-dev | libncurses-dev
  +Standards-Version: 3.5.6
  +
  +Package: grub
  +Architecture: i386 hurd-i386
  +Depends: ${shlibs:Depends}
  +Suggests: grub-doc
  +Description: GRand Unified Bootloader
  + GRUB is a GPLed bootloader intended to unify bootloading across x86
  + operating systems.  In addition to loading the Linux kernel,
  + it implements the Multiboot standard, which allows for flexible loading
  + of multiple boot images (needed for modular kernels such as the GNU
  + Hurd).
  +
  +Package: grub-doc
  +Section: doc
  +Architecture: all
  +Description: Documentation for GRand Unified Bootloader
  + GRUB is a GPLed bootloader intended to unify bootloading across x86
  + operating systems.  In addition to loading the Linux kernel,
  + it implements the Multiboot standard, which allows for flexible loading
  + of multiple boot images (needed for modular kernels such as the GNU
  + Hurd).
  diff -Naur grub-0.93/debian/copyright grub-0.93-new/debian/copyright
  --- grub-0.93/debian/copyright	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/copyright	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,70 @@
  +This package was re-debianized by Jason Thomas <jason at debian.org> on
  +Mon, 28 May 2001 14:29:03 +1000.
  +
  +It was downloaded from ftp://alpha.gnu.org/gnu/grub/
  +
  +Upstream Authors:
  +
  +   Erich Boleyn originally designed and implemented GRUB.
  +
  +   VaX#n8 (real name unknown) wrote shared_src/fsys_ext2fs.c.
  +
  +   Heiko Schroeder rewrote shared_src/stage1.S to be more readable.
  +
  +   The following authors assigned copyright on their work to the Free
  +   Software Foundation:
  +
  +   Gordon Matzigkeit adopted GRUB into the GNU Project.  He fixed several
  +   bugs, added symbolic link support to shared_src/fsys_ext2fs.c, and
  +   began the implementation of /sbin/grub.
  +
  +   OKUJI Yoshinori contributed many bugfixes and new features, such as
  +   working LBA support, /sbin/grub support for configuration files, the
  +   script /sbin/grub-install, the utility /bin/mbchk, the new engine for
  +   builtin commands, disk swapping support, keyboard configuration support,
  +   network support, online help support, command-line history support,
  +   hidden menu support, the new Linux loader, serial terminal support,
  +   single-line editing support, the utility /sbin/grub-md5-crypt, the new
  +   GRUB manual, and several new commands.
  +
  +   Peter Astrand added support for a color menu.
  +
  +   Pavel Roskin contributed many bugfixes and new features, such as FreeBSD
  +   support for the grub shell, and configure process cleanups.
  +
  +   Klaus Reichl wrote stage2/fsys_minix.c.
  +
  +   Per Lundberg added graphics support to the Multiboot Specification.
  +
  +   Jochen Hoenicke rewrote stage2/fsys_fat.c and wrote
  +   stage2/fsys_reiserfs.c and stage2/md5.c.
  +
  +   Christoph Plattner added support for Net Boot Image Proposal.
  +
  +   Stefan Ondrejicka added the commands "partnew" and "parttype".
  +
  +   Frank Mehnert added support for hercules console.
  +
  +
  +Copyright:
  +
  +   Copyright (C) 1996  Erich Boleyn <erich at uruk.org>
  +   Copyright (C) 1999-2000  Free Software Foundation, Inc.
  +
  +   This program is free software; you can redistribute it and/or modify
  +   it under the terms of the GNU General Public License as published by
  +   the Free Software Foundation; either version 2, or (at your option)
  +   any later version.
  +
  +   This program is distributed in the hope that it will be useful,
  +   but WITHOUT ANY WARRANTY; without even the implied warranty of
  +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  +   GNU General Public License for more details.
  +
  +   You should have received a copy of the GNU General Public License
  +   along with this program; if not, write to the Free Software Foundation,
  +   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  +
  +
  +On Debian GNU systems, the complete text of the GNU General Public
  +License can be found in `/usr/share/common-licenses/GPL'.
  diff -Naur grub-0.93/debian/grub-doc.dirs grub-0.93-new/debian/grub-doc.dirs
  --- grub-0.93/debian/grub-doc.dirs	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub-doc.dirs	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1 @@
  +usr/share/doc/grub-doc/html
  diff -Naur grub-0.93/debian/grub-doc.doc-base.grub grub-0.93-new/debian/grub-doc.doc-base.grub
  --- grub-0.93/debian/grub-doc.doc-base.grub	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub-doc.doc-base.grub	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,14 @@
  +Document: grub
  +Title: Grub Manual
  +Author: OKUJI Yoshinori
  +Abstract: This is the documentation of GNU GRUB, the GRand Unified Bootloader,
  + a flexible and powerful boot loader program for PCs.
  +Section: admin
  +
  +Format: HTML
  +Index: /usr/share/doc/grub-doc/html/grub.html
  +Files: /usr/share/doc/grub-doc/html/grub_*.html
  +
  +Format: info
  +Index: /usr/share/info/grub.info.gz
  +Files: /usr/share/info/grub.info-*.gz
  diff -Naur grub-0.93/debian/grub-doc.doc-base.multiboot grub-0.93-new/debian/grub-doc.doc-base.multiboot
  --- grub-0.93/debian/grub-doc.doc-base.multiboot	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub-doc.doc-base.multiboot	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,13 @@
  +Document: multiboot
  +Title: Grub Multiboot Specification
  +Author: OKUJI Yoshinori
  +Abstract: This documents the Multiboot Specification, the proposal for the boot
  + sequence standard.
  +Section: admin
  +
  +Format: HTML
  +Index: /usr/share/doc/grub-doc/html/multiboot.html
  +Files: /usr/share/doc/grub-doc/html/multiboot_*.html
  +
  +Format: info
  +Files: /usr/share/info/multiboot.info.gz
  diff -Naur grub-0.93/debian/grub-doc.info grub-0.93-new/debian/grub-doc.info
  --- grub-0.93/debian/grub-doc.info	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub-doc.info	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,5 @@
  +docs/grub.info
  +docs/grub.info-1
  +docs/grub.info-2
  +docs/grub.info-3
  +docs/multiboot.info
  diff -Naur grub-0.93/debian/grub-floppy grub-0.93-new/debian/grub-floppy
  --- grub-0.93/debian/grub-floppy	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub-floppy	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,112 @@
  +#!/bin/sh
  +
  +# Create GRUB boot floppy.
  +#   Copyright (C) 2001 Jason Thomas <jason at debian.org>
  +#
  +# This file is free software; you can redistribute it and/or modify it
  +# under the terms of the GNU General Public License as published by
  +# the Free Software Foundation; either version 2 of the License, or
  +# (at your option) any later version.
  +#
  +# This program is distributed in the hope that it will be useful, but
  +# WITHOUT ANY WARRANTY; without even the implied warranty of
  +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  +# General Public License for more details.
  +#
  +# You should have received a copy of the GNU General Public License
  +# along with this program; if not, write to the Free Software
  +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
  +
  +# Initialize some variables.
  +dd=/bin/dd
  +pkgdatadir=/usr/lib/grub/i386-pc
  +stage1=$pkgdatadir/stage1
  +stage2=$pkgdatadir/stage2
  +
  +# I like functions.
  +
  +abort()
  +{
  +        echo -e "\n$@\n" >&2
  +                exit 1
  +}
  +
  +checkfiles()
  +{
  +        [ -x "$dd" ] || abort "Can't find $dd, aborting"
  +        [ -f "$stage1" ] || abort "Can't find $stage1, aborting"
  +        [ -f "$stage2" ] || abort "Can't find $stage2, aborting"
  +}
  +
  +usage()
  +{
  +        cat <<EOF
  +Usage: $0 [options] <block device>
  +Create GRUB boot floppy.
  +
  +options:
  +        -h, --help      print this message and exit
  +
  +EOF
  +        exit 1
  +}
  +
  +checkdevice()
  +{
  +        [ -z "$1" ] && abort "checkdevice() takes block device as parameter"
  +
  +        [ -b "$1" ] || abort "$1 is not a block device, aborting"
  +        [ -w "$1" ] || abort "$1 is not a writeable block device, aborting"
  +}
  +
  +questiondevice()
  +{
  +        [ -z "$1" ] && abort "questiondevice() takes block device as parameter"
  +
  +        echo "You are about to overwrite the boot sector of the following device:"
  +        echo "$1"
  +        echo -n "Are you sure you want to take this action (y/N) "
  +        read answer
  +        case "$answer" in
  +                y* | Y*)
  +                        # let this fall through to the next function
  +                        ;;
  +                *)
  +                        abort "Not continuing as you wish"
  +                ;;
  +        esac
  +}
  +
  +createfloppy()
  +{
  +        [ -z "$1" ] && abort "createfloppy() takes block device as parameter"
  +
  +        echo -e "Creating grub boot floppy now, please be patient ...\n"
  +
  +        # heres where we actually create the floppy :-p
  +        $dd if="$stage1" of="$1" bs="512" count="1"
  +        $dd if="$stage2" of="$1" bs="512" seek="1"
  +
  +        echo -e "\nThat's All Folks!"
  +}
  +
  +# test we have the necessary files first
  +checkfiles
  +
  +case "$1" in
  +        -h | --help)
  +                usage
  +                ;;
  +
  +        *)
  +                if [ -z "$1" ] ; then
  +                        usage
  +                else
  +                        checkdevice "$1"
  +                        questiondevice "$1"
  +                        createfloppy "$1"
  +                fi
  +                ;;
  +esac
  +
  +exit 0
  diff -Naur grub-0.93/debian/grub-floppy.8 grub-0.93-new/debian/grub-floppy.8
  --- grub-0.93/debian/grub-floppy.8	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub-floppy.8	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,52 @@
  +.\" Please adjust this date whenever revising the manpage.
  +.\"
  +.\" Some roff macros, for reference:
  +.\" .nh        disable hyphenation
  +.\" .hy        enable hyphenation
  +.\" .ad l      left justify
  +.\" .ad b      justify to both left and right margins
  +.\" .nf        disable filling
  +.\" .fi        enable filling
  +.\" .br        insert line break
  +.\" .sp <n>    insert n+1 empty lines
  +.\" for manpage-specific macros, see man(7)
  +.TH "grub-floppy" "8" "August 17, 2001" "Jason Thomas"
  +.SH NAME
  +grub\-floppy \- program to do build a generic grub boot disc
  +.SH SYNOPSIS
  +.B grub\-floppy
  +.RI [ options ]  " <block_device>" ...
  +.SH DESCRIPTION
  +.B \fBgrub\-floppy\fR
  +is a program to build a generic grub boot disc. The boot disc when booted provides the grub command line (also referred to as the grub shell).
  +.PP
  +For more information on using the grub command line, see \fBinfo grub\fR
  +.PP
  +.SH OPTIONS
  +This program follow the usual GNU command line syntax, with long
  +options starting with two dashes (`-').
  +A summary of options is included below.
  +.TP
  +.B \-h, \-\-help
  +Show summary of options.
  +.SH NOTE
  +It is possible to create a grub boot disc using grub-install, although the boot disc created will be specific to the computer it is created on. Using grub-floppy will create a more generic floppy only limted by architecture.
  +.SH SEE ALSO
  +.BR grub (8),
  +.BR grub-install (8).
  +.PP
  +The full documentation for
  +.B grub
  +is maintained as a Texinfo manual.  If the
  +.B info
  +and
  +.B grub
  +programs are properly installed at your site, the command
  +.IP
  +.B info grub
  +.PP
  +should give you access to the complete manual.
  +.SH AUTHOR
  +This manual page was written by Jason Thomas <jason at debian.org>,
  +for the Debian GNU/Linux system (but may be used by others).
  +.\" vim:syn=nroff
  diff -Naur grub-0.93/debian/grub.docs grub-0.93-new/debian/grub.docs
  --- grub-0.93/debian/grub.docs	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub.docs	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,6 @@
  +AUTHORS
  +BUGS
  +NEWS
  +README
  +THANKS
  +TODO
  diff -Naur grub-0.93/debian/grub.examples grub-0.93-new/debian/grub.examples
  --- grub-0.93/debian/grub.examples	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub.examples	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1 @@
  +docs/menu.lst
  diff -Naur grub-0.93/debian/grub.manpages grub-0.93-new/debian/grub.manpages
  --- grub-0.93/debian/grub.manpages	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/grub.manpages	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,3 @@
  +debian/update-grub.8
  +debian/grub-floppy.8
  +debian/mkbimage.8
  diff -Naur grub-0.93/debian/mkbimage grub-0.93-new/debian/mkbimage
  --- grub-0.93/debian/mkbimage	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/mkbimage	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,385 @@
  +#!/bin/sh
  +# MaKe a Bootable IMAGE --- 1.44, 2.88 and El Torito no-emulation mode
  +# C) 2001 Thierry Laronde <tlaronde at polynum.org>
  +# C) 2001,2002 Robert Millan <zeratul2 at wanadoo.es> for the GNU port.
  +
  +
  +# This program is free software; you can redistribute it and/or modify
  +# it under the terms of the GNU General Public License as published by
  +# the Free Software Foundation; either version 2, or (at your option)
  +# any later version.
  +#
  +# This program is distributed in the hope that it will be useful,
  +# but WITHOUT ANY WARRANTY; without even the implied warranty of
  +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  +# GNU General Public License for more details.
  +#
  +# You should have received a copy of the GNU General Public License
  +# along with this program; if not, you can either send email to this
  +# program's maintainer or write to: The Free Software Foundation,
  +# Inc.; 59 Temple Place, Suite 330; Boston, MA 02111-1307, USA.
  +
  +# $Id: grub-0.93-debian-pixmap.patch,v 1.1 2003/09/27 20:10:24 tushar Exp $
  +
  +# Global variables
  +tarfile=
  +dir=
  +fs= #file system type
  +decompress=
  +image_type=
  +uname=`uname -s`
  +# You can set this if you need to use a specially located GRUB.
  +# This MUST end by a '/'!
  +GRUB_PATH=
  +
  +#----------------------------DON'T CHANGE: INTERNALS
  +
  +block_size=512
  +cylinders=
  +heads=
  +sectors=
  +cyl_size=
  +type_option=
  +geo_option=
  +image=
  +bk_120=$((2 * 15 * 80))
  +bk_144=$((2 * 18 * 80))
  +bk_288=$((2 * 36 * 80))
  +bk_160=$((2 * 20 * 80))
  +bk_168=$((2 * 21 * 80))
  +bk_174=$((2 * 21 * 83))
  +lo_options=
  +device_map=
  +mkfs_options=
  +debug=
  +stage2_os_name=
  +
  +# Name by which this script was invoked.
  +program=`echo "$0" | sed -e 's/[^\/]*\///g'`
  +mkbimage_version='$Id: grub-0.93-debian-pixmap.patch,v 1.1 2003/09/27 20:10:24 tushar Exp $'
  +
  +usage="
  +Usage: $program [-hVF] [-t TYPE] [-d DIRECTORY] [-s FS_TYPE] -f TAR_FILE
  +Make a Bootable IMAGE using GRUB as a bootloader
  +
  +Options:
  + Actions:
  + -d DIRECTORY [default CWD]
  + 	Directory where the boot.image and the partition subdirectories
  +	are/will be created
  + -f TAR_FILE
  + 	Name of the tar file containing the filesystem to install. Can
  +	be a pure tar file [.tar] or a compressed tar file
  +	[.tar.gz|.tar.bz2]
  + -s FS_TYPE
  + 	Type of the file system to create on the virtual disk. Choices 
  +	are: ext2, minix or msdos [default is ext2]
  + -t TYPE
  + 	Type of the image to create. Choices are '1.20', '1.44', '1.60',
  +	'1.68', '1.74', '2.88' or 'hd' [default is hd]
  + -F
  +        Force to set the set_dpt flag (unnecessary 99% of the time! Be
  +	careful! 
  + Informations:
  + -D     turn Debugging on [xtrace]
  + -h	display this Help and exit
  + -V	display Version information and exit
  +
  +Copyright (c) 2001 Thierry Laronde <tlaronde at polynum.org>. 
  +Copyright (c) 2001,2002 Robert Millan <zeratul2 at wanadoo.es> for the GNU port.
  +GPLed."
  +
  +version="$mkbimage_version
  +Written by Thierry Laronde.
  +Port to the GNU system by Robert Millan.
  +
  +Copyright (c) 2001 Thierry Laronde <tlaronde at polynum.org>.
  +Copyright (c) 2001,2002 Robert Millan <zeratul2 at wanadoo.es> for the GNU port.
  +
  +This is free software under the GPL version 2 or later; see the source for 
  +copying conditions.  There is NO warranty, not even for MERCHANTABILITY or 
  +FITNESS FOR A PARTICULAR PURPOSE."
  +
  +# Functions
  +
  +error ()
  +{
  +	case $1 in
  +	bug) echo "This is a bug!";
  +		echo "$usage";;
  +	option) echo "Unknow option"; echo "$usage";;
  +	missing_argument) echo "You must give an argument to the option!";
  +		echo "$usage";;
  +	missing_option) echo "You must indicate at least one option!";
  +		echo "$usage";;
  +	must_be_root) echo "You must be root!";;
  +	unknown_fs) echo "The supported fs are: ext2, minix or msdos!";;
  +	unknown_hurd_fs) echo "The GNU Hurd only supports ext2!";;
  +	unknown_format) echo "The tar file must be .tar|.tar.gz|.tar.bz2!";;
  +	wont_fit) echo "The files won't fit on the selected type of media!";;
  +	wrong_directory) echo "Directory inexistant or not given!";
  +		echo "$usage";;
  +	wrong_file) echo "File inexistant or empty!";
  +		echo "$usage";;
  +	wrong_type) echo "The type specified is not a valid one!";
  +		echo "$usage";;
  +	esac	
  +	exit 1
  +}
  +
  +#**********************************************************************
  +#                          MAIN PROGRAM                               *
  +#**********************************************************************
  +
  +#---------------------- Getting the options
  +
  +[ $# -eq 0 ] && error missing_option;
  +
  +while [ $# -gt 0 ]; do
  +	case "$1" in
  +		-d) shift;
  +			dir="$1";
  +			[ ! -d "$1" ] && error wrong_directory;;
  +		-f) shift;
  +			tarfile="$1";
  +			[ -z "$tarfile" ] && error missing_argument;;
  +		-s) shift;
  +			fs="$1";;
  +		-t) shift;
  +			image_type="$1";;
  +		-F) geo_option="-F";;
  +		-D) debug="-v";
  +		    set -x;;
  +		-h) echo "$usage"; exit 0;;
  +		-V) echo "$version"; exit 0;;
  +	 	*) error option ;;
  +	esac
  +shift	
  +done
  +#---------------------- Must be root
  +[ ! `id -u` -eq 0 ] && [ $uname != "GNU" ] && error must_be_root;
  +
  +#---------------------- Sanity checks
  +[ ! "$tarfile" ] && error missing_argument;
  +[ ! -s "$tarfile" ] && error wrong_file;
  +
  +if [ ! "$image_type" ]; then
  +	image_type=hd;
  +elif [ "$image_type" != "1.20" -a "$image_type" != "1.44" \
  +  -a "$image_type" != "1.60" -a "$image_type" != "1.68" \
  +  -a "$image_type" != "2.88" -a "$image_type" != "1.74" \
  +  -a "$image_type" != "hd" -a "$image_type" != "1.60" ] ; then
  +  error wrong_type ;
  +fi
  +
  +[ ! "$fs" ] && fs=ext2
  +case "$fs" in
  +	ext2) mkfs_options="-m 0"; ptype="83" ;;
  +	minix) mkfs_options="-v"; ptype="81";; # Minix version 2
  +	msdos) mkfs_options="-f 1 -F 12"; ptype="1";; # the smallest...
  +	*) error unknown_fs;;
  +esac
  +
  +[ $fs = ext2 ] || [ ! $uname = "GNU" ] || error unknown_hurd_fs
  +
  +# What type of tar file has been given ?
  +
  +suffix=`echo "$tarfile" | sed -n 's/^.*\.\([targbz2]\{2,3\}\)$/\1/p'`
  +case "$suffix" in
  +	tar) decompress="cat";;
  +	gz) decompress="gunzip -c";;
  +	bz2) decompress="bunzip2 -c";;
  +	*) error unknown_format;;
  +esac
  +#---------------------- Initializations
  +
  +[ ! "$dir" ] && dir=`pwd`
  +
  +image=$dir/$image_type.image
  +device_map=$dir/device.map
  +
  +# First, find the size of the tar file in block_size.
  +file_size=`$decompress $tarfile | wc -c | tr -d ' '`
  +file_size=$(($file_size / $block_size + 1))
  +
  +# Increase in order to be sure that with a fs there will be enough
  +# room (trying 110%)
  +file_size=$(($file_size + $file_size / 10))
  +
  +case "$image_type" in
  +  hd) heads=16;
  +    sectors=63;
  +    cyl_size=$((16 * 63));
  +    # Create the minimum number of cylinders. At the moment, we leave
  +    # some space by rounding everything up by adding 1 cylinder, plus
  +    # another one for MBR + reserved track.
  +    cylinders=$(($file_size / $cyl_size + 2));; 
  +  1.20) [ $file_size -ge $bk_120 ] && error wont_fit; 
  +    heads=2;
  +    sectors=15;
  +    cyl_size=$((2 * 15));
  +    cylinders=80;;
  +  1.44) [ $file_size -ge $bk_144 ] && error wont_fit; 
  +    heads=2;
  +    sectors=18;
  +    cyl_size=$((2 * 18));
  +    cylinders=80;;
  +  1.60) [ $file_size -ge $bk_160 ] && error wont_fit; 
  +    heads=2;
  +    sectors=20;
  +    cyl_size=$((2 * 20));
  +    cylinders=80;
  +    geo_option="-F";;
  +  1.68) [ $file_size -ge $bk_168 ] && error wont_fit; 
  +    heads=2;
  +    sectors=21;
  +    cyl_size=$((2 * 21));
  +    cylinders=80;;
  +  1.74) [ $file_size -ge $bk_174 ] && error wont_fit; 
  +    heads=2;
  +    sectors=21;
  +    cyl_size=$((2 * 21));
  +    cylinders=83;;
  +  2.88) [ $file_size -ge $bk_288 ] && error wont_fit;
  +    heads=2;
  +    sectors=36;
  +    cyl_size=$((2 * 36));
  +    cylinders=80;;
  +  *) error bug;;
  +esac
  +
  +type_option="-t $image_type"
  +
  +# We start by creating a virtual disk which size is the number of
  +# cylinders of $cyl_size mandatory to put the files stocked in the $tarfile
  +# Create the empty virtual disk
  +dd if=/dev/zero of=$image bs=$block_size count=$(($cyl_size * $cylinders))
  +
  +# We then format the virtual disk
  +# NOTE: the El Torito specification wants only one partition. So we
  +# create the first, and the remaining 3 entries are empty.
  +
  +if [ "$image_type" = "hd" ]; then
  +/sbin/sfdisk -C $cylinders -H $heads -S $sectors -D $image<<EOT
  +,,$ptype,*,0,1,1
  +
  +
  +EOT
  +lo_options="-o $(($sectors * $block_size))" 
  +type_option=
  +fi
  +
  +# It's time now to create the filesystem on the first partition.
  +# Hence, we mount via the loop device the part of the virtual disk
  +# dedicated to the first partition. We will, indeed, skip one track
  +# if this is a hard disk image
  +
  +if [ $uname = "Linux" ]; then
  +
  +    /sbin/losetup $lo_options /dev/loop1 $image
  +    /sbin/mkfs.$fs $mkfs_options /dev/loop1
  +
  +    # We then create the node for the first partition
  +    mkdir  ${image}1 2>/dev/null
  +
  +    # and mount the partition
  +    mount -t $fs /dev/loop1 ${image}1 ;
  +
  +elif [ $uname = "GNU" ]; then
  +
  +    /sbin/mkfs.$fs -F $mkfs_options ${image}
  +
  +    # We then create the node for the first partition
  +    mkdir  ${image}1 2>/dev/null
  +
  +    # and start a translator for the filesystem image
  +    settrans -afg ${image}1 /hurd/ext2fs ${image} ;
  +fi
  +
  +# then untar the files
  +$decompress $tarfile | tar -C ${image}1 $debug -xf -
  +
  +if [ $uname = "Linux" ]; then
  +    # Be sure that everything is written and flushed
  +    sync
  +    umount ${image}1
  +    /sbin/losetup -d /dev/loop1
  +    /sbin/losetup -d /dev/loop0
  +
  +    # Then remount the up-to-date image
  +    /sbin/losetup /dev/loop0 $image
  +    /sbin/losetup $lo_options /dev/loop1 $image
  +
  +    # And remount the partition
  +    mount -t $fs /dev/loop1 ${image}1 ;
  +
  +elif [ $uname = "GNU" ]; then
  +    # Be sure that everything is written and flushed
  +    sync
  +    settrans -afg ${image}1
  +
  +    # Then restart the translator for the up-to-date image
  +    settrans -afg ${image}1 /hurd/ext2fs ${image} ;
  +fi
  +
  +#We verify that the stage2 exists and we search the name
  +stage2_os_name=`find ${image}1 -name stage2 -type f`
  +
  +[ ! $stage2_os_name ] && { echo "I can't find stage2!"; exit 1;}
  +
  +#------------------------- GRUB stuff
  +if [ "$image_type" = "hd" ]; then
  +	device='(hd0)'
  +	root='(hd0,0)'
  +else
  +	device='(fd0)'
  +	root='(fd0)'
  +fi
  +
  +if [ $uname = "Linux" ]; then loop=/dev/loop0;
  +elif [ $uname = "GNU" ]; then loop=${image};
  +fi
  +
  +cat<<EOT >$device_map
  +$device	$loop
  +EOT
  +
  +${GRUB_PATH}grub --device-map=$device_map --batch<<EOT
  +geometry $device $cylinders $heads $sectors
  +root $root
  +setup --stage2=$stage2_os_name $device
  +EOT
  +
  +if [ $uname = "Linux" ]; then
  +    # Freing everything
  +    umount ${image}1
  +    /sbin/losetup -d /dev/loop1
  +    /sbin/losetup -d /dev/loop0;
  +elif [ $uname = "GNU" ]; then
  +    # Freing everything
  +    settrans -afg ${image}1;
  +fi
  +
  +echo "-------------------WHAT'S NEXT?-------------------------------------"
  +echo
  +
  +cat <<EOF
  +If you have created an image aimed to a floppy, then something like:
  +
  +dd if=<type>.image of=/dev/fd0[u<size>] bs=512
  +
  +will be more than enough... if you have formated the floppy correctly
  +using \`superformat' to be found in \`fdutils' package.
  +
  +For El Torito floppy emulation :
  +
  +mkisofs -b <image> -c boot.catalog -o raw.iso <dir>
  +
  +And for El Torito Hard Disk emulation:
  +
  +mkisofs -b <image> -hard-disk-boot -c boot.catalog -o raw.iso <dir> 
  +
  +Enjoy!
  +EOF
  +
  +exit 0
  diff -Naur grub-0.93/debian/mkbimage.8 grub-0.93-new/debian/mkbimage.8
  --- grub-0.93/debian/mkbimage.8	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/mkbimage.8	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,58 @@
  +.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.29.
  +.TH $ID: "1" "February 2003" "$Id: grub-0.93-debian-pixmap.patch,v 1.1 2003/09/27 20:10:24 tushar Exp $" "User Commands"
  +.SH NAME
  +$Id: grub-0.93-debian-pixmap.patch,v 1.1 2003/09/27 20:10:24 tushar Exp $Id: grub-0.93-debian-pixmap.patch,v 1.1 2003/09/27 20:10:24 tushar Exp $
  +.SH SYNOPSIS
  +.B mkbimage
  +[\fI-hVF\fR] [\fI-t TYPE\fR] [\fI-d DIRECTORY\fR] [\fI-s FS_TYPE\fR] \fI-f TAR_FILE\fR
  +.SH DESCRIPTION
  +Make a Bootable IMAGE using GRUB as a bootloader
  +.SH OPTIONS
  +.IP
  +Actions:
  +\fB\-d\fR DIRECTORY [default CWD]
  +.IP
  +Directory where the boot.image and the partition subdirectories
  +are/will be created
  +.HP
  +\fB\-f\fR TAR_FILE
  +.IP
  +Name of the tar file containing the filesystem to install. Can
  +be a pure tar file [.tar] or a compressed tar file
  +[.tar.gz|.tar.bz2]
  +.HP
  +\fB\-s\fR FS_TYPE
  +.IP
  +Type of the file system to create on the virtual disk. Choices
  +are: ext2, minix or msdos [default is ext2]
  +.HP
  +\fB\-t\fR TYPE
  +.IP
  +Type of the image to create. Choices are '1.20', '1.44', '1.60',
  +\&'1.68', '1.74', '2.88' or 'hd' [default is hd]
  +.HP
  +\fB\-F\fR
  +.IP
  +Force to set the set_dpt flag (unnecessary 99% of the time! Be
  +careful!
  +.IP
  +Informations:
  +\fB\-D\fR     turn Debugging on [xtrace]
  +\fB\-h\fR     display this Help and exit
  +\fB\-V\fR     display Version information and exit
  +.SH AUTHOR
  +Written by Thierry Laronde.
  +Port to the GNU system by Robert Millan.
  +.SH COPYRIGHT
  +Copyright \(co 2001 Thierry Laronde <tlaronde at polynum.org>.
  +.br
  +Copyright \(co 2001,2002 Robert Millan <zeratul2 at wanadoo.es> for the GNU port.
  +GPLed.
  +.PP
  +Copyright \(co 2001 Thierry Laronde <tlaronde at polynum.org>.
  +.br
  +Copyright \(co 2001,2002 Robert Millan <zeratul2 at wanadoo.es> for the GNU port.
  +.PP
  +This is free software under the GPL version 2 or later; see the source for
  +copying conditions.  There is NO warranty, not even for MERCHANTABILITY or
  +FITNESS FOR A PARTICULAR PURPOSE.
  diff -Naur grub-0.93/debian/patches/02grub-doco-path.patch grub-0.93-new/debian/patches/02grub-doco-path.patch
  --- grub-0.93/debian/patches/02grub-doco-path.patch	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/patches/02grub-doco-path.patch	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,21 @@
  +diff -ur grub-0.90/docs/grub.texi ../grub-0.90/docs/grub.texi
  +--- grub-0.90/docs/grub.texi	Thu Jul  5 21:14:21 2001
  ++++ ../grub-0.90/docs/grub.texi	Mon Jul 23 17:54:09 2001
  +@@ -455,7 +455,7 @@
  + if, by any chance, your hard drive becomes unusable (unbootable).
  + 
  + GRUB comes with boot images, which are normally installed in the
  +-directory @file{/usr/share/grub/i386-pc}. You need to copy the files
  ++directory @file{/usr/lib/grub/i386-pc}. You need to copy the files
  + @file{stage1}, @file{stage2}, and @file{*stage1_5} to the directory
  + @file{/boot/grub}. Here the directory where GRUB images are installed
  + and the directory where GRUB will use to find them are called @dfn{image
  +@@ -483,7 +483,7 @@
  + 
  + @example
  + @group
  +-# @kbd{cd /usr/share/grub/i386-pc}
  ++# @kbd{cd /usr/lib/grub/i386-pc}
  + # @kbd{dd if=stage1 of=/dev/fd0 bs=512 count=1}
  + 1+0 records in
  + 1+0 records out
  diff -Naur grub-0.93/debian/patches/03grub-install-usage.patch grub-0.93-new/debian/patches/03grub-install-usage.patch
  --- grub-0.93/debian/patches/03grub-install-usage.patch	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/patches/03grub-install-usage.patch	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,14 @@
  +diff -ur grub-0.90.orig/util/grub-install.in grub-0.90/util/grub-install.in
  +--- grub-0.90.orig/util/grub-install.in	Sat Aug 18 19:49:59 2001
  ++++ grub-0.90/util/grub-install.in	Mon Aug 27 14:27:50 2001
  +@@ -57,6 +57,10 @@
  + 
  + INSTALL_DEVICE can be a GRUB device name or a system device filename.
  + 
  ++grub-install copies GRUB images into the DIR/boot directory specfied by
  ++--root-directory, and uses the grub shell to install grub into the boot
  ++sector.
  ++
  + Report bugs to <bug-grub at gnu.org>.
  + EOF
  + }
  diff -Naur grub-0.93/debian/patches/05hurd-boot.patch grub-0.93-new/debian/patches/05hurd-boot.patch
  --- grub-0.93/debian/patches/05hurd-boot.patch	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/patches/05hurd-boot.patch	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,15 @@
  +diff -Naur grub-0.91.orig/docs/menu.lst grub-0.91/docs/menu.lst
  +--- grub-0.91.orig/docs/menu.lst	Sat Feb 26 19:48:49 2000
  ++++ grub-0.91/docs/menu.lst	Thu Apr  4 16:18:56 2002
  +@@ -14,8 +14,9 @@
  + # For booting the GNU Hurd
  + title  GNU/Hurd
  + root   (hd0,0)
  +-kernel /boot/gnumach.gz root=hd0s1
  +-module /boot/serverboot.gz
  ++kernel /boot/gnumach.gz root=device:hd0s1
  ++module /hurd/ext2fs.static --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume)
  ++module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
  + 
  + # For booting Linux
  + title  GNU/Linux
  diff -Naur grub-0.93/debian/rules grub-0.93-new/debian/rules
  --- grub-0.93/debian/rules	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/rules	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,219 @@
  +#!/usr/bin/make -f
  +
  +# Uncomment this to turn on verbose mode. 
  +export DH_VERBOSE=1
  +
  +# This is the debhelper compatability version to use.
  +export DH_COMPAT=3
  +
  +# These are used for cross-compiling and for saving the configure script
  +# from having to guess our platform (since we know it already)
  +DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
  +DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
  +DEB_BUILD_GNU_SYSTEM  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_SYSTEM)
  +
  +ifeq ($(DEB_BUILD_GNU_SYSTEM),gnu)
  +  SBIN = bin
  +else
  +  SBIN = sbin
  +endif
  +
  +patch: patch-stamp
  +patch-stamp:
  +	dh_testdir
  +
  +	# Add here commands to patch the source..
  +	for i in `ls -1 debian/patches/*` ; \
  +	do \
  +	echo "--- $$i ---" ; patch -p1 < $$i ; \
  +	done
  +
  +	touch patch-stamp
  +
  +unpatch:
  +	dh_testdir
  +
  +	# Add here commands to reverse patchs to the source.
  +	if [ -f patch-stamp ] ; then \
  +	for i in `ls -1 debian/patches/* | sort -r` ; \
  +	do \
  +	echo "--- $$i ---" ; patch -R -p1 < $$i ; \
  +	done ; \
  +	fi \
  +
  +	if [ -f patch-stamp ] ; then \
  +	rm patch-stamp ; \
  +	fi
  +
  +configure: patch-stamp configure-stamp
  +configure-stamp:
  +	dh_testdir
  +
  +	# Add here commands to configure the package.
  +	./configure \
  +	--host=$(DEB_HOST_GNU_TYPE) \
  +	--build=$(DEB_BUILD_GNU_TYPE) \
  +	--prefix=/ \
  +	--exec-prefix=/ \
  +	--mandir=\$${prefix}/usr/share/man \
  +	--infodir=\$${prefix}/usr/share/info \
  +	--datadir=\$${prefix}/usr/lib \
  +	--disable-auto-linux-mem-opt
  +
  +	touch configure-stamp
  +
  +build: patch-stamp configure-stamp build-stamp
  +build-stamp:
  +	dh_testdir
  +
  +	# Add here commands to compile the package.
  +	$(MAKE)
  +
  +	# create html documentation from texi files
  +	( cd docs && texi2html -split_chapter grub.texi )
  +	( cd docs && texi2html -split_chapter multiboot.texi )
  +
  +	## the creation of these manpages here is temporary,
  +	## when building grub finally works with the version
  +	## of autoconf in debian we can use MAINTAINER_MODE_TRUE
  +	# create man page for grub
  +	( cd docs && ./help2man \
  +	--name="the grub shell" \
  +	--section=8 --output=grub.8 \
  +	../grub/grub )
  +
  +	# create man page for grub-install
  +	( cd util && chmod 755 grub-install )
  +	( cd docs && ./help2man \
  +	--name="install GRUB on your drive" \
  +	--section=8 --output=grub-install.8 \
  +	../util/grub-install )
  +
  +	# create man page for mbchk
  +	( cd docs && ./help2man \
  +	--name="check the format of a Multiboot kernel" \
  +	--section=1 --output=mbchk.1 \
  +	../util/mbchk )
  +
  +	# create man page for grub-md5-crypt
  +	( cd util && chmod 755 grub-md5-crypt )
  +	( cd docs && ./help2man \
  +	--name="Encrypt a password in MD5 format" \
  +	--section=8 --output=grub-md5-crypt.8 \
  +	../util/grub-md5-crypt )
  +
  +	touch build-stamp
  +
  +clean:
  +	dh_testdir
  +	dh_testroot
  +	rm -f build-stamp configure-stamp
  +
  +	# Add here commands to clean up after the build process.
  +	-$(MAKE) distclean
  +
  +	# The Makefile doesn't clean up the generated info files so we will do
  +	# it here so the doco is uptodate.
  +	-( cd docs && rm -f *.info* )
  +
  +	# clean up generated html documentation
  +	-( cd docs && rm -f *.html )
  +
  +	# reverse patchs we applied this has to happen after make distclean
  +	-$(MAKE) -s -f debian/rules unpatch
  +
  +	dh_clean
  +
  +install: DH_OPTIONS=
  +install: build
  +	dh_testdir
  +	dh_testroot
  +	dh_clean -k
  +	dh_installdirs
  +
  +	# Add here commands to install the package into debian/grub.
  +	$(MAKE) install \
  +	prefix=$(CURDIR)/debian/grub \
  +	exec_prefix=$(CURDIR)/debian/grub
  +
  +	# make install puts the info files in the grub package but we want them
  +	# in the grub-doc package so lets clean shop and let dh_installinfo do
  +	# the work
  +	rm -rf debian/grub/usr/share/info
  +
  +	# install update-grub
  +	install -m 755 debian/update-grub \
  +	debian/grub/sbin
  +
  +	# install grub-floppy
  +	install -m 755 debian/grub-floppy \
  +	debian/grub/sbin
  +
  +	# install mkbimage
  +	install -m 755 debian/mkbimage \
  +	debian/grub/$(SBIN)
  +
  +	# install the html doco in the grub-doc package
  +	install -m 644 docs/*.html \
  +	debian/grub-doc/usr/share/doc/grub-doc/html/
  +
  +#	dh_movefiles
  +
  +# Build architecture-independent files here.
  +# Pass -i to all debhelper commands in this target to reduce clutter.
  +binary-indep: build install
  +	dh_testdir -i
  +	dh_testroot -i
  +#	dh_installdebconf -i
  +	dh_installdocs -i
  +	dh_installexamples -i
  +#	dh_installmenu -i
  +#	dh_installlogrotate -i
  +#	dh_installemacsen -i
  +#	dh_installpam -i
  +#	dh_installmime -i
  +#	dh_installinit -i
  +#	dh_installcron -i
  +#	dh_installman -i
  +	dh_installinfo -i
  +	dh_installchangelogs ChangeLog -i
  +#	dh_link -i
  +	dh_compress -i
  +	dh_fixperms -i
  +	dh_installdeb -i
  +#	dh_perl -i
  +	dh_gencontrol -i
  +	dh_md5sums -i
  +	dh_builddeb -i
  +
  +# Build architecture-dependent files here.
  +binary-arch: build install
  +	dh_testdir -a
  +	dh_testroot -a
  +#	dh_installdebconf -a
  +	dh_installdocs -a
  +	dh_installexamples -a
  +#	dh_installmenu -a
  +#	dh_installlogrotate -a
  +#	dh_installemacsen -a
  +#	dh_installpam -a
  +#	dh_installmime -a
  +#	dh_installinit -a
  +#	dh_installcron -a
  +	dh_installman -a
  +#	dh_installinfo -a
  +	dh_installchangelogs ChangeLog -a
  +	dh_strip -a
  +#	dh_link -a
  +	dh_compress -a
  +	dh_fixperms -a
  +#	dh_makeshlibs -a
  +	dh_installdeb -a
  +#	dh_perl -a
  +	dh_shlibdeps -a
  +	dh_gencontrol -a
  +	dh_md5sums -a
  +	dh_builddeb -a
  +
  +binary: binary-indep binary-arch
  +.PHONY: build clean binary-indep binary-arch binary install configure patch unpatch
  diff -Naur grub-0.93/debian/update-grub grub-0.93-new/debian/update-grub
  --- grub-0.93/debian/update-grub	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/update-grub	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,615 @@
  +#!/bin/sh
  +#
  +# Insert a list of installed kernels in a grub menu.lst file
  +#   Copyright 2001 Wichert Akkerman <wichert at linux.com>
  +#
  +# This file is free software; you can redistribute it and/or modify it
  +# under the terms of the GNU General Public License as published by
  +# the Free Software Foundation; either version 2 of the License, or
  +# (at your option) any later version.
  +#
  +# This program is distributed in the hope that it will be useful, but
  +# WITHOUT ANY WARRANTY; without even the implied warranty of
  +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  +# General Public License for more details.
  +#
  +# You should have received a copy of the GNU General Public License
  +# along with this program; if not, write to the Free Software
  +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  +#
  +# Contributors:
  +#	Jason Thomas <jason at debian.org>
  +#	David B.Harris <dbarclay10 at yahoo.ca>
  +#	Marc Haber <mh at zugschlus.de>
  +#	Crispin Flowerday <crispin at zeus.com>
  +
  +# Abort on errors
  +set -e
  +
  +find_grub_dir ()
  +{
  +	echo  -n "Searching for GRUB installation directory ... " >&2
  +
  +	for d in $grub_dirs ; do
  +		if [ -d "$d" ] ; then
  +			grub_dir="$d"
  +			break
  +		fi
  +	done
  +	
  +	if [ -z "$grub_dir" ] ; then
  +		abort "No GRUB directory found.  To create a template run 'mkdir /boot/grub' first.  To install grub, install it manually or try the 'grub-install' command.  ### Warning, grub-install is used to change your MBR. ###"
  +	else
  +		echo "found: $grub_dir ." >&2
  +	fi
  +
  +	echo $grub_dir
  +}
  +
  +find_root_device ()
  +{
  +	# Autodetect current root device
  +	root_device=
  +	if [ -f /etc/fstab ] ; then
  +		script='
  +			/^#/ { next }
  +			$2 == "/" { print $1 ; exit }
  +			'
  +		root_device=$(awk "$script" /etc/fstab)
  +	fi
  +	if [ -z "$root_device" ]; then
  +		echo "$PROG: Cannot determine root file system.  Assuming /dev/hda1" >&2
  +		root_device=/dev/hda1
  +	fi
  +
  +	echo $root_device
  +}
  +
  +# Usage: convert os_device
  +# Convert an OS device to the corresponding GRUB drive.
  +# This part is OS-specific.
  +convert () {
  +    # First, check if the device file exists.
  +    if test -e "$1"; then
  +		:
  +    else
  +		echo "$1: Not found or not a block device." 1>&2
  +		exit 1
  +    fi
  +
  +	host_os=`uname -s | tr '[A-Z]' '[a-z]'`
  +
  +    # Break the device name into the disk part and the partition part.
  +    case "$host_os" in
  +    linux*)
  +		tmp_disk=`echo "$1" | sed -e 's%\([sh]d[a-z]\)[0-9]*$%\1%' \
  +				  -e 's%\(fd[0-9]*\)$%\1%' \
  +				  -e 's%/part[0-9]*$%/disc%' \
  +				  -e 's%\(c[0-7]d[0-9]*\).*$%\1%'`
  +		tmp_part=`echo "$1" | sed -e 's%.*/[sh]d[a-z]\([0-9]*\)$%\1%' \
  +				  -e 's%.*/fd[0-9]*$%%' \
  +				  -e 's%.*/floppy/[0-9]*$%%' \
  +				  -e 's%.*/\(disc\|part\([0-9]*\)\)$%\2%' \
  +				  -e 's%.*c[0-7]d[0-9]*p*%%'`
  +	;;
  +    gnu*)
  +		tmp_disk=`echo "$1" | sed 's%\([sh]d[0-9]*\).*%\1%'`
  +		tmp_part=`echo "$1" | sed "s%$tmp_disk%%"` ;;
  +    freebsd*)
  +		tmp_disk=`echo "$1" | sed 's%r\{0,1\}\([saw]d[0-9]*\).*$%r\1%' \
  +			    | sed 's%r\{0,1\}\(da[0-9]*\).*$%r\1%'`
  +		tmp_part=`echo "$1" \
  +	    		| sed "s%.*/r\{0,1\}[saw]d[0-9]\(s[0-9]*[a-h]\)%\1%" \
  +       	    	| sed "s%.*/r\{0,1\}da[0-9]\(s[0-9]*[a-h]\)%\1%"`
  +	;;
  +    netbsd*)
  +		tmp_disk=`echo "$1" | sed 's%r\{0,1\}\([sw]d[0-9]*\).*$%r\1d%' \
  +	    		| sed 's%r\{0,1\}\(fd[0-9]*\).*$%r\1a%'`
  +		tmp_part=`echo "$1" \
  +	    		| sed "s%.*/r\{0,1\}[sw]d[0-9]\([abe-p]\)%\1%"`
  +	;;
  +    *)
  +		echo "update-grub does not support your OS yet." 1>&2
  +		exit 1 ;;
  +    esac
  +
  +    # Get the drive name.
  +    tmp_drive=`grep -v '^#' $device_map | grep "$tmp_disk *$" \
  +			| sed 's%.*\(([hf]d[0-9][a-g0-9,]*)\).*%\1%'`
  +
  +    # If not found, print an error message and exit.
  +    if test "x$tmp_drive" = x; then
  +		echo "$1 does not have any corresponding BIOS drive." 1>&2
  +		exit 1
  +    fi
  +
  +    if test "x$tmp_part" != x; then
  +		# If a partition is specified, we need to translate it into the
  +		# GRUB's syntax.
  +		case "$host_os" in
  +		linux*)
  +	    	echo "$tmp_drive" | sed "s%)$%,`expr $tmp_part - 1`)%" ;;
  +		gnu*)
  +	    	if echo $tmp_part | grep "^s" >/dev/null; then
  +				tmp_pc_slice=`echo $tmp_part \
  +		    		| sed "s%s\([0-9]*\)[a-g]*$%\1%"`
  +				tmp_drive=`echo "$tmp_drive" \
  +		    		| sed "s%)%,\`expr "$tmp_pc_slice" - 1\`)%"`
  +	    	fi
  +	    	if echo $tmp_part | grep "[a-g]$" >/dev/null; then
  +				tmp_bsd_partition=`echo "$tmp_part" \
  +		    		| sed "s%[^a-g]*\([a-g]\)$%\1%"`
  +				tmp_drive=`echo "$tmp_drive" \
  +		    		| sed "s%)%,$tmp_bsd_partition)%"`
  +	    	fi
  +	    	echo "$tmp_drive" ;;
  +		freebsd*)
  +	    	if echo $tmp_part | grep "^s" >/dev/null; then
  +				tmp_pc_slice=`echo $tmp_part \
  +		    		| sed "s%s\([0-9]*\)[a-h]*$%\1%"`
  +				tmp_drive=`echo "$tmp_drive" \
  +		    		| sed "s%)%,\`expr "$tmp_pc_slice" - 1\`)%"`
  +	    	fi
  +	    	if echo $tmp_part | grep "[a-h]$" >/dev/null; then
  +				tmp_bsd_partition=`echo "$tmp_part" \
  +		    		| sed "s%s\{0,1\}[0-9]*\([a-h]\)$%\1%"`
  +				tmp_drive=`echo "$tmp_drive" \
  +		    		| sed "s%)%,$tmp_bsd_partition)%"`
  +	    	fi
  +	    	echo "$tmp_drive" ;;
  +		netbsd*)
  +	    	if echo $tmp_part | grep "^[abe-p]$" >/dev/null; then
  +				tmp_bsd_partition=`echo "$tmp_part" \
  +		    		| sed "s%\([a-p]\)$%\1%"`
  +				tmp_drive=`echo "$tmp_drive" \
  +		    		| sed "s%)%,$tmp_bsd_partition)%"`
  +	    	fi
  +	    	echo "$tmp_drive" ;;
  +		esac
  +    else
  +		# If no partition is specified, just print the drive name.
  +		echo "$tmp_drive"
  +    fi
  +}
  +
  +
  +## Configuration Options
  +# directory's to look for the grub installation and the menu file
  +grub_dirs="/boot/grub /boot/boot/grub"
  +
  +# The grub installation directory
  +grub_dir=`find_grub_dir`
  +
  +# Full path to the menu.lst
  +menu_file=$grub_dir/menu.lst
  +
  +# if we already have a menu_file we don't need these options
  +if [ ! -f $menu_file ] ; then
  +
  +	# The place where to root filesystem is mounted.
  +	root_device=`find_root_device`
  +
  +	# Full path to the device.map
  +	device_map=$grub_dir/device.map
  +
  +	# Default kernel options, overidden by the kopt statement in the menufile.
  +	kopt="root=$root_device ro"
  +
  +	# if we don't have a device.map then we can't use the convert function.
  +	# and for now if /boot is where the root device is mounted also skip this
  +	# bit
  +	if test -f "$device_map" && test ! -d "/boot/boot" ; then
  +		# Drive(in GRUB terms) where the kernel is located. If a seperate
  +		# partition, this would be mounted under /boot, overridden by the kopt statement in menufile
  +		grub_root_device=`convert "$root_device"`
  +	else
  +		grub_root_device="(hd0,0)"
  +
  +	fi
  +
  +	# should grub create the alternative boot options in the menu
  +	alternative="true"
  +
  +	# should grub lock the alternative boot options in the menu
  +	lockalternative="false"
  +
  +	# options to use with the alternative boot options
  +	altoptions="(recovery mode) single"
  +
  +	# controls howmany kernels are listed in the menu.lst,
  +	# this does not include the alternative kernels
  +	howmany="all"
  +
  +	# stores the command line arguments
  +	command_line_arguments=$1
  +fi
  +
  +# Default options to use in a new menu.lst . This will only be used if menu.lst
  +# doesn't already exist. Only edit the lines between the two "EOF"s. The others are
  +# part of the script.
  +newtemplate=$(tempfile)
  +cat > "$newtemplate" <<EOF
  +# /boot/grub/menu.lst - See: grub(8), info grub, update-grub(8)
  +# --------------------       grub-install(8), grub-floppy(8),
  +#                            grub-md5-crypt, /usr/share/doc/grub
  +#                            and /usr/share/doc/grub-doc/.
  +
  +## default num
  +# Set the default entry to the entry number NUM. Numbering starts from 0, and
  +# the entry number 0 is the default if the command is not used.
  +#
  +# You can specify 'saved' instead of a number. In this case, the default entry
  +# is the entry saved with the command 'savedefault'.           
  +default		0
  +
  +## timeout sec
  +# Set a timeout, in SEC seconds, before automatically booting the default entry
  +# (normally the first entry defined).
  +timeout		5
  +
  +# Pretty colours
  +color cyan/blue white/blue
  +
  +## password ['--md5'] passwd
  +# If used in the first section of a menu file, disable all interactive editing
  +# control (menu entry editor and command-line)  and entries protected by the
  +# command 'lock'
  +# e.g. password topsecret
  +#      password --md5 \$1\$gLhU0/\$aW78kHK1QfV3P2b2znUoe/
  +# password topsecret
  +
  +#
  +# examples
  +#
  +# title		Windows 95/98/NT/2000
  +# root		(hd0,0)
  +# makeactive
  +# chainloader	+1
  +#
  +# title		Linux
  +# root		(hd0,1)
  +# kernel	/vmlinuz root=/dev/hda2 ro
  +#
  +
  +#
  +# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST
  +
  +EOF
  +## End Configuration Options
  +
  +
  +# Make sure we use the standard sorting order
  +LC_COLLATE=C
  +# Magic markers we use
  +start="### BEGIN AUTOMAGIC KERNELS LIST"
  +end="### END DEBIAN AUTOMAGIC KERNELS LIST"
  +
  +startopt="## ## Start Default Options ##"
  +endopt="## ## End Default Options ##"
  +
  +abort() {
  +	message=$@
  +
  +	echo >&2
  +	echo "$message" >&2
  +	echo >&2
  +	exit 1
  +}
  +
  +# Extract options from menu.lst
  +ExtractMenuOpt()
  +{
  +	opt=$1
  +
  +	sed -ne "/^$start\$/,/^$end\$/ {
  +		/^$startopt\$/,/^$endopt\$/ {
  +			/^# $opt=/ {
  +				s/^# $opt=\(.*\)\$/\1/
  +				p
  +			}
  +		}
  +	}" $menu
  +}
  +
  +GetMenuOpt()
  +{
  +	opt=$1
  +	value=$2
  +
  +	tmp=$(ExtractMenuOpt "$opt")
  +
  +	[ -z "$tmp" ] || value="$tmp"
  +
  +	echo $value
  +}
  +
  +# Compares two version strings A and B
  +# Returns -1 if A<B
  +#          0 if A==B
  +#          1 if A>B
  +# This compares version numbers of the form
  +# 2.4.14-random > 2.4.14-ac10 > 2.4.14 > 2.4.14-pre2 > 
  +# 2.4.14-pre1 > 2.4.13-ac99
  +CompareVersions()
  +{
  +	# First split the version number and remove any '.' 's or dashes
  +	v1=$(echo $1 | sed -e 's![^0-9]\+! & !g' -e 's![\.\-]!!g')
  +	v2=$(echo $2 | sed -e 's![^0-9]\+! & !g' -e 's![\.\-]!!g')
  +
  +	# we weight different kernel suffixes here
  +	# ac  = 50
  +	# pre = -50
  +	# rc  = -40
  +	# others are given 99
  +	v1=$(echo $v1 | sed -e 's! ac ! 50 !g' -e 's! rc ! -40 !g' -e 's! pre ! -50 !g' -e 's![^-0-9 ]\+!99!g')
  +	v2=$(echo $v2 | sed -e 's! ac ! 50 !g' -e 's! rc ! -40 !g' -e 's! pre ! -50 !g' -e 's![^-0-9 ]\+!99!g')
  +
  +	result=0; v1finished=0; v2finished=0;
  +	while [ $result -eq 0 -a $v1finished -eq 0 -a $v2finished -eq 0 ];
  +	do
  +		if [ "$v1" = "" ]; then
  +			v1comp=0; v1finished=1
  +		else
  +			set -- $v1; v1comp=$1; shift; v1=$*
  +		fi
  +
  +		if [ "$v2" = "" ]; then
  +			v2comp=0; v2finished=1
  +		else
  +			set -- $v2; v2comp=$1; shift; v2=$*
  +		fi
  +
  +		if   [ $v1comp -gt $v2comp ]; then result=1
  +		elif [ $v1comp -lt $v2comp ]; then result=-1
  +		fi
  +	done
  +
  +	# finally return the result
  +	echo $result
  +}
  +
  +# looks in the directory specified for an initrd image with the version specified
  +FindInitrdName()
  +{
  +	# strip trailing slashes
  +	directory=$(echo $1 | sed -e 's#/*$##')
  +	version=$2
  +
  +	# initrd
  +	# initrd.img
  +	# initrd-lvm
  +	# .*.gz
  +
  +	initrdName=""
  +	names="initrd initrd.img initrd-lvm"
  +	compressed="gz"
  +
  +	for n in $names ; do
  +		# make sure we haven't already found it
  +		if [ -z "$initrdName" ] ; then
  +			if [ -f "$directory/$n-$version" ] ; then
  +				initrdName="$n-$version"
  +				break
  +			else
  +				for c in $compressed ; do
  +					if [ -f "$directory/$n-$version.$c" ] ; then
  +						initrdName="$n-$version.$c"
  +						break
  +					fi
  +				done
  +			fi
  +		else
  +			break
  +		fi
  +	done
  +
  +	# return the result
  +	echo $initrdName
  +}
  +
  +
  +echo -n "Testing for an existing GRUB menu.list file... "
  +
  +# Test if our menu file exists
  +if [ -f "$menu_file" ] ; then
  +	menu="$menu_file"
  +	unset newtemplate
  +	echo "found: $menu_file ."
  +	cp -f "$menu_file" "$menu_file~"
  +else
  +	# if not ask user if they want us to create one
  +	menu="$menu_file"
  +	echo
  +	echo
  +	echo -n "Could not find $menu_file file. "
  +	if [ "-y" = "$command_line_arguments" ] ; then
  +		echo 
  +		echo "Generating $menu_file"
  +		answer=y
  +	else
  +		echo -n "Would you like $menu_file generated for you? "
  +		echo -n "(y/N) "
  +		read answer
  +	fi
  +
  +	case "$answer" in
  +		y* | Y*)
  +		cat "$newtemplate" > $menu_file
  +		unset newtemplate
  +		;;
  +		*)
  +		abort "Not creating $menu_file as you wish"
  +		;;
  +	esac
  +fi
  +
  +# Extract the kernel options to use
  +kopt=$(GetMenuOpt "kopt" "$kopt")
  +
  +# Extract the grub root
  +grub_root_device=$(GetMenuOpt "groot" "$grub_root_device")
  +
  +# Extract the old recovery value
  +alternative=$(GetMenuOpt "recovery" "$alternative")
  +
  +# Extract the alternative value
  +alternative=$(GetMenuOpt "alternative" "$alternative")
  +
  +# Extract the lockalternative value
  +lockalternative=$(GetMenuOpt "lockalternative" "$lockalternative")
  +
  +# Extract the howmany value
  +howmany=$(GetMenuOpt "howmany" "$howmany")
  +
  +# Generate the menu options we want to insert
  +buffer=$(tempfile)
  +echo $start >> $buffer
  +echo "## lines between the AUTOMAGIC KERNELS LIST markers will be modified" >> $buffer
  +echo "## by the debian update-grub script except for the default optons below" >> $buffer
  +echo >> $buffer
  +echo "## DO NOT UNCOMMENT THEM, Just edit them to your needs" >> $buffer
  +echo >> $buffer
  +echo "## ## Start Default Options ##" >> $buffer
  +
  +echo "## default kernel options" >> $buffer
  +echo "## default kernel options for automagic boot options" >> $buffer
  +echo "## e.g. kopt=root=/dev/hda1 ro" >> $buffer
  +echo "# kopt=$kopt" >> $buffer
  +echo >> $buffer
  +
  +echo "## default grub root device" >> $buffer
  +echo "## e.g. groot=(hd0,0)" >> $buffer
  +echo "# groot=$grub_root_device" >> $buffer
  +echo >> $buffer
  +
  +echo "## should update-grub create alternative automagic boot options" >> $buffer
  +echo "## e.g. alternative=true" >> $buffer
  +echo "##      alternative=false" >> $buffer
  +echo "# alternative=$alternative" >> $buffer
  +echo >> $buffer
  +
  +echo "## should update-grub lock alternative automagic boot options" >> $buffer
  +echo "## e.g. lockalternative=true" >> $buffer
  +echo "##      lockalternative=false" >> $buffer
  +echo "# lockalternative=$lockalternative" >> $buffer
  +echo >> $buffer
  +
  +echo "## altoption boot targets option" >> $buffer
  +echo "## multiple altoptions lines are allowed" >> $buffer
  +echo "## e.g. altoptions=(extra menu suffix) extra boot options" >> $buffer
  +echo "##      altoptions=(recovery mode) single" >> $buffer
  +
  +if ! grep -q "^# altoptions" $menu ; then
  +	echo "# altoptions=$altoptions" >> $buffer
  +else
  +	grep "^# altoptions" $menu >> $buffer
  +fi
  +echo >> $buffer
  +
  +echo "## controls how many kernels should be put into the menu.lst" >> $buffer
  +echo "## only counts the first occurence of a kernel, not the" >> $buffer
  +echo "## alternative kernel options" >> $buffer
  +echo "## e.g. howmany=all" >> $buffer
  +echo "##      howmany=7" >> $buffer
  +echo "# howmany=$howmany" >> $buffer
  +echo >> $buffer
  +
  +echo "## ## End Default Options ##" >> $buffer
  +echo >> $buffer
  +
  +sortedKernels=""
  +for kern in $(/bin/ls -1vr /boot/vmlinuz-*) ; do
  +	# found a kernel
  +	newerKernels=""
  +	for i in $sortedKernels ; do
  +		res=$(CompareVersions "$kern" "$i")
  +		if [ "$kern" != "" -a "$res" -gt 0 ] ; then
  +			newerKernels="$newerKernels $kern $i"
  +			kern=""
  +		else
  +			newerKernels="$newerKernels $i"
  +		fi
  +	done
  +	if [ "$kern" != "" ] ; then
  +		newerKernels="$newerKernels $kern"
  +	fi
  +	sortedKernels="$newerKernels"
  +done
  +
  +counter=0
  +for kern in $sortedKernels ; do
  +	counter=$(($counter + 1))
  +	if test ! x"$howmany" = x"all" ; then
  +		if [ $counter -gt $howmany ] ; then 
  +			break
  +		fi
  +	fi
  +	kernelName=$(basename $kern)
  +	kernelVersion=$(echo $kernelName | sed -e 's/vmlinuz-//')
  +	initrdName=$(FindInitrdName "/boot" "$kernelVersion")
  +
  +	if mount | grep -qs "on /boot " > /dev/null 2>&1 ; then
  +		kernel=/$kernelName
  +		if [ -n "$initrdName" ] ; then
  +			initrd=/$initrdName
  +		fi
  +	else
  +		kernel=/boot/$kernelName
  +		if [ -n "$initrdName" ] ; then
  +			initrd=/boot/$initrdName
  +		fi
  +	fi
  +
  +	echo "Found kernel: $kernel"
  +
  +	echo "title		Debian GNU/Linux, kernel $kernelVersion" >> $buffer
  +	echo "root		$grub_root_device" >> $buffer
  +	echo "kernel		$kernel $kopt"  >> $buffer
  +	if [ -n "$initrdName" ]; then
  +		echo "initrd		$initrd" >> $buffer
  +	fi
  +	echo "savedefault" >> $buffer
  +	echo "boot" >> $buffer
  +	echo >> $buffer
  +
  +	# insert the alternative boot options
  +	if test ! x"$alternative" = x"false" ; then
  +		# for each altoptions line do this stuff
  +		sed -ne 's/# altoptions=\(.*\)/\1/p' $buffer | while read line; do
  +			descr=$(echo $line | sed -ne 's/\(([^)]*)\)[[:space:]]\(.*\)/\1/p')
  +			suffix=$(echo $line | sed -ne 's/\(([^)]*)\)[[:space:]]\(.*\)/\2/p')
  +			echo "title		Debian GNU/Linux, kernel $kernelVersion $descr" >> $buffer
  +			# lock the alternative options
  +			if test x"$lockalternative" = x"true" ; then
  +				echo "lock" >> $buffer
  +			fi
  +			echo "root		$grub_root_device" >> $buffer
  +			echo "kernel		$kernel $kopt $suffix"  >> $buffer
  +			if [ -n "$initrdName" ]; then
  +				echo "initrd		$initrd" >> $buffer
  +			fi
  +			echo "savedefault" >> $buffer
  +			echo "boot" >> $buffer
  +			echo >> $buffer
  +		done
  +	fi
  +done
  +
  +echo $end >> $buffer
  +
  +echo -n "Updating $menu ... "
  +# Insert the new options into the menu
  +if ! grep -q "^$start" $menu ; then
  +	cat $buffer >> $menu
  +else
  +	umask 077
  +	sed -e "/^$start/,/^$end/{
  +	/^$start/r $buffer
  +	d
  +	}
  +	" $menu > $menu.new
  +	cat $menu.new > $menu
  +	rm -f $buffer $menu.new
  +fi
  +echo "done"
  +echo
  diff -Naur grub-0.93/debian/update-grub.8 grub-0.93-new/debian/update-grub.8
  --- grub-0.93/debian/update-grub.8	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/debian/update-grub.8	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,91 @@
  +.\" Please adjust this date whenever revising the manpage.
  +.\" 
  +.\" Some roff macros, for reference:
  +.\" .nh        disable hyphenation
  +.\" .hy        enable hyphenation
  +.\" .ad l      left justify
  +.\" .ad b      justify to both left and right margins
  +.\" .nf        disable filling
  +.\" .fi        enable filling
  +.\" .br        insert line break
  +.\" .sp <n>    insert n+1 empty lines
  +.\" for manpage-specific macros, see man(7)
  +.TH "update-grub" "8" "June 18, 2001" "Jason Thomas"
  +.SH "NAME"
  +update\-grub \- program to generate GRUB's menu.lst file
  +.SH "SYNOPSIS"
  +.B update\-grub [-y]
  +.SH "OPTIONS"
  +.TP
  +\fB-y\fR
  +Assume 'yes' on all questions.
  +.SH "DESCRIPTION"
  +.B \fBupdate\-grub\fR
  +is a program used to generate the \fImenu.lst\fR file used by the grub bootloader.
  +It works by looking in \fI/boot\fR for all files which start with "\fIvmlinuz\-\fR". They will be treated as kernels, and grub menu entries will be created for each. It will also create the initial \fImenu.lst\fR if none exists, after prompting the user.
  +It will also add initrd lines for ramdisk images found with the same version as kernels found. e.g. /boot/vmlinuz-2.4.5 and /boot/initrd-2.4.5 will cause a line of "initrd=/boot/initrd-2.4.5 or simliar to be added for the kernel entry in the menu.lst.
  +
  +After \fBupdate\-grub\fR has been run for the first time, the user is required to edit the generated \fBmenu.lst\fR. The user must set the two options \fBupdate\-grub\fR uses. Then re\-run the \fBupdate\-grub\fR script to update the \fImenu.lst\fR file using the default's that have been set.
  +
  +These are the options passed to the linux kernel:
  +.br 
  +# kopt=root=/dev/hda1 ro
  +.br 
  +Everything after "kopt=" is passed to the kernel as parameters. See bootparam(7) for more information.
  +
  +This is the grub device from which grub loads the kernel:
  +.br 
  +# groot=(hd0,1)
  +.br 
  +(hd0,1) is a partition in grub notation. See grub(8) for more information.
  +
  +This option controls if grub should create the alternative boot options in the menu entries
  +.br
  +# alternative=true
  +.br
  +# alternative=false
  +
  +This option controls if grub should lock the alternative boot options see grub(8) for more information.
  +.br
  +# lockalternative=true
  +.br
  +# lockalternative=false
  +
  +This options controls what is used for the alternative boot options, multiple altoptions lines are allowed.
  +.br
  +# altoptions=(some description) some kernel command line options
  +.br
  +# altoptions=(recovery option) single
  +.br
  +The description is placed in '()' and the kernel command line options follow that.
  +
  +The \fBupdate\-grub\fR script can be ran automagically from the \fI/etc/kernel\-img.conf\fR file by adding the following lines:
  +
  +postinst_hook = /sbin/update\-grub
  +.br 
  +postrm_hook = /sbin/update\-grub
  +.br 
  +do_bootloader = no
  +
  +For further information related to \fI/etc/kernel\-img.conf\fR, see the manpage kernel\-img.conf(5).
  +.SH "SEE ALSO"
  +.BR grub (8),
  +.BR grub\-install (8),
  +.BR kernel\-img.conf (5),
  +.BR bootparam (7).
  +.PP
  +The full documentation for
  +.B grub
  +is maintained as a Texinfo manual in the grub-doc package.  If the
  +.B info
  +and
  +.B grub
  +programs are properly installed at your site, the command
  +.IP
  +.B info grub
  +.PP
  +should give you access to the complete manual.
  +.SH "AUTHOR"
  +This manual page was written by Jason Thomas <jason at debian.org>,
  +for the Debian GNU/Linux system (but may be used by others).
  +.\" vim:syn=nroff
  diff -Naur grub-0.93/docs/grub-install.8 grub-0.93-new/docs/grub-install.8
  --- grub-0.93/docs/grub-install.8	2002-12-08 03:17:59.000000000 +0000
  +++ grub-0.93-new/docs/grub-install.8	2003-09-27 18:57:33.000000000 +0000
  @@ -29,6 +29,10 @@
   probe a device map even if it already exists
   .PP
   INSTALL_DEVICE can be a GRUB device name or a system device filename.
  +.PP
  +grub-install copies GRUB images into the DIR/boot directory specfied by
  +\fB\-\-root\-directory\fR, and uses the grub shell to install grub into the boot
  +sector.
   .SH "REPORTING BUGS"
   Report bugs to <bug-grub at gnu.org>.
   .SH "SEE ALSO"
  diff -Naur grub-0.93/docs/grub-md5-crypt.8.rej grub-0.93-new/docs/grub-md5-crypt.8.rej
  --- grub-0.93/docs/grub-md5-crypt.8.rej	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/docs/grub-md5-crypt.8.rej	2003-09-27 18:57:33.000000000 +0000
  @@ -0,0 +1,13 @@
  +***************
  +*** 1,5 ****
  +  .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.23.
  +- .TH GRUB-MD5-CRYPT "8" "January 2003" "grub-md5-crypt (GNU GRUB )" FSF
  +  .SH NAME
  +  grub-md5-crypt \- Encrypt a password in MD5 format
  +  .SH SYNOPSIS
  +--- 1,5 ----
  +  .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.23.
  ++ .TH GRUB-MD5-CRYPT "8" "February 2003" "grub-md5-crypt (GNU GRUB )" FSF
  +  .SH NAME
  +  grub-md5-crypt \- Encrypt a password in MD5 format
  +  .SH SYNOPSIS
  diff -Naur grub-0.93/docs/grub-md5-crypt.8~ grub-0.93-new/docs/grub-md5-crypt.8~
  --- grub-0.93/docs/grub-md5-crypt.8~	1970-01-01 00:00:00.000000000 +0000
  +++ grub-0.93-new/docs/grub-md5-crypt.8~	2002-12-08 03:17:59.000000000 +0000
  @@ -0,0 +1,32 @@
  +.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.23.
  +.TH GRUB-MD5-CRYPT "8" "December 2002" "grub-md5-crypt (GNU GRUB )" FSF
  +.SH NAME
  +grub-md5-crypt \- Encrypt a password in MD5 format
  +.SH SYNOPSIS
  +.B grub-md5-crypt
  +[\fIOPTION\fR]
  +.SH DESCRIPTION
  +Encrypt a password in MD5 format.
  +.TP
  +\fB\-h\fR, \fB\-\-help\fR
  +print this message and exit
  +.TP
  +\fB\-v\fR, \fB\-\-version\fR
  +print the version information and exit
  +.TP
  +\fB\-\-grub\-shell\fR=\fIFILE\fR
  +use FILE as the grub shell
  +.SH "REPORTING BUGS"
  +Report bugs to <bug-grub at gnu.org>.
  +.SH "SEE ALSO"
  +The full documentation for
  +.B grub-md5-crypt
  +is maintained as a Texinfo manual.  If the
  +.B info
  +and
  +.B grub-md5-crypt
  +programs are properly installed at your site, the command
  +.IP
  +.B info grub-md5-crypt
  +.PP
  +should give you access to the complete manual.
  
  
  



More information about the patches mailing list