diff options
author | William Carroll <wpcarro@gmail.com> | 2020-01-23T16·30+0000 |
---|---|---|
committer | William Carroll <wpcarro@gmail.com> | 2020-01-23T16·30+0000 |
commit | 393bd0a5c7967c9eafbf228413416d7691125e59 (patch) | |
tree | dc921f91e7fec1fbab5b0953edc105e0565ba7c3 /default.nix | |
parent | 01539a9988b2e7bdd86ff78ef75fee25b77f38c7 (diff) |
Nixify repo
Using @tazjin's depot/default.nix to bootstrap this project. I'll be borrowing his Nix idioms until I better understand Nix and have preferences of my own.
Diffstat (limited to 'default.nix')
-rw-r--r-- | default.nix | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/default.nix b/default.nix new file mode 100644 index 000000000000..d1fb88e04f93 --- /dev/null +++ b/default.nix @@ -0,0 +1,33 @@ +# At the time of this writing, this configuration was taken from @tazjin's +# default.nix from his depot. I've added, changed, and removed that parts that I +# don't need, and this is what remains. +{ ... }@args: + +with builtins; + +let + fix = f: let x = f x; in x; + + # Global configuration that all packages are called with. + config = pkgs: { + inherit pkgs; + }; + + readTree' = import /home/wpcarro/depot/nix/readTree {}; + + localPkgs = readTree: { + third_party = readTree ./third_party; + }; +in fix(self: { + config = config self; + + # Expose readTree for downstream repo consumers. + readTree = { + __functor = x: (readTree' x.config); + config = self.config; + }; +} + +# Add local packages as structured by readTree +// (localPkgs (readTree' (self.config // { inherit (self) lib; }))) +) |