Commit graph

22 commits

Author SHA1 Message Date
Eelco Dolstra d897fc5501 * Some prototype code to make dealing with options in Nixpkgs/NixOS
easier.  Instead of writing

    config.get ["foo" "bar"]

  it would be much cleaner to just write

    config.foo.bar

  only this doesn't handle the case where option foo.bar is not
  supplied in the configuration; in that case we need to take the
  default value from some set of option definitions
  (system/options.nix in NixOS).

  Following a suggestion from Martin, the function `combine' (need
  better name) takes a set of option definitions (which follow the
  attribute set structure of the options) and a set of options and
  fills in missing values in the latter with default values from the
  former.  This only works with very recent versions of Nix (it needs
  Marc Weber's listToAttrs primop).

svn path=/nixpkgs/trunk/; revision=9203
2007-08-27 15:10:48 +00:00
Michael Raskin 6d4fa01f1e Added strings-with-deps, a set of functions that are intended to
build a minimal text which includes given strings and satisfies
'dependencies' of type A requires B to go before it. Just like
global variable intialization must occur before using them. Supposed
to be used for constructing builder.sh .

svn path=/nixpkgs/trunk/; revision=9196
2007-08-26 21:59:31 +00:00
Marc Weber 8f3a8b5006 renamed chosenOptions to chooseOptionsByFlags and added support for optionals
(thus you don't need to write flag definitions, passing a dependency or not is enough)

svn path=/nixpkgs/trunk/; revision=9167
2007-08-19 17:24:05 +00:00
Marc Weber ee347e49c1 renamened assert to assertion because assert is a resnerved word,
fix of blocks errors ( blocking does work in all cases now )

svn path=/nixpkgs/trunk/; revision=9166
2007-08-19 04:32:02 +00:00
Marc Weber a3a9d407da fix: listToAttrs added (which I had forgotten) when evaluating flags
svn path=/nixpkgs/trunk/; revision=9164
2007-08-18 22:29:00 +00:00
Marc Weber 6af4bd3ca6 primop functions listToAttrs (+test), __isAttrs, __trace added
new configuration style proposal in lib/default-unstable.nix

svn path=/nixpkgs/trunk/; revision=9163
2007-08-18 22:12:00 +00:00
Michael Raskin 54a1f25c4c Added conditional concatenation and used it for name and configureFlags generation.
svn path=/nixpkgs/trunk/; revision=9136
2007-08-15 21:17:11 +00:00
Michael Raskin 75747d3b1c Added possibility for flags= in calls to proposed template. As usual, look at huge Vim.
svn path=/nixpkgs/trunk/; revision=9135
2007-08-15 20:54:11 +00:00
Michael Raskin 118e9d6ebf Corrected a flaw that made automated package silently accept any extra arguments
svn path=/nixpkgs/trunk/; revision=9101
2007-08-11 11:14:36 +00:00
Michael Raskin efbabdb598 Converted Vim package to a template-based form with only lists filled in manually. Added library functions to support it. Added two proposed package templates to top-level, so that every discussion about package format can result in just editing templates or adding new ones.
svn path=/nixpkgs/trunk/; revision=9100
2007-08-11 10:34:07 +00:00
Michael Raskin 2d6a65b666 Included some configuration for Vim.
svn path=/nixpkgs/trunk/; revision=9099
2007-08-10 19:53:30 +00:00
Eelco Dolstra 9816367ed1 * Function to return a range of numbers.
svn path=/nixpkgs/trunk/; revision=8850
2007-06-09 19:45:55 +00:00
Eelco Dolstra c5e1ae5eaf * Purity fix in building Python: don't let it search in /usr/include
and /usr/lib to determine what optional modules (like bzip2, zlib,
  dl, etc.) to build.  Unfortunately there doesn't seem to be a way to
  tell the Python build process to look anywhere else, so I had to
  patch setup.py.

svn path=/nixpkgs/trunk/; revision=8780
2007-05-27 14:34:01 +00:00
Eelco Dolstra 14c0ae4055 * Move the `optional' function to lib.
svn path=/nixpkgs/trunk/; revision=8720
2007-05-20 20:24:43 +00:00
Eelco Dolstra 7b7230b0e9 * Function concatLists to concatenate a list of lists.
svn path=/nixpkgs/trunk/; revision=8219
2007-03-06 00:01:27 +00:00
Eelco Dolstra 83a82a22e5 * Filter out *~ files in cleanSource.
svn path=/nixpkgs/trunk/; revision=7803
2007-01-29 14:53:23 +00:00
Eelco Dolstra e18bd5af62 * Move cleanSource to lib.
svn path=/nixpkgs/trunk/; revision=7668
2007-01-15 09:20:18 +00:00
Eelco Dolstra b0950cab80 * A function `elem' to check whether a list contains a specific
element.

svn path=/nixpkgs/trunk/; revision=7577
2007-01-08 22:49:26 +00:00
Eelco Dolstra e726057b32 * Function `findSingle' for looking up values in dictionary-like
lists.

svn path=/nixpkgs/trunk/; revision=7446
2006-12-21 00:09:40 +00:00
Eelco Dolstra e7194e0ed5 * Library functions: filter, eqLists (equality on lists; the `=='
operator is mostly broken, see NIX-62).

svn path=/nixpkgs/trunk/; revision=7151
2006-11-27 16:58:08 +00:00
Eelco Dolstra 368c196a62 * More descriptions.
svn path=/nixpkgs/trunk/; revision=6709
2006-10-12 10:53:16 +00:00
Eelco Dolstra b8cdbb94f8 * Put utility functions like fold in lib/default.nix.
svn path=/nixpkgs/trunk/; revision=6605
2006-09-25 10:07:59 +00:00