TODO list:

 NOTE : architecture renvoy par dpkg sur un amd 64: "amd64"

 A TESTER :

 - manual_part :permettre d'utilsier la valeur 1 pour le mkfs par defaut

 Non interactif :

 - permettre d'avoir un dhcp client qui obtient son nom par la requette
  il faut aprs la requette dhcp tester : 
     - est-ce que l'on a recu un nom
     - sinon est-ce que l'on peut rsoudre le nom
     - sinon demander un nom

 -id : noyau modulaire sur la disquette : toutes les cartes reseaux + ide.
scsi en modules dans la miniroot.

Many targets on the same miniroot-server :
 
 - Solution 1 : read-only miniroot
 
   * see  http://panopticon.csustan.edu/thood/readonly-root-README.txt
   * repli-update must create temporary files into /target/tmp DONE
   * trying "mount -n" in repli-update to avoid writing in /etc/mtab DONE 

 - Solution 2 : 1 miniroot per target :
 
   look at Loc's code in repli-miniroot

 - Solution 3 : 1 miniroot read only + ramdisks for variable contents  

WHISES :

 - homogneiser la gestion des exclusions dans les appels  rsync (des fois on utilise
la ligne de commande ,des fois on crer un fichier d'exclusion)
 - add support for PXE
 - test rootstrap : DONE, I keep dbootstrap
 - test rsync option --whole-file (should speed up by 10!)
 - One subdir of /etc/replicator per classe
 - get the model partitioning using sfdisk

- add :

#SIMPLEST WAY TO DO: if the hardrive of the copy is 100% identical
#to the hardrive of the model and you want the same partition scheme:
#$same_hd_and_part=1 : use sfdisk -d on the model on the root disk.
#then feed sfdisk with this dump during install
#

- use a "replicator" list for debootstrap OR get rid of debootstrap (use
  local installed package)

- create repli-kernel that compile the correct kernel for boottime.
- move the save_kbd function from repli-dialog to repli-install DONE
- change cmdline parameter handling of repli-install
- add umount -a at the beginning of repli-dialog?
- turn exec("cp *") into docopy with globs
- put dialog message during repli-update
- rsyncd: add random login/password (stored in the miniroot)
- allow to choose grub or lilo to put on the HD DONE (sort of)
- preserve public/private keys in case of reinstallation
- repli-sync:
  * if  $noboot=0 the kernel is reinstall so rerun lilo/grub/bootloader
    and proposed reboot.
  * exclude /etc/replicator from rsync
- classes mechanism
- ?? add hostbyname + tftpboot + preserve_firstpart variables
- ?? frontend for replicator.conf
- autodetect a change in configuration???

questions: 

- shall we copy the whole  /var/lib? Shall we recreate only the  directory stucture of /var??

plan for very fast multi-install:

-tree install (model->c1 then simultaneously c1->c2 an model->c3):
 
 for 100% similar machines the fastest way is to use  dhcp targets:

model->c1

 on model create bootdisk b_model

 we can afford copying the fstab + the lilo.conf ($keep_lilo_fstab=1)
 change the update_rules:
 
                    *the miniroot 
		    */etc/replicator
		    */etc/exports
 
 install c1 with b_model
 
 then after rebooting c1, run on c1:  repli-miniroot -u 
                                   
 go on c2, boot it with b_model : you make model->c2
 
 go on c3, boot it with b_model BUT edit the commandline to pur b1 as
 nfsroot server: the you make c1->c3

 nxt you'll make: model->c4 c1->c6 c2->c7 c3->c8

----------

verbosity :

 -explain why getting 127.0.0.1 is bad


----------

DONE

 - pas de grub sur la target, install auto depuis la miniroot NON c'est
     infaisable, entre autre  cause du bug de dpkg qui ne respecte pas la
     variable --root

 - lilo sur le model, repli-install doit l'utiliser OK

 - faire un bootdisk qui dmarre automatiquemet sur la cible par dfaut avec timeout
    
 - si no_reboot on n'obtient pas un shell mail on passe en runlevel 2.
     soit mettre replicator  la fin du runlevel 2, soit essayer de jouer sur 
     init.
    
     essais : du runlevel 2 j'enleve : syslogd, klogd, exim, atd, cron,
     rmnologin et stop-boologd et je met S99replicator j'enleve le bootlogd 
     du rc.S
 
     c'est jouable  condition d'viter le login qui relance l'install
     ID : lancer repli-dialog depuis l'initab sur la console 1. Si je 
     replique un portable j'ai besoin de lancer le pcmcia. EN plus le makedev
     parait utile. Donc je dois lancer replicator en runlevel 3  la place
     du getty
    
     OK a marche
    