{ description = "The Flake"; inputs = { nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11"; home-manager = { url = "github:nix-community/home-manager/release-24.11"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-bitcoin = { url = "github:fort-nix/nix-bitcoin/release"; }; nix-comfyui.url = "github:dyscorv/nix-comfyui"; deploy-rs.url = "github:serokell/deploy-rs"; simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-24.11"; nocodb.url = "github:nocodb/nocodb"; nixified-ai = { inputs.nixpkgs.follows = "nixpkgs-unstable"; url = "github:nixified-ai/flake"; }; website = { # url = "git+https://git.tfcconnection.org/TFC/tfcconnection"; url = "path:/tfcconnection"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; }; outputs = { nixpkgs, nixpkgs-unstable, home-manager, nix-bitcoin, nix-comfyui, deploy-rs, simple-nixos-mailserver, nocodb, nixified-ai, website, self, ... }: let system = "x86_64-linux"; username = "chris"; pkgsForSystem = import nixpkgs { inherit system; config = { allowUnfree = true; }; # overlays = [ (final: prev: { website = website.packages.${system}.default; }) ]; }; lib = nixpkgs.lib; unstable = import nixpkgs-unstable { inherit system; config = { allowUnfree = true; }; # overlays = [ # (import ./python312overlay.nix) # nix-comfyui.overlays.default # ]; }; in { nixosConfigurations = { shen = lib.nixosSystem { inherit system; pkgs = pkgsForSystem; specialArgs = { inherit unstable; }; modules = [ ./system/shen/configuration.nix simple-nixos-mailserver.nixosModule home-manager.nixosModules.home-manager nocodb.nixosModules.nocodb nixified-ai.nixosModules.comfyui { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.chris = import ./chris/home.nix; } ]; }; hoid = lib.nixosSystem { inherit system; pkgs = pkgsForSystem; specialArgs = { inherit unstable; }; modules = [ ./system/hoid/configuration.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.chris = import ./chris/home.nix; } ]; }; }; deploy.nodes.tfc = { profiles = { shen = { path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.shen; }; }; }; }; }