Lints and suggestions for the Nix programming language
1{
2 nixConfig = {
3 abort-on-warn = true;
4 allow-import-from-derivation = false;
5 };
6
7 inputs = {
8 flake-parts = {
9 url = "github:hercules-ci/flake-parts";
10 inputs.nixpkgs-lib.follows = "nixpkgs";
11 };
12
13 nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
14
15 systems = {
16 url = "github:nix-systems/default";
17 flake = false;
18 };
19 };
20 outputs =
21 inputs:
22 inputs.flake-parts.lib.mkFlake { inherit inputs; } (
23 { lib, ... }:
24 {
25 _module.args.root = ./.;
26 systems = import inputs.systems;
27
28 imports = [
29 inputs.flake-parts.flakeModules.partitions
30 ./docs/flake-part.nix
31 ./flake-parts/cachix.nix
32 ./flake-parts/ci.nix
33 ./flake-parts/dependabot.nix
34 ./flake-parts/dev-shell.nix
35 ./flake-parts/dogfood.nix
36 ./flake-parts/files.nix
37 ./flake-parts/fmt.nix
38 ./flake-parts/git-hooks.nix
39 ./flake-parts/git-ignore.nix
40 ./flake-parts/license.nix
41 ./flake-parts/overlay.nix
42 ./flake-parts/rust.nix
43 ./flake-parts/statix.nix
44 ./vim-plugin/flake-part.nix
45 ];
46
47 partitionedAttrs = lib.genAttrs [
48 "checks"
49 "apps"
50 ] (_: "dev");
51
52 partitions.dev.extraInputsFlake = ./dev-flake;
53 }
54 );
55}