{ description = "Alqueva is the largest lake in Portugal."; inputs = { nixpkgs = { type = "github"; owner = "nixos"; repo = "nixpkgs"; ref = "nixos-unstable"; }; flake-parts = { type = "github"; owner = "hercules-ci"; repo = "flake-parts"; inputs.nixpkgs-lib.follows = "nixpkgs"; }; git-hooks-nix = { type = "github"; owner = "cachix"; repo = "git-hooks.nix"; }; disko = { type = "github"; owner = "nix-community"; repo = "disko"; }; wallpkgs = { type = "github"; owner = "notashelf"; repo = "wallpkgs"; }; astal = { type = "github"; owner = "aylur"; repo = "astal"; inputs.nixpkgs.follows = "nixpkgs"; }; quickshell = { type = "git"; url = "https://git.outfoxxed.me/quickshell/quickshell"; inputs.nixpkgs.follows = "nixpkgs"; }; pankomacs.url = "git+https://codeberg.org/amadaluzia/pankomacs.git"; }; outputs = inputs @ { nixpkgs, flake-parts, ... }: let lib = nixpkgs.lib.extend (import ./lib {inherit inputs;}); in flake-parts.lib.mkFlake { inherit inputs; specialArgs = {inherit lib;}; } { systems = ["x86_64-linux"]; imports = [ ./computers ./overlays inputs.git-hooks-nix.flakeModule ]; perSystem = { config, pkgs, ... }: { pre-commit = { check.enable = true; settings.hooks = { alejandra.enable = true; deadnix = { enable = true; args = ["-e"]; }; statix = { enable = true; args = ["fix"]; }; }; }; devShells.default = config.pre-commit.devShell; formatter = pkgs.alejandra; }; }; }