{ description = "testing nix flakes for server deployment"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/release-21.11"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; uplcg = { url = "git+https://stuebinm.eu/git/uplcg?ref=main"; flake = false; }; # woitb = { # url = "git+https://stuebinm.eu/git/woitb?ref=main"; # flake = false; # }; # workadventure = { # url = "git+https://stuebinm.eu/git/workadventure-nix"; # flake = false; # }; tracktrain = { url = "git+https://stuebinm.eu/git/tracktrain?ref=main"; flake = false; }; blog = { url = "path:/home/stuebinm/Dokumente/blog"; flake = false; }; }; outputs = { self, nixpkgs, ... }@inputs: { nixosConfigurations = let mkConfig = imports: config: nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ config ] ++ imports; specialArgs = { inherit inputs; }; }; mkServer = mkConfig [ ./common/headless.nix ]; mkDesktop = mkConfig [ ./common/desktop.nix ]; in { chaski = mkServer ./hosts/chaski/configuration.nix; flora = mkServer ./hosts/flora/configuration.nix; abbenay = mkDesktop ./hosts/abbenay/configuration.nix; }; }; }