Commit graph

293 commits

Author SHA1 Message Date
Eelco Dolstra 21358e7ad0 * Support require/imports in top-level anonymous configurations,
i.e. the elements of initModules that are not paths.
* Support a "key" attribute in anonymous configurations to allow
  lazyGenericClosure to distinguish between them.

svn path=/nixpkgs/trunk/; revision=19240
2010-01-05 17:04:55 +00:00
Nicolas Pierron 1e0b14522a * Retrieve the filename of a path.
svn path=/nixpkgs/trunk/; revision=19180
2010-01-03 11:07:05 +00:00
Nicolas Pierron d311b4e98f * Add a function to take the last element of a list.
svn path=/nixpkgs/trunk/; revision=19179
2010-01-03 11:05:42 +00:00
Marc Weber 0888bf7107 remove mapRecordFlatten & fix source autofs
svn path=/nixpkgs/trunk/; revision=18987
2009-12-16 05:52:36 +00:00
Marc Weber 7ef915ebc8 nixpkgs lib: adding haskell's take
svn path=/nixpkgs/trunk/; revision=18848
2009-12-08 21:47:14 +00:00
Rob Vermaas 0db7aaca02 add x86_64-darwin as platform
svn path=/nixpkgs/trunk/; revision=18646
2009-11-26 15:03:42 +00:00
Marc Weber 10e806bcef testAllTrue helper function
svn path=/nixpkgs/trunk/; revision=18540
2009-11-22 21:28:46 +00:00
Marc Weber 976def943b nix lib: add nixType returning type of value as string which is used in
eqStrict now to return false when a b have different types. Passing
string and {} to eqStrict caused coercion failures when running tests
previously

svn path=/nixpkgs/trunk/; revision=18539
2009-11-22 21:28:43 +00:00
Marc Weber 88e654b1ed follow runTests change prefixing all tests by "test"
svn path=/nixpkgs/trunk/; revision=18538
2009-11-22 21:28:41 +00:00
Marc Weber 02972b92d5 nix lang runTests: ignore tests which are not prefixed by "test"
svn path=/nixpkgs/trunk/; revision=18537
2009-11-22 21:28:38 +00:00
Marc Weber 715d09d836 add some debugging functions
traceCallXml is used to trace arguments and result

svn path=/nixpkgs/trunk/; revision=18536
2009-11-22 21:28:36 +00:00
Eelco Dolstra 11c3e92738 * Bring back Emacs 22 by request from Ludovic.
svn path=/nixpkgs/trunk/; revision=18529
2009-11-22 16:29:15 +00:00
Eelco Dolstra 81c5c44ddb * Move makeOverridable out of all-packages.nix.
svn path=/nixpkgs/trunk/; revision=18469
2009-11-19 17:30:21 +00:00
Eelco Dolstra 519e7870b6 * Move `modifyDerivation' from build-support/vm to lib and rename it
to `overrideDerivation'.

svn path=/nixpkgs/trunk/; revision=18466
2009-11-19 16:43:58 +00:00
Eelco Dolstra aa392c3aa7 * Move functions like `runCommand' out of all-packages.nix and into
build-support/.

svn path=/nixpkgs/trunk/; revision=18465
2009-11-19 16:07:47 +00:00
Eelco Dolstra aed79cca1a * Another unused function.
svn path=/nixpkgs/trunk/; revision=18391
2009-11-17 15:36:48 +00:00
Eelco Dolstra a56509c0db * Remove some more unused functions.
svn path=/nixpkgs/trunk/; revision=18390
2009-11-17 15:31:48 +00:00
Eelco Dolstra 802fa4ba0b * Remove sumArgs and its few remaining uses. Idem for composedArgs.
svn path=/nixpkgs/trunk/; revision=18388
2009-11-17 15:26:22 +00:00
Nicolas Pierron da1311b893 * Add the Go Programming Language compiler.
svn path=/nixpkgs/trunk/; revision=18348
2009-11-14 20:14:28 +00:00
Nicolas Pierron 7482474aef * Improve showVal: handle integer and strings.
svn path=/nixpkgs/trunk/; revision=18346
2009-11-14 20:14:15 +00:00
Nicolas Pierron d791b830aa * Fix typo and clarify why you should not use "mkFixStrictness" on top of
plain list or attribute set.

svn path=/nixpkgs/trunk/; revision=18260
2009-11-07 16:24:11 +00:00
Nicolas Pierron b901c0e808 * Add an awful hack to bypass the strictness of isType operators for
option definitions.

svn path=/nixpkgs/trunk/; revision=18259
2009-11-07 16:09:04 +00:00
Nicolas Pierron 8b47086b85 * Change the check function to accept sub-modules with arguments in
option definitions.

svn path=/nixpkgs/trunk/; revision=18252
2009-11-07 12:15:39 +00:00
Nicolas Pierron bb077b253f * Add a function to sort a list.
* Add a new property to order NixOS definitions without creating
  dependencies between snippets.
* Add mkHeader & mkFooter properties (special case of mkOrder).

svn path=/nixpkgs/trunk/; revision=18242
2009-11-07 01:59:55 +00:00
Nicolas Pierron 88f113d032 * Add a function to replace "pkgs.checker". The function checkModule does a
traversal of all definitions and also check definitions contained inside
  sub-modules.

svn path=/nixpkgs/trunk/; revision=18241
2009-11-07 01:59:50 +00:00
Nicolas Pierron 233d72e4fb * Add "_args" to all sub-module configurations result. This attribute
enable argument introspection outside of the scope of each sub-module.

svn path=/nixpkgs/trunk/; revision=18240
2009-11-07 01:59:45 +00:00
Nicolas Pierron 10d74af2f6 * Add a type to handle environment variables with the usual string
separator ":".

svn path=/nixpkgs/trunk/; revision=18239
2009-11-07 01:58:56 +00:00
Nicolas Pierron 09bed4bffc * Report file locations in the stack-trace when multiple option
declarations cannot be merged.

svn path=/nixpkgs/trunk/; revision=18149
2009-11-05 16:36:03 +00:00
Nicolas Pierron d8bbae877a * Add a type for read-only options. Options which are only declared
are used when a module produces read-only data for other modules.

svn path=/nixpkgs/trunk/; revision=18148
2009-11-05 15:39:45 +00:00
Nicolas Pierron 5684506470 * Add isDefined to each options. This will clean-up NixOS introspection.
svn path=/nixpkgs/trunk/; revision=18147
2009-11-05 15:39:39 +00:00
Eelco Dolstra 374bb28dd8 * The libx86 package refers to platforms.netbsd, so add it.
svn path=/nixpkgs/trunk/; revision=17987
2009-10-28 12:25:06 +00:00
Eelco Dolstra a565a82e4e svn path=/nixpkgs/trunk/; revision=17934 2009-10-23 07:34:56 +00:00
Michael Raskin a9a462f13d Try to add missing flip function for NixOS
svn path=/nixpkgs/trunk/; revision=17933
2009-10-23 07:00:15 +00:00
Nicolas Pierron b15cbb639e Refactor a bit to add names to intermediate computations. Add a cross
temporary result to fetch information from the evaluation to make them
available inside the option declaration.

Add: isNotDefined flag inside the option.

svn path=/nixpkgs/trunk/; revision=17766
2009-10-12 17:51:21 +00:00
Nicolas Pierron 81694a7f54 * modules.nix: use catAttrs function instead of hand made code.
svn path=/nixpkgs/trunk/; revision=17760
2009-10-12 15:50:59 +00:00
Nicolas Pierron 19648abc05 Revert previous commit because this is implicit. Fix property evaluation
error which arose when one module define a value with "mkDefaultValue"
and another module define its value with "mkIf <false>".

svn path=/nixpkgs/trunk/; revision=17759
2009-10-12 15:16:22 +00:00
Nicolas Pierron e82843144c do not delay mkOverride on options which are does not have sub modules.
svn path=/nixpkgs/trunk/; revision=17758
2009-10-12 15:07:31 +00:00
Nicolas Pierron 03eab95618 Only allow properties with a onGlobalEval function to go through specific
types.

svn path=/nixpkgs/trunk/; revision=17756
2009-10-12 13:37:00 +00:00
Nicolas Pierron 926f20a1ee Revert "* Revert the last two commits ..." (rev 17738) & Fix.
svn path=/nixpkgs/trunk/; revision=17740
2009-10-09 23:03:24 +00:00
Eelco Dolstra 037a777b7d * Enable builds on OpenBSD.
svn path=/nixpkgs/trunk/; revision=17739
2009-10-09 19:42:59 +00:00
Eelco Dolstra 24b50e92ee * Revert the last two commits since they break every job in the
buildfarm ("undefined variable `delayPropertiesTemplate'").

svn path=/nixpkgs/trunk/; revision=17738
2009-10-09 19:34:28 +00:00
Nicolas Pierron d11481e9bf Add mkOverrideTemplate (currently the same as mkOverride).
svn path=/nixpkgs/trunk/; revision=17737
2009-10-09 18:11:36 +00:00
Nicolas Pierron bb16a7f08d Replace a counter intuitive behaviour of module evaluations.
- types.nix:
Introduce a new flag named "delayProperties" which define either that
properties should be evaluated (when false) or that they should be delaied
through the type structure.

- properties.nix:
Generalized the delayProperties function to make it work with the iter
functions of option types.

- modules.nix:
Replace evalProperties by a condition based on the value of the
"delayProperties" flag of the option type.  If the flag does not exists or
if it is false, then the system behaves as always.  Otherwise it delays
the properties from the current value to each values contained inside it.

svn path=/nixpkgs/trunk/; revision=17736
2009-10-09 18:11:30 +00:00
Nicolas Pierron fd0396037a extract function unifyOptionModule from moduleMerge. This function is
used to convert option sets, provided inside option declarations, to a
module.

svn path=/nixpkgs/trunk/; revision=17735
2009-10-09 18:11:24 +00:00
Marc Weber 0e6c476d60 fix some typos in comments
svn path=/nixpkgs/trunk/; revision=17708
2009-10-08 00:54:26 +00:00
Nicolas Pierron e528b920bb Add the reverseList function.
svn path=/nixpkgs/trunk/; revision=17676
2009-10-06 13:36:46 +00:00
Nicolas Pierron 088e6995a2 Improve the efficiency of stringToCharacters.
svn path=/nixpkgs/trunk/; revision=17671
2009-10-06 09:21:58 +00:00
Nicolas Pierron 915fa6a08f introduce the stringAsChars ans replaceChars functions.
svn path=/nixpkgs/trunk/; revision=17670
2009-10-06 09:21:52 +00:00
Nicolas Pierron bbb4ce1dd7 Extract the path done inside the iteration process of the option type and
give it as argument to each sub-module.

With the type "types.attrsOf types.optionSet", you will obtain the name of
the attribute in which the sub-modules are contained.

svn path=/nixpkgs/trunk/; revision=17669
2009-10-06 09:21:46 +00:00
Nicolas Pierron 1f68748a8b Add removePrefix function.
svn path=/nixpkgs/trunk/; revision=17667
2009-10-06 09:21:39 +00:00