2017-03-30 14:03:40 -06:00
|
|
|
/* Library of low-level helper functions for nix expressions.
|
|
|
|
*
|
|
|
|
* Please implement (mostly) exhaustive unit tests
|
|
|
|
* for new functions in `./tests.nix'.
|
|
|
|
*/
|
2016-09-14 17:21:42 -06:00
|
|
|
let
|
2006-09-25 04:07:59 -06:00
|
|
|
|
2016-09-14 17:21:42 -06:00
|
|
|
# trivial, often used functions
|
2009-02-09 09:51:03 -07:00
|
|
|
trivial = import ./trivial.nix;
|
2016-09-14 17:21:42 -06:00
|
|
|
|
|
|
|
# datatypes
|
|
|
|
attrsets = import ./attrsets.nix;
|
2009-02-09 09:51:03 -07:00
|
|
|
lists = import ./lists.nix;
|
|
|
|
strings = import ./strings.nix;
|
2009-05-25 12:22:19 -06:00
|
|
|
stringsWithDeps = import ./strings-with-deps.nix;
|
2016-09-14 17:21:42 -06:00
|
|
|
|
|
|
|
# packaging
|
|
|
|
customisation = import ./customisation.nix;
|
|
|
|
maintainers = import ./maintainers.nix;
|
|
|
|
meta = import ./meta.nix;
|
2009-02-09 09:51:03 -07:00
|
|
|
sources = import ./sources.nix;
|
2016-09-14 17:21:42 -06:00
|
|
|
|
|
|
|
# module system
|
2009-07-13 10:18:52 -06:00
|
|
|
modules = import ./modules.nix;
|
2009-02-09 09:51:03 -07:00
|
|
|
options = import ./options.nix;
|
2009-06-26 07:53:31 -06:00
|
|
|
types = import ./types.nix;
|
2016-09-14 17:21:42 -06:00
|
|
|
|
|
|
|
# constants
|
|
|
|
licenses = import ./licenses.nix;
|
2017-02-08 19:27:22 -07:00
|
|
|
systems = import ./systems;
|
2016-09-14 17:21:42 -06:00
|
|
|
|
|
|
|
# misc
|
|
|
|
debug = import ./debug.nix;
|
2016-11-05 18:51:13 -06:00
|
|
|
generators = import ./generators.nix;
|
2016-09-14 17:21:42 -06:00
|
|
|
misc = import ./deprecated.nix;
|
|
|
|
|
|
|
|
# domain-specific
|
2015-11-19 12:33:21 -07:00
|
|
|
sandbox = import ./sandbox.nix;
|
2016-09-17 13:50:01 -06:00
|
|
|
fetchers = import ./fetchers.nix;
|
2006-11-27 09:58:08 -07:00
|
|
|
|
2017-03-04 11:15:23 -07:00
|
|
|
# Eval-time filesystem handling
|
|
|
|
filesystem = import ./filesystem.nix;
|
|
|
|
|
2006-11-27 09:58:08 -07:00
|
|
|
in
|
2016-09-14 17:21:42 -06:00
|
|
|
{ inherit trivial
|
|
|
|
attrsets lists strings stringsWithDeps
|
|
|
|
customisation maintainers meta sources
|
|
|
|
modules options types
|
2017-02-08 19:27:22 -07:00
|
|
|
licenses systems
|
2016-11-05 18:51:13 -06:00
|
|
|
debug generators misc
|
2017-03-04 11:15:23 -07:00
|
|
|
sandbox fetchers filesystem;
|
2017-02-08 19:27:22 -07:00
|
|
|
|
|
|
|
# back-compat aliases
|
|
|
|
platforms = systems.doubles;
|
2009-07-01 09:38:55 -06:00
|
|
|
}
|
2009-02-09 09:51:03 -07:00
|
|
|
# !!! don't include everything at top-level; perhaps only the most
|
|
|
|
# commonly used functions.
|
2009-05-25 12:22:19 -06:00
|
|
|
// trivial // lists // strings // stringsWithDeps // attrsets // sources
|
2013-10-27 17:56:22 -06:00
|
|
|
// options // types // meta // debug // misc // modules
|
2009-11-19 09:43:58 -07:00
|
|
|
// customisation
|