{ inputs = { attic = { url = "github:zhaofengli/attic"; }; nixpkgs = { url = "github:nixos/nixpkgs/nixos-unstable"; }; deploy-rs = { url = "github:serokell/deploy-rs"; inputs.nixpkgs.follows = "nixpkgs"; }; utils = { url = "github:numtide/flake-utils"; }; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, attic, nixpkgs, deploy-rs, utils, sops-nix, ... }@inputs: { nixosConfigurations = { "phoenix.lewd.wtf" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs self; }; modules = [ sops-nix.nixosModules.sops ./default.nix ./hosts/phoenix.lewd.wtf/configuration.nix attic.nixosModules.atticd ]; }; "aztul.elmosco.lewd.wtf" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs self; }; modules = [ sops-nix.nixosModules.sops ./default.nix ./hosts/seedbox/aztul/configuration.nix ]; }; "rene.elmosco.lewd.wtf" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs self; }; modules = [ sops-nix.nixosModules.sops ./default.nix ./hosts/seedbox/rene/configuration.nix ]; }; "reject.elmosco.lewd.wtf" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs self; }; modules = [ sops-nix.nixosModules.sops ./default.nix ./hosts/seedbox/reject/configuration.nix ]; }; "kinda.sus.lol" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs self; }; modules = [ sops-nix.nixosModules.sops ./default.nix ./hosts/kinda.sus.lol/configuration.nix ]; }; }; deploy.nodes = { "phoenix.lewd.wtf" = { sshOpts = [ "-p" "222" "-o" "StrictHostKeyChecking=no" ]; hostname = "192.168.0.42"; fastConnection = true; profiles.system = { sshUser = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations."phoenix.lewd.wtf"; user = "root"; }; }; "aztul.elmosco.lewd.wtf" = { sshOpts = [ "-p" "22111" "-o" "StrictHostKeyChecking=no" ]; hostname = "aztul.elmosco.lewd.wtf"; fastConnection = true; profiles.system = { sshUser = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations."aztul.elmosco.lewd.wtf"; user = "root"; }; }; "rene.elmosco.lewd.wtf" = { sshOpts = [ "-p" "22113" "-o" "StrictHostKeyChecking=no" ]; hostname = "rene.elmosco.lewd.wtf"; fastConnection = true; profiles.system = { sshUser = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations."rene.elmosco.lewd.wtf"; user = "root"; }; }; "reject.elmosco.lewd.wtf" = { sshOpts = [ "-p" "22104" "-o" "StrictHostKeyChecking=no" ]; hostname = "reject.elmosco.lewd.wtf"; fastConnection = true; profiles.system = { sshUser = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations."reject.elmosco.lewd.wtf"; user = "root"; }; }; "kinda.sus.lol" = { sshOpts = [ "-p" "22201" "-o" "StrictHostKeyChecking=no" ]; hostname = "kinda.sus.lol"; fastConnection = true; profiles.system = { sshUser = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations."kinda.sus.lol"; user = "root"; }; }; }; checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; } // utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; in { devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ deploy-rs.defaultPackage.${system} apacheHttpd nixpkgs-fmt ]; }; } ); }