{
  description = "permafrost";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";

    deploy-rs.url = "github:serokell/deploy-rs";

    nyazoom.url = "git+https://git.zynh.me/Zynh0722/nyazoom.git";
  };

  outputs = inputs@{ nixpkgs, self, deploy-rs, ... }: {
    nixosConfigurations = {
      virtmsi = nixpkgs.lib.nixosSystem {
        specialArgs = { inherit inputs self; };

        modules = [
          ./configuration.nix
          ./hardware-configuration.nix
        ];
      };
    };

    deploy.nodes.virtmsi = {
      sshUser = "ravenshade";
      user = "root";
      hostname = "virtmsi";
      sshOpts = [ "-A" ];
      profiles.system.path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.virtmsi;
      fastConnection = true;
      interactiveSudo = true;
    };

    checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib;
  };
}