Skip to content

Flake-compat for modern Nix implementations and people who agree evaluating from store is dumber than DJT :)

License

Notifications You must be signed in to change notification settings

Lillecarl/flake-compatish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

flake-compat

Goals

Be able to consume modern flakes without hating your life. This means you should be able to build your things with flakes, or with flake-compatish and expect similar results (but not 100% equal).

Non-goals

Pure evaluation, cross compiling, being an exact clone of flakes.

Differences

flake-compatish avoids copying things to store before evaluating, this is true for src as well as path: type flake inputs. For path: we just fake as little as possible to make evaluation work, this is useful when hacking on a big dependency like nixpkgs. Don't commit your lockfile when doing this unless you're a master hacker.

Usage

default.nix

let
  fc = import (builtins.fetchTree {
    type = "git";
    url = "https://github.com/lillecarl/flake-compatish.git";
  });
in
fc ./.
# outputs.packages.x86_64-linux.hello = derivation
# impure.packages.hello = derivation

About

Flake-compat for modern Nix implementations and people who agree evaluating from store is dumber than DJT :)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 22

Languages