treefmt / nix fmt (pull_request) Failing after 5s
pytest / pytest (pull_request) Successful in 30s
test ebook search / test-ebook-search (pull_request) Successful in 36s
build_systems / build-bob (pull_request) Successful in 49s
build_systems / build-brain (pull_request) Successful in 49s
build_systems / build-rhapsody-in-green (pull_request) Successful in 1m1s
build_systems / build-jeeves (pull_request) Successful in 2m18s
- Introduced a new `datasets.nix` file to define ZFS datasets and their properties, allowing for centralized management of dataset configurations. - Updated `default.nix` to import and enable the `zfs_manager` service, integrating it into the system configuration. - Refactored `zfs.sh` to remove dataset creation commands, delegating dataset management to the `zfs_manager` service. - Removed the legacy `snapshot_config.toml` file, as snapshot configurations are now handled within `datasets.nix`. - Modified `vars.nix` to derive mountpoint paths from `datasets.nix`, ensuring consistency across the configuration. - Created a new `zfs.nix` file to define the `zfs_manager` service and its dependencies. - Added comprehensive tests for the `zfs_manager` functionality, covering dataset creation, property management, and error handling.
23 lines
965 B
Nix
23 lines
965 B
Nix
# Paths are derived from the dataset declarations in ./datasets.nix so that a
|
|
# mountpoint only ever has to change in one place.
|
|
let
|
|
inherit (import ./datasets.nix) mountpoints;
|
|
in
|
|
{
|
|
# Not a dataset of its own, it is the directory the postgres datasets share.
|
|
database = "/zfs/media/database";
|
|
docker = mountpoints."media/secure/docker";
|
|
docker_configs = "${mountpoints."media/secure/docker"}/configs";
|
|
home_assistant = mountpoints."media/secure/home_assistant";
|
|
notes = mountpoints."media/secure/notes";
|
|
secrets = mountpoints."storage/secure/secrets";
|
|
services = mountpoints."media/secure/services";
|
|
share = mountpoints."media/secure/share";
|
|
syncthing = mountpoints."storage/secure/syncthing";
|
|
transmission = mountpoints."storage/secure/transmission";
|
|
ollama = mountpoints."storage/ollama";
|
|
transmission_scratch = mountpoints."scratch/transmission";
|
|
uv_cache = mountpoints."scratch/uv_cache";
|
|
kafka = mountpoints."scratch/kafka";
|
|
}
|