Pure Nix flake utility functions
Go to file
2020-04-22 17:17:40 +02:00
example fix infinite recursion 2020-04-22 17:17:40 +02:00
default.nix fix infinite recursion 2020-04-22 17:17:40 +02:00
flake.nix adds forAllSupported 2020-04-11 16:48:15 +02:00
LICENSE Initial commit 2020-04-11 13:21:35 +00:00
README.md WIP 2020-04-22 17:12:09 +02:00

flake-utils

STATUS: WIP

Pure Nix flake utility functions.

The goal of this project is to build a collection of pure Nix functions that don't depend on nixpkgs, and that are useful in the context of writing other Nix flakes.

Usage

flake.nix

{
  edition = 201909;
  description = "My flake";
  inputs = {
    utils = { type = "github"; owner = "numtide"; repo = "flake-utils"; };
  };
  outputs = { self, nixpkgs, utils }:
    utils.eachDefaultSystem (system:
      let pkgs = nixpkgs.legacyPackages.${system}; in
      rec {
        packages = {
          my-app = pkgs.callPackage ./my-app.nix {};
        };

        defaultPackage = package.my-app;

        apps = {
          my-app = flake.mkApp packages.my-app;
        };

        defaultApp = apps.my-app;
      };
    );
}