alqueva/flake.nix

73 lines
1.5 KiB
Nix
Raw Normal View History

2024-10-16 00:03:53 +01:00
{
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";
};
2024-10-16 01:47:33 +01:00
disko = {
type = "github";
owner = "nix-community";
repo = "disko";
};
2024-10-16 17:01:46 +01:00
wallpkgs = {
type = "github";
owner = "notashelf";
repo = "wallpkgs";
};
2024-10-16 00:03:53 +01:00
};
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
2024-10-16 17:01:46 +01:00
./overlays
2024-10-16 00:03:53 +01:00
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;
};
};
}