{ inputs = { # Packages and Nixos modules nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05"; nixpkgs-darwin.url = "github:nixos/nixpkgs/nixpkgs-26.05-darwin"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; # Macos modules darwin.url = "github:nix-darwin/nix-darwin/nix-darwin-26.05"; darwin.inputs.nixpkgs.follows= "nixpkgs-darwin"; # Home manage - Used only in a standalone mode hjem.url = "github:feel-co/hjem"; # Flake helper flake-parts.url = "github:hercules-ci/flake-parts"; # Hardware specific nixos-hardware.url = "github:NixOS/nixos-hardware/master"; displayconfig-mutter.url = "github:eaglesemanation/displayconfig-mutter"; }; outputs = inputs@{ flake-parts, nixpkgs, home-manager, ... }: let import-tree = import ./lib/import-tree.nix; lib = nixpkgs.lib.extend (_final: _prev: { inherit import-tree; }); in flake-parts.lib.mkFlake { inherit inputs; } { systems = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" ]; imports = [ ] ++ import-tree { path = ./.; include = [ "default\\.nix" ]; exclude = [ "lib/import-tree.nix" "flake.nix" "flake.lock" ]; }; _module.args = { inherit lib; }; }; }