Marc Weber
88e66ae7f4
rename mapRecordFlatten to mapAttrsFlatten
...
svn path=/nixpkgs/trunk/; revision=17315
2009-09-20 21:54:20 +00:00
Nicolas Pierron
dc8f469349
Fix the merge function of the "attrsOf" type: handle multiple of the same
...
attribute name.
svn path=/nixpkgs/trunk/; revision=17297
2009-09-20 10:29:06 +00:00
Lluís Batlle i Rossell
8515a7fa68
Adding me as a maintainer, with a pair of packages.
...
svn path=/nixpkgs/trunk/; revision=17295
2009-09-20 09:37:55 +00:00
Nicolas Pierron
6041b78fa4
Report bad default values which would have cause a build failure if they
...
were used to build a NixOS system.
svn path=/nixpkgs/trunk/; revision=17286
2009-09-19 22:10:11 +00:00
Nicolas Pierron
5f138aebde
Fix: Use the check function defined in the option declaration if it exists.
...
svn path=/nixpkgs/trunk/; revision=17277
2009-09-19 16:49:31 +00:00
Eelco Dolstra
1885909e93
* More typos.
...
svn path=/nixpkgs/trunk/; revision=17257
2009-09-18 15:18:23 +00:00
Nicolas Pierron
c6267a8c9d
Add declarations and definitions to options. This allow you to retrieve
...
the location of the definition with the defined value.
Filter the source location for the documentation.
svn path=/nixpkgs/trunk/; revision=17253
2009-09-18 15:10:11 +00:00
Nicolas Pierron
e07f5d2a2c
Add location to declared sub-modules.
...
svn path=/nixpkgs/trunk/; revision=17252
2009-09-18 15:10:05 +00:00
Michael Raskin
a9dc68b1ea
Specify some obvious platform sets
...
svn path=/nixpkgs/trunk/; revision=17205
2009-09-16 15:12:24 +00:00
Eelco Dolstra
d7d80e8fdc
* Typos.
...
svn path=/nixpkgs/trunk/; revision=17182
2009-09-16 11:37:07 +00:00
Nicolas Pierron
0c16b00cbd
Replace the traversal of modules:
...
- Remove handleOptionSets which used option declarations & definitions
in the same set.
- Add a traversal of modules where "config" and "options" are traverse at
the same time.
This allow to have accruate error messages with the incriminated files
playing a role in the error.
This system add a new restriction compare to the previous system:
- A module with no structure (option definitions & option declarations
& require) should not contain any option declarations. If such module
exists you must convert it to the following form:
{ imports = <content of the require attribute>;
options = <set of option declarations>;
config = <set of option definitions>;
}
svn path=/nixpkgs/trunk/; revision=17163
2009-09-15 13:36:30 +00:00
Nicolas Pierron
37ce2ca949
Handles cases where developers ""cannot"" put their initial modules in
...
other files.
Imports of imported attribute set are not working anymore because this
feature is hard to maintain and because this a potential source of error.
Imports are only accepted inside named modules where the system has some
control over mutual inclusion.
svn path=/nixpkgs/trunk/; revision=17144
2009-09-15 00:21:39 +00:00
Michael Raskin
b98b622ef0
Fix NixOS evaluation. As I understand, configuration gets added to the list of modules as an attrSet (not as a file name). Just add a trivial check to passthrough such modules.
...
svn path=/nixpkgs/trunk/; revision=17116
2009-09-14 20:10:41 +00:00
Nicolas Pierron
1557cfd0c6
split moduleClosure in two parts:
...
* unifyModuleSyntax: handle all kind of module syntax to convert them into
a module which has the following form:
{
imports = [ <paths> ];
options = <attribute set of options declarations>;
config = <attribute set (with properties) of option definitions>;
}
This function assume that there is at most one imported attribute set which
correspond to option declarations.
* moduleClosure: handle a list of module's paths which are converted with
the previous function to do the closure of the imports with the function
lazyGenericClosure (which does the same as builtins.genericClosure except
that it doesn't evaluate the content of modules). The "key" and "paths"
attributes are left to be used as debug information in futur
implementation(s).
svn path=/nixpkgs/trunk/; revision=17108
2009-09-14 13:19:00 +00:00
Ludovic Courtès
b7fa5f13c9
Add gnu' as an alias for
linux'.
...
The rationale is that usually applications don't care about the kernel
but rather about the C library, tool chain, and standard utilities,
which are GNU, not Linux.
svn path=/nixpkgs/trunk/; revision=17069
2009-09-12 18:46:04 +00:00
Marc Weber
60aa746f6b
removing dropPath. It's used once and in that case it behaves like
...
builtins.dropPath
svn path=/nixpkgs/trunk/; revision=17018
2009-09-10 16:57:26 +00:00
Eelco Dolstra
5b7f46ea43
* A utility function `optionalAttrs', similar to optional and
...
optionalString but for attribute sets.
svn path=/nixpkgs/trunk/; revision=17002
2009-09-10 10:52:51 +00:00
Michael Raskin
a1ea759dd9
Adding libev - an even loop library remotely similar to libevent
...
svn path=/nixpkgs/trunk/; revision=16877
2009-08-27 07:17:57 +00:00
Eelco Dolstra
921de5b511
* Remove the warning, it's rather annoying.
...
svn path=/nixpkgs/trunk/; revision=16862
2009-08-26 14:13:05 +00:00
Michael Raskin
9e928bb1e9
Adding eProver to buildfarm via maintanership
...
svn path=/nixpkgs/trunk/; revision=16854
2009-08-25 08:28:08 +00:00
Marc Weber
3235c889b9
fix of warning. It should be correct now
...
svn path=/nixpkgs/trunk/; revision=16813
2009-08-22 18:13:56 +00:00
Marc Weber
9c49ad9f70
trace warning when using attrs for textClosureList
...
svn path=/nixpkgs/trunk/; revision=16810
2009-08-22 09:35:59 +00:00
Marc Weber
e7dc062579
adding xapian and xapian-bindings
...
svn path=/nixpkgs/trunk/; revision=16788
2009-08-20 20:18:58 +00:00
Eelco Dolstra
9f59fb9377
* findFirst is used by the LaTeX function. Forgot to commit.
...
svn path=/nixpkgs/trunk/; revision=16438
2009-07-22 14:43:39 +00:00
Eelco Dolstra
10c4ec0ed8
svn path=/nixpkgs/trunk/; revision=16412
2009-07-17 12:04:34 +00:00
Eelco Dolstra
80cab44fce
* Options / config: these should be attrsets, not lists (IMHO).
...
svn path=/nixpkgs/trunk/; revision=16359
2009-07-14 16:22:42 +00:00
Nicolas Pierron
b09382fcd1
Extract properties.nix and modules.nix from options.nix.
...
svn path=/nixpkgs/trunk/; revision=16339
2009-07-13 16:18:52 +00:00
Andres Löh
9f9ec8d2c6
Added myself as a maintainer.
...
svn path=/nixpkgs/trunk/; revision=16327
2009-07-10 19:50:04 +00:00
Nicolas Pierron
5cd8eefb26
Allow to set priority which are below the default priority level.
...
This help to define default values which can be override without any extra syntax.
svn path=/nixpkgs/trunk/; revision=16304
2009-07-10 09:44:09 +00:00
Marc Weber
07df330fd5
maintainers + marcweber
...
svn path=/nixpkgs/trunk/; revision=16294
2009-07-09 22:23:56 +00:00
Sander van der Burg
9c2379e263
Added myself (sander) to the maintainers list
...
svn path=/nixpkgs/trunk/; revision=16275
2009-07-09 13:42:22 +00:00
Marc Weber
6abf8471fb
fix sourceWithTagsDerivation, myhasktags now based on current haskell derivations
...
svn path=/nixpkgs/trunk/; revision=16263
2009-07-09 03:50:47 +00:00
Eelco Dolstra
edd198ee8b
* Doh.
...
svn path=/nixpkgs/trunk/; revision=16259
2009-07-08 16:14:51 +00:00
Eelco Dolstra
73ac7f5876
svn path=/nixpkgs/trunk/; revision=16256
2009-07-08 15:56:05 +00:00
Michael Raskin
dd89941fb2
Added myself as the maintainer of some packages
...
svn path=/nixpkgs/trunk/; revision=16221
2009-07-07 15:05:15 +00:00
Nicolas Pierron
aec4341cb4
Fix: (in moduleClosure) remove key attribute of inlined sets.
...
svn path=/nixpkgs/trunk/; revision=16198
2009-07-06 23:20:14 +00:00
Nicolas Pierron
c49dddb1ab
Substitute fixOptionSetsFun by multiple functions which are:
...
- well named,
- capable to handle the proposal of Eelco Dolstra { imports= [..]; options = {}; config = {}; } in addition to the current { require = [..]; .. } syntax.
svn path=/nixpkgs/trunk/; revision=16192
2009-07-06 16:20:05 +00:00
Nicolas Pierron
a89f3bca50
allow the argument set of modules to be defined outside of option.nix file.
...
svn path=/nixpkgs/trunk/; revision=16191
2009-07-06 16:20:00 +00:00
Nicolas Pierron
736523d992
cleanSource: Avoid copying git files.
...
svn path=/nixpkgs/trunk/; revision=16190
2009-07-06 16:19:52 +00:00
Eelco Dolstra
0281a7deb8
svn path=/nixpkgs/trunk/; revision=16131
2009-07-02 08:58:30 +00:00
Ludovic Courtès
7b7ed8f1af
Add `stdenv.lib.maintainers'.
...
Suggested by Eelco Dolstra.
svn path=/nixpkgs/trunk/; revision=16126
2009-07-01 15:38:55 +00:00
Eelco Dolstra
a440fba8e3
* Refactoring: move the types out of options.nix, which is much too
...
big. Also, they could be useful beyond option handling.
svn path=/nixpkgs/trunk/; revision=16055
2009-06-26 13:53:31 +00:00
Nicolas Pierron
dd50af4923
Add a description of values which cause a bad type the failure.
...
svn path=/nixpkgs/trunk/; revision=16054
2009-06-26 12:42:00 +00:00
Nicolas Pierron
6c0912ee9c
- partition based on the content of the properties. (rmProperties * isOption)
...
- Do not eval properties on option declarations.
-> mkIf does not mask option declarations if the condition is evaluated to false.
svn path=/nixpkgs/trunk/; revision=16043
2009-06-25 21:25:33 +00:00
Eelco Dolstra
36b4a9b3f3
* Rename types.enable -> types.bool.
...
svn path=/nixpkgs/trunk/; revision=15955
2009-06-14 11:06:16 +00:00
Nicolas Pierron
6f0b3b683e
option types: Fix the generated template name used for the documentation.
...
svn path=/nixpkgs/trunk/; revision=15938
2009-06-11 16:03:43 +00:00
Nicolas Pierron
8f8971144f
optionAttrSetToDocList: Re-implement with the collect function.
...
Use the option name computed by "handleOptionSets" instead of
computing it a second time. Handle option containing option sets.
svn path=/nixpkgs/trunk/; revision=15937
2009-06-11 16:03:38 +00:00
Nicolas Pierron
0f6a67814a
Add 'collect' a function which recursively collects all attribute values verifying a predicate.
...
svn path=/nixpkgs/trunk/; revision=15936
2009-06-11 16:03:33 +00:00
Nicolas Pierron
b32002c3a3
Add support for a new module syntax.
...
Introduce optional argument to optionSet options.
svn path=/nixpkgs/trunk/; revision=15935
2009-06-11 16:03:26 +00:00
Eelco Dolstra
6408a6a6fd
* Trivial function to create a singleton list. Can reduce unnecessary
...
indentation in expressions like
environent.extraJobs =
[ { name = "foo";
job =
''
bla bla
'';
}
];
which becomes
environent.extraJobs = singleton
{ name = "foo";
job =
''
bla bla
'';
};
svn path=/nixpkgs/trunk/; revision=15892
2009-06-08 22:42:42 +00:00
Eelco Dolstra
ac7eb7d25a
* nix-env gets confused when an attrset contains an attribute named
...
"type".
svn path=/nixpkgs/trunk/; revision=15781
2009-05-29 09:47:55 +00:00
Nicolas Pierron
49b4942f0e
Add option types.
...
svn path=/nixpkgs/trunk/; revision=15749
2009-05-27 20:25:17 +00:00
Eelco Dolstra
ded055c896
* Remove an attrset comparison.
...
svn path=/nixpkgs/trunk/; revision=15736
2009-05-26 16:25:59 +00:00
Eelco Dolstra
8b52e84e1a
* Fix a comparison of function values (disallowed in the Nix trunk).
...
Thanks to Nicolas.
svn path=/nixpkgs/trunk/; revision=15734
2009-05-26 16:00:30 +00:00
Eelco Dolstra
1635ec4bdf
* Put strings-with-deps in lib.
...
svn path=/nixpkgs/trunk/; revision=15729
2009-05-25 18:22:19 +00:00
Eelco Dolstra
8d7bf1a11e
* Typo.
...
svn path=/nixpkgs/trunk/; revision=15699
2009-05-24 18:12:39 +00:00
Marc Weber
ed69e9ed94
getAttr can call builtins.getAttr
...
svn path=/nixpkgs/trunk/; revision=15694
2009-05-24 10:57:49 +00:00
Marc Weber
3157bb1098
removed all __primops from nixpkgs
...
svn path=/nixpkgs/trunk/; revision=15693
2009-05-24 10:57:46 +00:00
Marc Weber
f7f938a1d1
big breaking change: renaming lib.getAttr to lib.attrByPath
...
getAttr was ambiguous. It's also a builtin function
fix
svn path=/nixpkgs/trunk/; revision=15692
2009-05-24 10:57:41 +00:00
Marc Weber
ea3688db98
added documentation illustrating behaviour of the new textClosureMap
...
implementation
svn path=/nixpkgs/trunk/; revision=15663
2009-05-19 23:26:08 +00:00
Marc Weber
52647ea3b0
FullDepEntry -> fullDepEntry, PackEntry -> packEntry
...
svn path=/nixpkgs/trunk/; revision=15662
2009-05-19 23:25:58 +00:00
Nicolas Pierron
1500252e6f
* options.nix:
...
Remove attribute set comparison. Imported attribute sets
are traverse assuming that no duplicate could exists.
svn path=/nixpkgs/trunk/; revision=15659
2009-05-19 23:07:07 +00:00
Nicolas Pierron
47679b20af
Remove unused feature which allowed to add properties on the required elements.
...
svn path=/nixpkgs/trunk/; revision=15658
2009-05-19 23:07:02 +00:00
Nicolas Pierron
36dcabd7be
Add support for require attribute with a filename as argument.
...
svn path=/nixpkgs/trunk/; revision=15657
2009-05-19 23:06:56 +00:00
Eelco Dolstra
b9d560d30e
* Get rid of __primop.
...
* newMergeOptionSets -> mergeOptionSets.
svn path=/nixpkgs/trunk/; revision=15652
2009-05-19 14:54:41 +00:00
Eelco Dolstra
abf71d5352
* textClosure: don't use uniqList, and don't rely on buggy behaviour
...
in the Nix expression evaluator (namely that comparison of attribute
sets works properly).
* Removed some redundant parentheses in builder-defs.
svn path=/nixpkgs/trunk/; revision=15551
2009-05-11 15:21:42 +00:00
Eelco Dolstra
2f33cdec38
* Die tabs die. Also, renamed FullDepEntry and PackEntry to
...
fullDepEntry and packEntry for consistency.
svn path=/nixpkgs/trunk/; revision=15549
2009-05-11 11:55:05 +00:00
Marc Weber
8cc8965379
enhance escapeShellArg funtion. It should be pretty correct now
...
svn path=/nixpkgs/trunk/; revision=15475
2009-05-06 16:06:41 +00:00
Eelco Dolstra
671d53dd35
* Allow the user to install stdenv (nix-env -i stdenv) and get all the
...
packages in the stdenv as propagated user environment packages.
svn path=/nixpkgs/branches/stdenv-updates/; revision=15300
2009-04-25 14:08:29 +00:00
Eelco Dolstra
730f8c2b4d
* Added a function to make Unix-style search paths. This generalises
...
`makeLibraryPath'.
svn path=/nixpkgs/trunk/; revision=14884
2009-04-05 18:05:11 +00:00
Eelco Dolstra
1f9740e01c
* Added some regression tests for lib that I wrote a while ago but
...
didn't commit. Also, run the tests when making a Nixpkgs tarball.
svn path=/nixpkgs/trunk/; revision=14802
2009-03-31 13:03:50 +00:00
Eelco Dolstra
2405d87230
* Move some functions for manipulating meta and name attributes out of
...
all-packages.nix and into lib.
svn path=/nixpkgs/trunk/; revision=14778
2009-03-30 13:22:19 +00:00
Eelco Dolstra
6b24d7bebe
* mapAttrsRecursiveCond', which is like
mapAttrsRecursive' but takes
...
a predicate to tell it whether to recursive into a given attribute
set.
svn path=/nixpkgs/trunk/; revision=14776
2009-03-30 13:19:57 +00:00
Marc Weber
e06491168b
tidied up pkgs/lib/debug.nix
...
more consistent naming:
debugVal -> traceVal
debugXMLVal -> traceXMLVal
whatis -> showVal
traceWhatis -> traceShowVal
traceMarked -> traceShowValMarked
removed some parenthesis
svn path=/nixpkgs/trunk/; revision=14701
2009-03-25 13:48:55 +00:00
Nicolas Pierron
f624a70ee7
Fix mkThenElse and mkAlways evaluation.
...
svn path=/nixpkgs/trunk/; revision=14528
2009-03-14 07:20:31 +00:00
Eelco Dolstra
b53ef57554
* Moved mapAttrs to attrsets.nix.
...
* Added a function mapAttrsRecursive, which is like mapAttrs, but
recursively applies itself to attribute sets.
* Commented and cleaned up some functions.
svn path=/nixpkgs/trunk/; revision=14495
2009-03-10 15:18:38 +00:00
Marc Weber
08e1c08bc7
moved debugging functions into lib module "debug"
...
svn path=/nixpkgs/trunk/; revision=14430
2009-03-06 23:21:35 +00:00
Marc Weber
49b115132d
add error context to all top level attr names of all-packages.nix
...
svn path=/nixpkgs/trunk/; revision=14429
2009-03-06 23:21:31 +00:00
Marc Weber
b56ed35851
replacing applyAndFun by lib.defaultOverridableDelayableArgs
...
applyAndFun has a bug resulting in the same arg beeing added more than
once when using a concatenating merge function for the attr set.
I've tried giving the function a name "overridableDelayableArgs" which
resembles its usage much more.
important refactoring:
applyAndFun had .fun and .funMerge only when passing the merge
function lib.mergeOrApply
composableDerivation {
initial = {
...
};
}
to
overridableDelayableArgs has always .replace and .merge
composableDerivation {} {
...
}
svn path=/nixpkgs/trunk/; revision=14428
2009-03-06 23:21:28 +00:00
Marc Weber
51289a41b0
adjust packages to overridableDelayableArgs
...
svn path=/nixpkgs/trunk/; revision=14427
2009-03-06 23:21:24 +00:00
Marc Weber
f1183f33e3
added simple lib test case for overridableDelayableArgs
...
svn path=/nixpkgs/trunk/; revision=14426
2009-03-06 23:21:17 +00:00
Marc Weber
5ddfa7ed64
moved catAttrs, attrVals into attrsets.nix, adding attrValues
...
svn path=/nixpkgs/trunk/; revision=14425
2009-03-06 23:21:14 +00:00
Marc Weber
be3a9f2346
added overridableDelayableArgs replacing applyAndFun
...
svn path=/nixpkgs/trunk/; revision=14424
2009-03-06 23:21:12 +00:00
Marc Weber
e917282535
added eqStrict (deep, strict test for equality)
...
it can replace eqList and can compare attrs as well
svn path=/nixpkgs/trunk/; revision=14423
2009-03-06 23:21:09 +00:00
Nicolas Pierron
e18a10d0ae
* Refactor mkIf to extract the concept of properties.
...
Properties can be delay on any attribute set and have
functions which are used to define the semantic of each
property.
* Introduce the mkOverride property.
svn path=/nixpkgs/trunk/; revision=14285
2009-02-28 18:21:25 +00:00
Michael Raskin
8bf73286a4
add eqStrings back..
...
svn path=/nixpkgs/trunk/; revision=14228
2009-02-24 16:19:08 +00:00
Eelco Dolstra
f9b9844949
* Doh.
...
svn path=/nixpkgs/trunk/; revision=14014
2009-02-09 17:03:18 +00:00
Eelco Dolstra
599015e8b0
* Split lib/default.nix into several files, as it had become a big
...
mess. Also cleaned up some functions:
- foldl appeared broken (it recursively called fold).
- Renamed logicalAND/logicalOR to and/or.
- Removed listOfListsToAttrs, eqStrings: obsolete.
- Removed isInList, which does the same thing as elem.
- stringToCharacters: don't return a "" at the end of the list.
- Renamed concatList to concat, as concatList (singular) is a
misnomer: it takes two lists. Likewise, renamed mergeAttr to
mergeAttrs.
misc.nix still contains a lot of stuff that should be refactored and
moved to other files.
svn path=/nixpkgs/trunk/; revision=14013
2009-02-09 16:51:03 +00:00
Eelco Dolstra
6ed4aa7ecb
* Qt updated to 4.4.3 in preparation of upgrading KDE to 4.2.
...
svn path=/nixpkgs/trunk/; revision=13974
2009-02-03 16:32:56 +00:00
Nicolas Pierron
74630be169
Replace addLocation by addErrorContext.
...
pkgs.lib.addErrorContext add a new line inside the stack trace if this is supported by your nix version.
svn path=/nixpkgs/trunk/; revision=13886
2009-01-27 14:46:41 +00:00
Nicolas Pierron
aa27e34a2e
Remove python reference from comment.
...
svn path=/nixpkgs/trunk/; revision=13883
2009-01-27 14:08:49 +00:00
Nicolas Pierron
a130392234
Suggest nice/readable example first for composableDerivation.
...
svn path=/nixpkgs/trunk/; revision=13882
2009-01-27 14:01:00 +00:00
Nicolas Pierron
c333a6ab6b
Add missing arguments to the "notHandle" functions of mergeOptionSets and filterOptionSets.
...
svn path=/nixpkgs/trunk/; revision=13872
2009-01-25 22:37:10 +00:00
Nicolas Pierron
74df154f73
Fix previous commit.
...
svn path=/nixpkgs/trunk/; revision=13870
2009-01-25 22:25:38 +00:00
Nicolas Pierron
c2be87e132
Remove support for merge function with name argument.
...
svn path=/nixpkgs/trunk/; revision=13869
2009-01-25 21:23:47 +00:00
Nicolas Pierron
c1b9946c28
Name argument of option's merge functions are now obsolete.
...
svn path=/nixpkgs/trunk/; revision=13842
2009-01-25 00:31:43 +00:00
Nicolas Pierron
daa6f9c7ef
Add a common merge function. (mergeOneOption)
...
This merge function allow only one definition for an option.
svn path=/nixpkgs/trunk/; revision=13841
2009-01-25 00:31:38 +00:00
Nicolas Pierron
9581664fb9
Add the "notdef" value when no else-part is defined.
...
Remove the "notdef" values from the user-defined values.
svn path=/nixpkgs/trunk/; revision=13840
2009-01-25 00:31:33 +00:00
Nicolas Pierron
57f66db54c
Remove extra arguments from uniqFlatten.
...
Clean-up fixOptionSetsFun.
svn path=/nixpkgs/trunk/; revision=13839
2009-01-25 00:31:29 +00:00
Nicolas Pierron
13d5c8923d
factor mergeOptionSets and filterOptionSets into the function handleOptionSets.
...
svn path=/nixpkgs/trunk/; revision=13838
2009-01-25 00:31:23 +00:00