aboutsummaryrefslogtreecommitdiff
path: root/src/property/installer.lisp
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-04-30 17:22:31 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-04-30 17:56:41 -0700
commitad1ad2a2e3200a2de050a5a7560c7c806122e880 (patch)
tree40bfdc4c360c2e76145a5405f7d7daf5c27438db /src/property/installer.lisp
parent09c0a2a57629e8e348fa2a620fc16a98d65220ed (diff)
downloadconsfigurator-ad1ad2a2e3200a2de050a5a7560c7c806122e880.tar.gz
implement updating the newly installed system's fstab
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/property/installer.lisp')
-rw-r--r--src/property/installer.lisp17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/property/installer.lisp b/src/property/installer.lisp
index 11d7062..95f0fb5 100644
--- a/src/property/installer.lisp
+++ b/src/property/installer.lisp
@@ -31,22 +31,27 @@
(strcat (unix-namestring chroot) "/")
(strcat (unix-namestring target) "/"))))
-(defpropspec chroot-installed-to-volumes :posix (host chroot volumes)
+(defpropspec chroot-installed-to-volumes :lisp (host chroot volumes)
"Where CHROOT contains the root filesystem of HOST and VOLUMES is a list of
volumes, recursively open the volumes and rsync in the contents of CHROOT.
Also update the fstab and crypttab, and try to install a bootloader."
(:desc #?"${chroot} installed to volumes")
- (let ((target (ensure-directory-pathname
- (strcat (unix-namestring chroot) ".target"))))
+ (let ((target
+ (ensure-directory-pathname
+ (strcat
+ (drop-trailing-slash
+ (unix-namestring (ensure-directory-pathname chroot)))
+ ".target"))))
`(with-these-open-volumes (,volumes :mount-below ,target)
+ (%update-target-from-chroot ,chroot ,target)
(chroot:deploys-these
- ,chroot ,host
+ ,target ,host
,(make-propspec
:systems nil
:propspec
'(eseqprops
- ;; TODO (fstab:entries-for-opened-volumes)
+ (fstab:entries-for-opened-volumes)
(file:lacks-lines "/etc/fstab" "# UNCONFIGURED FSTAB FOR BASE SYSTEM"))))
;; TODO Update /etc/crypttab
;; TODO Install bootloader
- (%update-target-from-chroot ,chroot ,target))))
+ )))