minor fixes and documentation
[automated-distro-installer] / README
diff --git a/README b/README
index c3a88f8f183fdf56bdcc3e7801ce314c44294aaf..d579feb4c001a6deefaddc9b40b5f8f80edada92 100644 (file)
--- a/README
+++ b/README
@@ -1,13 +1,19 @@
 Multi-boot/distro btrfs provisioning
 
-Some things are specific to my home network. Uses pxe or pxe-kexec (for
-systems like libreboot with no pxe rom, we boot into a live cd or distro
-for bootsraping). Works for bare-metal or vms.
-
-Features people may find useful: installs encrypted trisquel belanos,
-arch, debian stable, & debian testing all on the same btrfs filesystem.
-Smartly utilizes multiple disks, with scripts to automatically decrypt
-on reboots. The partititioning and filesystem script is at
+Some things are specific to my home network, and uses files with secrets
+that are not in this repo. Uses pxe or pxe-kexec (on libreboot, I have
+not added a pxe rom, I use a minimal debian stable subvolume which acts
+like a pxe rom). I use this for bare metal and vms, and two scripts
+which can run post boot so I use them on vps distributed image as well.
+
+Features people may find useful: installs encrypted trisquel belanos, ,
+debian jessie, debian stretch, ubuntu 16.04, and arch (havne't done
+recently, probably a bit broken), in a multi-boot setup using multiple
+subvolumes of a single btrfs filesystem.  Utilizes multiple disks, with
+scripts to automatically decrypt on intentional reboots, but not after
+shutdown or power loss.
+
+The partititioning and filesystem script is at
 fai/config/hooks/partition.DEFAULT. Other debian based distros at least
 as new as ubuntu 14.04 should work fine, and I'm planning to add Fedora
 support. Disks are grouped as ssd or hdd and raided in raid 1 or raid 0
@@ -15,14 +21,17 @@ per configuration. The base partitions are divided into boot, swap, and
 root, (only boot is unencrypted). There are scripts to resize those
 partitions post-provision and while the system is running.
 
-The repo name fai is copied from the debian project of the same name,
-meaning "fully automated installer."
+People who use fai may find these things as useful examples: it uses
+dnsmasq (on a openwrt machine) for dhcp instead of the isc
+dhcp. fai-wrapper is a small script to use basic fai classes outside of
+fai. It does not use the fai partitioning tool, but the script is
+inspired from it and works outside of fai.
 
-It also fully automates configuration of an openwrt router after manual
+It also automates configuration of an openwrt router after manual
 initial installation.
 
-After provisionining is done, I sync files using unison, then automate
-further setup using a different set of scripts,
+After provisionining is done, I sync files using btrfs, or unison for
+vps, then automate further setup using a different set of scripts,
 https://iankelling.org/git/?p=distro-setup;a=tree.
 
 My network is a wndr3700v2 router with openwrt on it and a few pcs/laptops.
@@ -35,24 +44,38 @@ Some of the scripts have dependencies for some simple obvious utility
 scripts from https://iankelling.org/git, and of course there are some
 hostnames that are specific to my network.
 
-Main scripts meant to be called interactively:
+All scripts meant to be used directly are listed here:
+
+
+# Scripts to setup the environment for the install
+
+fai-redep # Deploy fai configuration to host "faiserver"
+faiserver-revm # using pxe & preseed, create a vm which is a fai server
+faiserver-uninstall # uninstall fai-server
+faiserver-setup # install fai-server on the current machine
+myfai-chboot # setup fai server for kexec, for use instead of "pxe-server"
+pxe-server # disable/enable fai or arch pxe boot server
+wrt-setup-remote  # setup my router in general: dhcp, dns, etc.
+
+
+# Scripts to do a distro install
 
 arch-init-remote # install arch (after it's been booted into it's setup env)
+dsfull # install & post-install a new fai distro
+fai-kexec # kexec to fai tftp server that pxe would normally point to
+arch-revm # test arch install on a fresh vm
+fai-revm  # test fai install on a fresh vm
+live-kexec # fai kexec from upstream live cds, e.g. curl live-kexec|bash
+
+
+# Scripts to call after a distro install for various reasons
+
 chboot # Set grub to boot into a different distro (installed earlier)
-install-chboot # reinstall chboot to /boot subvols, for when it changes
-dsfull # install & setup a new fai distro (if data partition already synced)
+install-chboot # reinstall chboot to /boot subvols, for chboot updates.
 eboot # reboot without automatic disk decryption
-fai-kexec # kexec to fai tftp server that pxe would normally point to
-fai-revm  # test fai on a fresh vm
-faiserver-revm # create a vm which is a fai server using pxe & preseed file
-faiserver-uninstall # uninstall fai-server
-faiserver-setup # install fai-server on the current machine
+fai-wrapper # Evaluate and use fai classes outside of fai.
 fresize # resize swap or boot partitions in a host
-myfai-chboot # Sets up tftp pxe config on fai server
-pxe-server # temporarily enable (usually) fai or arch boot server
-wrt-setup-remote  # setup my router
-ubuntu-xenial-live-fai-kexec # do fai install from xenial live cd using kexec
-myfai-chboot # use instead of pxe-server for fai kexec based install
+
 
 License stuff:
 The license for the project is GPLv2 or later, mostly because fai is