{ description = "Your new nix config"; inputs = { # Nixpkgs nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05"; # Secrets sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; # disko disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; # theme catppuccin.url = "github:catppuccin/nix"; # Home manager home-manager.url = "github:nix-community/home-manager/release-25.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; # neovim nixvim.url = "git+https://codeberg.org/landervdb/nixvim.git"; # mailserver nixos-mailserver = { url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-25.05"; inputs = { nixpkgs.follows = "nixpkgs"; }; }; # headplane headplane = { url = "github:igor-ramazanov/headplane"; inputs.nixpkgs.follows = "nixpkgs"; }; # emacs overlay emacs-overlay = { url = "github:nix-community/emacs-overlay"; }; # tidalcycles tidalcycles = { url = "github:mitchmindtree/tidalcycles.nix"; }; }; outputs = { self, nixpkgs, emacs-overlay, tidalcycles, ... }@inputs: let inherit (self) outputs; in { nixosConfigurations = { # Workstations wodan = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs outputs; }; modules = [ { nixpkgs.overlays = [ emacs-overlay.overlays.default tidalcycles.overlays.default (_: prev: { tailscale = prev.tailscale.overrideAttrs (old: { checkFlags = builtins.map ( flag: if prev.lib.hasPrefix "-skip=" flag then flag + "|^TestGetList$|^TestIgnoreLocallyBoundPorts$|^TestPoller$" else flag ) old.checkFlags; }); }) ]; } ./hosts/wodan ]; }; widar = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs outputs; }; modules = [ ./hosts/widar ]; }; # servers db-01 = nixpkgs.lib.nixosSystem { system = "aarch64-linux"; specialArgs = { inherit inputs outputs; }; modules = [ ./hosts/db-01 ]; }; hosting-01 = nixpkgs.lib.nixosSystem { system = "aarch64-linux"; specialArgs = { inherit inputs outputs; }; modules = [ ./hosts/hosting-01 ]; }; hosting-02 = nixpkgs.lib.nixosSystem { system = "aarch64-linux"; specialArgs = { inherit inputs outputs; }; modules = [ ./hosts/hosting-02 ]; }; mail-01 = nixpkgs.lib.nixosSystem { system = "aarch64-linux"; specialArgs = { inherit inputs outputs; }; modules = [ ./hosts/mail-01 ]; }; }; }; }