{ description = "Nydragon's system configuration"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; flake-parts = { url = "github:hercules-ci/flake-parts"; inputs.nixpkgs-lib.follows = "nixpkgs"; }; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; agenix = { url = "github:ryantm/agenix"; inputs.home-manager.follows = "home-manager"; }; nysh = { url = "git+https://git.ccnlc.eu/nydragon/nysh.git"; inputs.nixpkgs.follows = "nixpkgs"; }; nur = { url = "git+https://git.ccnlc.eu/nydragon/nur.git"; inputs.nixpkgs.follows = "nixpkgs"; }; hjem = { url = "github:feel-co/hjem"; inputs.nixpkgs.follows = "nixpkgs"; }; hjem-rum = { url = "github:nydragon/hjem-rum"; inputs.nixpkgs.follows = "nixpkgs"; inputs.hjem.follows = "hjem"; }; wallpapers.url = "git+https://git.ccnlc.eu/nydragon/wallpapers.git"; calibre-plugins.url = "git+https://git.ccnlc.eu/nydragon/calibre-plugins.git"; }; outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { imports = [ ./hosts ./parts ]; systems = [ "x86_64-linux" "aarch64-linux" ]; perSystem = { pkgs, inputs', ... }: { formatter = pkgs.nixfmt-rfc-style; devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ pre-commit nodePackages.prettier typos deadnix statix inputs'.agenix.packages.default ]; shellHook = '' ${pkgs.pre-commit}/bin/pre-commit install -f ''; }; }; }; }