Ctrl K
ComunidadGuías…

flake.nix

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
  description = "Dagu development shell";

  inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";

  outputs =
    { nixpkgs, ... }:
    let
      systems = [
        "x86_64-linux"
        "aarch64-linux"
        "aarch64-darwin"
      ];
      forEachSystem = f: nixpkgs.lib.genAttrs systems (system: f nixpkgs.legacyPackages.${system});
    in
    {
      # Only what the Makefile expects to find on the host. golangci-lint,
      # gotestsum, oapi-codegen and the protoc plugins are pinned in go.mod and
      # installed into .local/bin by their make targets; nixpkgs versions would
      # drift from what CI runs.
      devShells = forEachSystem (pkgs: {
        default = pkgs.mkShell {
          packages = [
            pkgs.go_1_27
            pkgs.nodejs_22
            pkgs.pnpm_10
            pkgs.gnumake
            # Used by make proto and make certs.
            pkgs.curl
            pkgs.unzip
            pkgs.openssl
            # Used by test steps.
            pkgs.git
            pkgs.perl
          ];
        };
      });

      formatter = forEachSystem (pkgs: pkgs.nixfmt-tree);
    };
}