diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-09-17 02:30:10 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-09-17 02:30:10 +0900 |
| commit | 4078289cdadb4def6ae28428ce8bf3c7907f66f1 (patch) | |
| tree | fd7c9dd9192cc4bb9aeb94c1efb7411687535231 /cmd/app/doc.go | |
| parent | 3fbdf138bb7ce07319d2c9e3d89b3a3892e139d2 (diff) | |
cmd/app: alternative merged template layout
This implements an optional, alternative template layout to accommodate
ZFS and equivalent setups where each template occupies a different
filesystem. In such a setup, the default, separate workdir is unusable
as overlayfs requires the workdir to reside on the same filesystem as
the writable upperdir. The "merge" build tag enables this alternative
behaviour.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'cmd/app/doc.go')
| -rw-r--r-- | cmd/app/doc.go | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/cmd/app/doc.go b/cmd/app/doc.go index c25eca6d..ea91315e 100644 --- a/cmd/app/doc.go +++ b/cmd/app/doc.go @@ -94,6 +94,14 @@ template, named after the template directory itself, owned by the reserved user/group. The directory itself and its contents should have the permission bits set to 0700. +# Snapshots and cloning + +To reduce disk space used by templates, [ZFS clones] or an equivalent can be +used. In such a setup, where each template occupies a different filesystem, the +"merge" build tag is required, and the work directory can be omitted during +directory creation. Instead, the individual template directories contain both +upper and work directories. + # Configuring the base template This section describes basic setup required for the typical desktop use case. @@ -101,8 +109,7 @@ Generally, multiple templates are created to mitigate the global nature of conventional package managers. The setup described in this section applies to all templates. For convenience, a "base" template should be created, containing this setup, and all future templates should be copied from the base template. -To reduce disk space used, [ZFS snapshots] or an equivalent can be used. This -section assumes the template is named "base". +This section assumes the template is named "base". Create an empty directory at $ROSA_APP_PATH/template/base, owned by the reserved user, with permission bits set to 0755. Create its corresponding work directory @@ -350,6 +357,6 @@ The following section documents currently available freestanding directives. [Void Linux rootfs tarball]: https://voidlinux.org/download [Alpine Linux]: https://alpinelinux.org [Chimera Linux]: https://chimera-linux.org -[ZFS snapshots]: https://openzfs.github.io/openzfs-docs/man/v2.4/8/zfs-snapshot.8.html +[ZFS clones]: https://openzfs.github.io/openzfs-docs/man/v2.4/8/zfs-clone.8.html */ package main |
