{ 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"; }; 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 ++ []; overlays = [ inputs.myEmacs.overlay inputs.myVim.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 ++ [ ./macbook/masse.nix ]; }; }; }; }; }