feat: fixed more missing datasets
This commit is contained in:
parent
1145703cfe
commit
2f7bbf3e1c
5 changed files with 65 additions and 4 deletions
51
configurations/nixos/emergent/legacy-storage.nix
Normal file
51
configurations/nixos/emergent/legacy-storage.nix
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
# Legacy storage configuration for emergent
|
||||
# This file manually defines ZFS datasets matching the existing on-disk layout
|
||||
# to allow incremental migration to the new storage module (generateBase = true).
|
||||
#
|
||||
# Current on-disk dataset layout:
|
||||
# rpool/local/ - parent (canmount=off)
|
||||
# rpool/local/system/nix - nix store
|
||||
# rpool/local/system/root - root filesystem
|
||||
#
|
||||
# Migration plan:
|
||||
# Phase 1: Rename datasets on disk (boot from live USB)
|
||||
# zfs rename -p rpool/local/system/nix rpool/persist/local/nix
|
||||
# zfs rename rpool/local rpool/persist/local
|
||||
# # This moves: local/system/root -> persist/local/root (need to rename after)
|
||||
# # Actually, since local/system/root needs to become persist/local/root:
|
||||
# zfs rename rpool/persist/local/system/root rpool/persist/local/root
|
||||
# zfs destroy rpool/persist/local/system # now empty
|
||||
# # Recreate blank snapshot:
|
||||
# zfs destroy rpool/persist/local/root@blank
|
||||
# zfs snapshot rpool/persist/local/root@blank
|
||||
#
|
||||
# Phase 2: Delete this file, remove its import from default.nix, rebuild.
|
||||
{...}: {
|
||||
# Disable automatic base dataset generation so we can define them manually
|
||||
storage.generateBase = false;
|
||||
|
||||
# Manually define ZFS datasets matching the existing on-disk layout
|
||||
storage.zfs.datasets = {
|
||||
"local" = {
|
||||
type = "zfs_fs";
|
||||
mount = null;
|
||||
};
|
||||
"local/system/nix" = {
|
||||
type = "zfs_fs";
|
||||
mount = "/nix";
|
||||
atime = "off";
|
||||
relatime = "off";
|
||||
snapshot = {
|
||||
autoSnapshot = false;
|
||||
};
|
||||
};
|
||||
"local/system/root" = {
|
||||
type = "zfs_fs";
|
||||
mount = "/";
|
||||
snapshot = {
|
||||
blankSnapshot = true;
|
||||
autoSnapshot = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue