hst/fs: interface filesystem config
All checks were successful
Test / Create distribution (push) Successful in 33s
Test / Sandbox (push) Successful in 2m14s
Test / Hakurei (push) Successful in 3m37s
Test / Hpkg (push) Successful in 4m27s
Test / Sandbox (race detector) (push) Successful in 4m23s
Test / Hakurei (race detector) (push) Successful in 5m22s
Test / Flake checks (push) Successful in 1m22s

This allows mount points to be represented by different underlying structs.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2025-08-12 04:38:45 +09:00
parent e99d7affb0
commit 99ac96511b
22 changed files with 927 additions and 223 deletions

View File

@@ -7,6 +7,7 @@ let
mountPoint =
let
inherit (types)
enum
str
submodule
nullOr
@@ -15,6 +16,14 @@ let
in
listOf (submodule {
options = {
type = mkOption {
type = enum [ "bind" ];
default = "bind";
description = ''
Type of the mount point;
'';
};
dst = mkOption {
type = nullOr str;
default = null;
@@ -32,7 +41,7 @@ let
write = mkEnableOption "mounting path as writable";
dev = mkEnableOption "use of device files";
require = mkEnableOption "start failure if the bind mount cannot be established for any reason";
optional = mkEnableOption "ignore nonexistent source path";
};
});
in