This package allows you to create a Debian installation system on
floppy disk or other media, for bootstrapping Debian onto a new
system. Most users will simply download the pre-compiled disk images
or iso cd images to do this. These instructions are addressed to those
who want to build their own boot-floppies package from the
sources. You may want to do this to provide extra capabilities (please
consider sharing your enhancements back to the main project), or to
create a limited version for particular needs.

The boot-floppies team has recently (11/2001) created the possibility
of choosing the language you wish to use for installation at the
beginning of the install. 

Another possibility is to build a version of boot-floppies using a
single language. This may be preferable in certain circumstances, to
save disk space or simplify the install for users. In order to
accomplish this, specify that language in the config file. Here is an
example using es (Espanol):

langs		    := C es
# cs da de eo es fi fr gl hr hu it ja pl pt ru sk sv tr
export langs_root   := en es
# pt de pl fr es ja sv it hu
LINGUA		    := es
# C

Then (as root in the boot-floppies source folder) 'make check', install
any missing packages, and 'make release'. The final result is placed in
the release folder. To build, you will need 70-100M free space on your
build partition, and an additional 50-60M in /archive for local
downloaded packages.


If you just want to build documentation, run 'make documentation'.

If you wanna hack on the system, either to build it or help improve
it, you will need to have some skills:

  - shell scripting
  - makefile hacking
  - knowledge of the Debian archive
  - patience
  - time

You'll also have to have some system requirements satisfied:

  - network connection (packages are now downloaded as needed)
  - lots of disk (probably over 200MB)
  - a fast machine, running Woody (see below)
  - an UTF8 locale if you want to enable language chooser
    (The font reduction process needs to run under a UTF-8 locale.  It
    doesn't much matter which one; en_IN.UTF-8 was just a random choice.)

Whenever you are setting up boot-floppies for building on a new
system, you need to follow these steps:

- You'll need certain packages to build this.  If you installed the
  boot-floppies package, you should be fine.  If you have the source
  by other means, be sure to run 'make check_depends'; 'make check'
  will run this anyways, just to be sure.

- You should also be running the distribution you are building for.
  Thus, if you're build Woody boot-floppies, you should be running a
  more or less up-to-date Woody system.

  However, there are some special cases.  Due to weaknesses in
  rootdisk building for instance, you will need to match the libc
  version which is downloaded during rootdisk building (see the
  local sources.list file)

- m68k and some other arches might even need some other stuff.  m68k
  probably needs the materials from
  potato/main/disks-m68k/current/source/m68k-support.tar.gz

  powerpc needs BootX <URL:http://penguinppc.org/~benh/> and
  bootvars <URL:ftp://top.cis.syr.edu/users/fadushin/bootvars/> in the
  tools_dir (as specified in 'config')

- You'll need to be running a kernel with loop support (module is fine)
  'make check' will check for this

- On i386 at least, you'll need msdos filesystem support (module is fine)
  'make check' will check for this

- `cd /usr/src/boot-floppies' or your local checked out CVS copy.
  This is the top level of the source.

- Setup the file locations to suit your local environment; 
  see the file 'config' in the top level

- If you have any local packages you need to use, you can put them in
  the directories specified with the variables 'incoming' or 'local_dir'
  from the file 'config'.  In the 'make localfiles' step those will be
  copied to a 'updates' dir.

  Note that you do not necessarily have to install those packages
  on your system as the scripts extract the files they need from
  the *.deb package files

- run 'make check'
  This checks your local settings and makes sure you have all the 
  necessary packages.

- run `make release'
  This compiles the programs that are specially designed for the
  installation disks, extracts programs from the Debian FTP mirror and
  builds all the disks.

  If you have sudo setup to allow you to get root pretty liberally,
  you can do 'make release' as a normal user.  Otherwise, you need to
  do it as root.  See the 'ROOTCMD' variable in 'config'.

- alternatively, run 'make build'
  This Make target builds the scripts, without trying to arrange them
  prettily in the release/ directory.  It's a lot faster than 'make
  release'.

If you have problems with the *.sh scripts, you can set debugging and
other options as environment variables.  See the top of common.sh for
details.


