{ description = "Home-manager configuration"; inputs = { nixpkgs = { url = "github:NixOS/nixpkgs/nixpkgs-unstable"; }; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; myEmacs = { url = "github:MasseR/nix-conf-emacs"; inputs.nixpkgs.follows = "nixpkgs"; }; myVim = { url = "github:MasseR/nix-conf-nvim"; inputs.nixpkgs.follows = "nixpkgs"; }; myZsh = { url = "git+https://git.rauhala.info/MasseR/nix-conf-zsh"; inputs.nixpkgs.follows = "nixpkgs"; }; myUrxvt = { url = "git+https://git.rauhala.info/MasseR/nix-conf-urxvt"; inputs.nixpkgs.follows = "nixpkgs"; }; xmonad-module = { url = "git+https://git.rauhala.info/MasseR/nix-conf-xmonad"; inputs.nixpkgs.follows = "nixpkgs"; }; xmonad-masser = { url = "github:MasseR/xmonad-masser"; inputs.nixpkgs.follows = "nixpkgs"; }; kobodl = { url = "github:MasseR/nix-kobodl"; }; }; outputs = { self, nixpkgs, home-manager, ... } @ inputs: { nixosModules = let dirs = builtins.attrNames (builtins.readDir ./modules); selfModules = map (module: import (./modules + "/${module}")) dirs; in selfModules ++ [ inputs.myZsh.nixosModule inputs.myUrxvt.nixosModule inputs.xmonad-module.nixosModule ]; overlays = [ inputs.myEmacs.overlay inputs.myVim.overlay inputs.xmonad-masser.overlay ]; homeConfigurations = let system = "x86_64-linux"; in { "masse@omena" = home-manager.lib.homeManagerConfiguration { system = system; homeDirectory = "/home/masse"; username = "masse"; stateVersion = "21.05"; pkgs = import nixpkgs { system = system; overlays = self.overlays ++ [ (final: prev: { kobodl = inputs.kobodl.packages.${system}.kobodl; }) ]; }; configuration = {pkgs,...}: { programs.home-manager.enable = true; imports = self.nixosModules ++ [ ./omena/masse.nix ]; }; }; "masse@freya" = home-manager.lib.homeManagerConfiguration { system = system; homeDirectory = "/home/masse"; username = "masse"; stateVersion = "21.05"; pkgs = import nixpkgs { system = system; overlays = self.overlays ++ [ (final: prev: { kobodl = inputs.kobodl.packages.${system}.kobodl; }) ]; }; configuration = {pkgs,...}: { programs.home-manager.enable = true; imports = self.nixosModules ++ [ ./freya/masse.nix ]; }; }; "enishen@freya" = home-manager.lib.homeManagerConfiguration { system = system; homeDirectory = "/home/enishen"; username = "enishen"; stateVersion = "21.05"; pkgs = import nixpkgs { system = system; overlays = self.overlays ++ [ (final: prev: { kobodl = inputs.kobodl.packages.${system}.kobodl; }) ]; }; configuration = {pkgs,...}: { programs.home-manager.enable = true; imports = self.nixosModules ++ [ ./freya/enishen.nix ]; }; }; }; }; }