{
  inputs,
  ...
}:
{
  nixpkgs.hostPlatform = "x86_64-linux";
  imports = [
    ./../base/configuration.nix
    inputs.sops-nix.nixosModules.sops
    inputs.impermanence.nixosModules.impermanence
  ];

  networking.hostName = "nixos-template";
  networking.dhcpcd.enable = false;
  networking.useNetworkd = true;

  services.cloud-init = {
    enable = true;
    network.enable = true;
    btrfs.enable = true;
    config = ''
      system_info:
        distro: nixos
        network:
          renderers: [ 'networkd' ]
      cloud_init_modules:
        - migrator
        - seed_random
        - growpart
      cloud_config_modules:
        - runcmd
      cloud_final_modules: []
      datasource_list:
        - NoCloud
      growpart:
        devices: ['/dev/sda2']
      # Resize the filesystem along with the partition
      runcmd:
        - btrfs filesystem resize max /nix
    '';
  };
  system.stateVersion = "24.05";
}