Moved to systemd for initrd, added integration for vmWithDisko
This commit is contained in:
1 parent
3c20190709
commit
affa333969
7 files changed
+26
-5
No files matched your search
@@ -24,18 +24,32 @@ in
|
||||
resetScript = mkOption {
|
||||
type = types.lines;
|
||||
description = ''
|
||||
Script to run on boot that resets the root partition.
|
||||
Script to run in order to reset the system to a clean state.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
# Filesystem setup
|
||||
fileSystems."/persist".neededForBoot = true;
|
||||
boot.initrd.postResumeCommands = mkAfter cfg.resetScript;
|
||||
# boot.initrd.postResumeCommands = mkAfter cfg.resetScript;
|
||||
# TODO: Reduce dependency on the root filesystem being ZFS?
|
||||
boot.initrd.systemd.services.impermanence-rollback = {
|
||||
description = "Rollback filesystem to clean state.";
|
||||
wantedBy = [ "initrd.target" ];
|
||||
after = [ "zfs-import.target" ];
|
||||
before = [ "sysroot.mount" ];
|
||||
unitConfig.DefaultDependencies = "no";
|
||||
serviceConfig.Type = "oneshot";
|
||||
script = cfg.resetScript;
|
||||
};
|
||||
|
||||
# For home-manager persistence
|
||||
programs.fuse.userAllowOther = true;
|
||||
|
||||
# For testing purposes with VM
|
||||
virtualisation.vmVariantWithDisko.virtualisation.fileSystems."/persist".neededForBoot = true;
|
||||
|
||||
environment.persistence."/persist/system" = {
|
||||
enable = true;
|
||||
hideMounts = true;
|
||||
|
||||
Reference in new issue
Block a user