Commit graph

6 commits

Author SHA1 Message Date
Eelco Dolstra 94dbdc53b2 * Cleaned up the semantics of Fix expressions.
* Conditionals and variables in Fix expressions.  This allows, e.g.,

    Descr(
    [ Bind("pkgId", "subversion-0.21.0")

    , Bind("httpsClient", Bool(True))
    , Bind("httpServer", Bool(True))

    , Bind("ssl", If(Var("httpsClient"), Fix("./openssl-0.9.7b.fix"), ""))

    , Bind("httpd", If(Var("httpServer"), Fix("./httpd-2.0.45.fix"), ""))
    ...
    ])

  which introduces domain feature variables httpsClient and httpServer
  (i.e., whether Subversion is built with https client and webdav
  server support); the values of the variables influences package
  dependencies and the build scripts.

  The next step is to allow that packages can express constraints on
  each other.  E.g., StrategoXT is dependent on an ATerm library with
  the "gcc" variant enabled.  In fact, this may cause several
  Nix instantiations to be created from a single Fix descriptor.  If
  possible, Fix should try to find the least set of instantiations
  that obeys the constraints.


svn path=/nix/trunk/test/; revision=53
2003-04-25 15:33:50 +00:00
Eelco Dolstra 935ac37000 * Fix descriptors for Pan and its dependencies.
svn path=/nix/trunk/test/; revision=46
2003-04-23 21:21:06 +00:00
Eelco Dolstra 955ae188b2 * Fix descriptor for Subversion 0.21.0.
svn path=/nix/trunk/test/; revision=45
2003-04-23 09:02:53 +00:00
Eelco Dolstra 7dec82e241 * We no longer use nix-populate standalone, rather we use it as a
build action for `system' packages (like system.fix) that have
  dependencies on all packages we want to activate.

  So the command sequence to switch to a new activation configuration
  of the system would be:

    $ fix -i .../fixdescriptors/system.fix
    ...
    system.fix -> 89cf4713b37cc66989304abeb9ea189f

    $ nix-switch 89cf4713b37cc66989304abeb9ea189f

* A nix-profile.sh script that can be included in .bashrc.

svn path=/nix/trunk/test/; revision=39
2003-04-09 12:26:48 +00:00
Eelco Dolstra 81e4ff797d * Descriptor importing in Fix.
svn path=/nix/trunk/test/; revision=38
2003-04-08 15:36:54 +00:00
Eelco Dolstra 6c0e7440ad * `Fix' is a high-level descriptor instantiator for Nix. It replaces
nix-instantiate.

svn path=/nix/trunk/test/; revision=35
2003-04-08 12:00:51 +00:00