pkgs.haskell.lib.readDirectory utility
This adds a `readDirectory` utility that can be used to "slurp" a directory
full of `cabal2nix`-generated files and transform them into a Haskell package
override set. The main use of this is so that users don't have to write:
```
{ overrides = self: super: {
foo = self.callPackage ./path/to/foo.nix { };
bar = self.callPackage ./path/to/bar.nix { };
...
};
}
```
Instead, they can write:
```
{ overrides = pkgs.haskell.lib.readDirectory ./path/to;
}
```
This is a an alternative to `packageSourceOverrides` which primarily addresses
the following use cases:
* The desired package is not yet available in `all-cabal-hashes` (perhaps the
user is pinned to an older revision of `nixpkgs`)
* The default `cabal2nix` invocation used by `packageSourceOverrides`
does not use the desired `cabal2nix` flags
* The user wants to avoid the use of import-from-derivation
Nixpkgs is a collection of packages for the Nix package manager. It is periodically built and tested by the Hydra build daemon as so-called channels. To get channel information via git, add nixpkgs-channels as a remote:
% git remote add channels git://github.com/NixOS/nixpkgs-channels.git
For stability and maximum binary package support, it is recommended to maintain
custom changes on top of one of the channels, e.g. nixos-18.03 for the latest
release and nixos-unstable for the latest successful build of master:
% git remote update channels
% git rebase channels/nixos-18.03
For pull-requests, please rebase onto nixpkgs master.
NixOS Linux distribution source code is located inside
nixos/ folder.
- NixOS installation instructions
- Documentation (Nix Expression Language chapter)
- Manual (How to write packages for Nix)
- Manual (NixOS)
- Community maintained wiki
- Continuous package builds for unstable/master
- Continuous package builds for 18.03 release
- Tests for unstable/master
- Tests for 18.03 release
Communication:
Description
Languages
Nix
96.3%
Shell
1.8%
Python
0.7%
Perl
0.4%
C
0.3%
Other
0.1%
