{ description = "My NixOS and home-manager configs"; inputs = { # Nixpkgs nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; # Home manager home-manager.url = "github:nix-community/home-manager/master"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; # Zen browser zen-browser.url = "github:0xc000022070/zen-browser-flake"; # AGS ags.url = "github:Aylur/ags"; ags.inputs.nixpkgs.follows = "nixpkgs"; # Neovim plugins not in nixpkgs plugin-rainbow-delimiters-nvim.url = "gitlab:HiPhish/rainbow-delimiters.nvim"; plugin-rainbow-delimiters-nvim.flake = false; plugin-undotree-nvim.url = "github:jiaoshijie/undotree"; plugin-undotree-nvim.flake = false; plugin-harpoon1.url = "github:ThePrimeagen/harpoon"; plugin-harpoon1.flake = false; }; outputs = { self, nixpkgs, ... }@inputs: let inherit (self) outputs; lib = nixpkgs.lib; rootRel = path: ./. + ("/" + path); moduleRel = map (path: rootRel ("modules/" + path)); assetRel = path: rootRel ("assets/" + path); createSystemConfig = hostname: lib.nixosSystem { specialArgs = { inherit inputs outputs rootRel moduleRel assetRel hostname ; }; modules = [ ./hosts/_base ./hosts/${hostname} ]; }; in { overlays = import ./overlays { inherit inputs; }; nixosConfigurations = lib.genAttrs [ "kalle-pc" "kalle-laptop" ] createSystemConfig; }; }