just docs
[automated-distro-installer] / README
diff --git a/README b/README
index c5cf1beb7c86d5ef0db16ed210cb48bb6b896b11..def4fb536001f36899977f1db8c79eb997c8191a 100644 (file)
--- a/README
+++ b/README
@@ -1,18 +1,61 @@
-Scripts for initial setup of OSes on my home network.
+Multi-boot/distro btrfs provisioning
 
-My network is a wndr3700v2 router with openwrt on it and a few pcs
-with various gnu/linux distros on them.
+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
+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
+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.
 
-Scripts meant to be called interactively:
+The repo name fai is copied from the debian project of the same name,
+meaning "fully automated installer."
 
+It also fully 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,
+https://iankelling.org/git/?p=distro-setup;a=tree.
+
+My network is a wndr3700v2 router with openwrt on it and a few pcs/laptops.
+
+Since fai requires a debian server as the fai server, there are also
+scripts to automate a debian install using pxe and preseeding, which can
+be done from any distro.
+
+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:
 
 arch-init-remote # install arch (after it's been booted into it's setup env)
 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)
+eboot # reboot and keep disks encrypted
+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
-faiserver-uninstall
+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
 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
+and I periodically rebase off their example setup for debian. Also,
+there is a modified encrypt.upstream, which is from the cryptsetup
+package in arch, which is under the same license.