23 lines
595 B
Nix
23 lines
595 B
Nix
{ config, lib, ... }:
|
|
let
|
|
inherit (lib.modules) mkMerge mkIf mkAfter;
|
|
in
|
|
{
|
|
flake.modules.nixos.default =
|
|
{ hostName, ... }:
|
|
{
|
|
config = mkMerge [
|
|
# Ephemeral by default - assumes btrfs
|
|
(mkIf (config.flake.manifest.hosts.nixos.${hostName}.machine.root.ephemeral or true) {
|
|
boot.initrd.postDeviceCommands = mkAfter ''
|
|
mkdir /btrfs_tmp
|
|
mount /dev/root_vg/root /btrfs_tmp
|
|
|
|
if [[ -e /btrfs_tmp/root ]]; then
|
|
btrfs subvolume delete "/btrfs_tmp/root"
|
|
fi
|
|
'';
|
|
})
|
|
];
|
|
};
|
|
}
|