{ description = "PapaTutuWawa's flake configuration"; inputs = { home-manager.url = "github:nix-community/home-manager/master"; flake-utils.url = "github:numtide/flake-utils"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; #stable.url = "github:nixos/nixpkgs/nixos-21.05"; emacs.url = "github:nix-community/emacs-overlay"; nur.url = "github:nix-community/nur"; ostylk.url = "git+https://dev.ostylk.de/NixDistro/Config"; }; outputs = { self , nixpkgs , home-manager , flake-utils , ... }@inputs: let inherit (import ./lib/flake.nix { inherit flake-utils; inherit (nixpkgs) lib; }) eachDefaultLinuxSystem; mkSystem = import ./lib/mkSystem.nix { inherit inputs; inherit (inputs) nur emacs; inherit (nixpkgs) lib config; }; in { # Defines outputs that is not dependent on a specific system, i.e. overlays overlay = import ./packages; nixosConfigurations = { miku = mkSystem { hostConfigFile = ./hosts/miku.nix; }; }; } // eachDefaultLinuxSystem (system: { packages = let pkgs = import nixpkgs { inherit system; overlays = [ self.overlay ]; }; in { # key-mapper only runs on linux inherit (pkgs) key-mapper; }; }); }