From e9e51250458cae5f01736434bd85f145b00dec1c Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Sat, 12 Aug 2023 11:53:33 +0300 Subject: docs: add links to spec.md Sponsored-by: author --- README.md | 34 +++------------------------------- tutorial.md | 5 +++++ 2 files changed, 8 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index d8f4b7f..58537ad 100644 --- a/README.md +++ b/README.md @@ -59,37 +59,8 @@ hostname: exolobe5 drive: /dev/nvme0n1 ``` -A number of fields are allowed in the specification file: - -* `hostname`---the hostname of the installed system. This is so that - when the installed system boots, and gets a network address using - DHCP, it can provide a name. The author's home network setup - automatically adds that hostname to the internal DNS. This avoids a - manual DNS configuration step, and the author is lazy. - ([dnsmasq](https://dnsmasq.org/) is lovely.) -* `drive`---the main drive to install to. This is where the EFI and - `/boot` partitions are created, and where GRUB gets installed. The - rest of the drive will be a physical volume for LVM2. -* `extra_drives`---a list of any additional physical volumes for LVM2. - These will not be partitioned, and will be used entirely as physical - volumes. -* `luks`---the password for full disk encryption for all LVM2 physical - volumes. If not set, LUKS is not used. This is a single, fixed - password that is in cleartext. _You are expected to change it_ - after the system is installed and booted. If you'd rather use, say, - a hardware token's challenge/response feature or TPM for LUKS, - that's better done on a running system. -* `extra_playbooks`---additional Ansible playbooks to use on the - installed system. **v-i** comes with a "standard playbook" (in - [`std.yml`][]) that it uses unconditionally, to set up a "standard - system" that the author likes. You can provide additional playbooks, - for additional configuration at installation time. -* `ansible_vars`---variables to set for Ansible playbooks. - - the `user_pub` variable contains an SSH public key that gets - installed into the `root` user `authorized_keys` file on the - installed system by the standard playbook - - the `user_ca_pubkey` variable contains public key for an SSH CA - whose user certificates are to be trusted +See [spec.md][] for a full description of the target specification +file. With all this configuration in a file, which you can keep in git, you can install a base system repeatedly to a specific computer, and do it @@ -108,6 +79,7 @@ tedious.) [`build-installer.sh`]: build-installer.sh [`v-i`]: v-i [`std.yml`]: std.yml +[spec.md]: spec.md [tutorial]: tutorial.md [author]: https://liw.fi/ [Debian installer]: https://www.debian.org/devel/debian-installer/ diff --git a/tutorial.md b/tutorial.md index 33507c6..c8e48e0 100644 --- a/tutorial.md +++ b/tutorial.md @@ -90,6 +90,8 @@ The steps: drive: /dev/nvme0n1 luks: hunter2 ~~~ + + See [spec.md][] for a full description of the specification file. 10. Install. Add the `--verbose` option to `./v-i` if you want to know what's happening. The first time you run this on a given v-i USB @@ -112,3 +114,6 @@ The steps: Remember to change the LUKS password for each drive. 13. Optional: Let me know how it went. + +[spec.md]: spec.md + -- cgit v1.2.1