Commit graph

432 commits

Author SHA1 Message Date
Eelco Dolstra
50fe85f016 * For fixed-output derivations, pass the environment variables listed
in the attribute variable `impureEnvVars' from the caller to the
  builder.
2006-05-31 09:51:45 +00:00
Eelco Dolstra
8b5aa91aa7 2006-05-08 14:00:39 +00:00
Eelco Dolstra
20675feeab * Update copyright. 2006-03-15 12:58:22 +00:00
Eelco Dolstra
345a95afe9 * Allow the size of the GC reserved file to be specified in nix.conf
through the new `gc-reserved-space' option.
2006-02-16 13:58:10 +00:00
Eelco Dolstra
b505f9eaf5 * Document that nix-instantiate can read from stdin. 2006-02-10 15:29:17 +00:00
Eelco Dolstra
1d2460ee5d * Documentation fixes. 2005-12-24 23:22:05 +00:00
Eelco Dolstra
3c5619c7e4 * Begin release notes. 2005-12-15 21:11:55 +00:00
Eelco Dolstra
ab5c6bb3a3 * Change referer' to referrer' throughout. In particular, the
nix-store query options `--referer' and `--referer-closure' have
  been changed to `--referrer' and `--referrer-closure' (but the old
  ones are still accepted for compatibility).
2005-12-13 21:04:48 +00:00
Eelco Dolstra
1b43fbd8e4 * Oops, that should be Berkeley DB 4.3. Reported by Gerco Ballintijn. 2005-10-18 14:09:43 +00:00
Eelco Dolstra
62412c5874 * Document `nix-env --compare-versions'. 2005-10-06 15:51:43 +00:00
Eelco Dolstra
ed4de220d2 * Use "source" instead of ".". 2005-09-28 09:00:07 +00:00
Eelco Dolstra
fbedf6056e * Merge release notes. 2005-09-22 12:23:22 +00:00
Eelco Dolstra
db1a4227a3 * Updated release notes. 2005-09-16 11:28:29 +00:00
Eelco Dolstra
c28b8eb699 * svn:ignores.
* Add missing file to dist.
2005-09-16 10:35:48 +00:00
Eelco Dolstra
5c0770ac84 * Include the release notes in the manual. 2005-09-16 08:47:34 +00:00
Eelco Dolstra
1b62c2eba3 * Force release notes in ASCII, not UTF-8. 2005-09-15 20:29:08 +00:00
Eelco Dolstra
d1d0271996 * Check for w3m. 2005-09-15 15:21:57 +00:00
Eelco Dolstra
5818e8eeaf * Remove dead code. 2005-09-14 18:51:02 +00:00
Eelco Dolstra
025086edea * Release notes in Docbook; ASCII release notes (i.e., the `NEWS'
file) is now generated from that using `w3m' and some XSL hackery.
2005-09-14 18:50:45 +00:00
Eelco Dolstra
78c72bf10e * channels -> channels-v3, catamaran -> nix.cs.uu.nl. 2005-08-01 07:30:35 +00:00
Eelco Dolstra
a5ceb5bc0b * nix-build: default to `./default.nix' if no paths are specified.
So when using Nix as a build tool, you can just say `nix-build' and
  it will build the top-level derivation defined in `default.nix'.
2005-07-13 17:39:10 +00:00
Eelco Dolstra
88dea78cdf * Crazy: don't use real hashes of real components in examples, since
they cause Nix builds to have unnecessary retained dependences
  (e.g., on Subversion).
2005-05-09 09:58:00 +00:00
Eelco Dolstra
82d771f6e6 * Manual updates. 2005-04-10 20:54:21 +00:00
Eelco Dolstra
fb45b0f548 * Document nix-channel. 2005-04-09 17:16:00 +00:00
Eelco Dolstra
8b70f138e0 * Lots of manual updates, in particular the new `nix-store --query'
options were documented, as well as the Nix configuration file.
2005-04-08 13:00:38 +00:00
Eelco Dolstra
b9d8ecbc6a * More doc updates. 2005-04-07 15:51:27 +00:00
Eelco Dolstra
57d023a184 * More manual updates. 2005-04-07 10:47:58 +00:00
Eelco Dolstra
f1ae10b992 * Build hook documentation.
* nix-store options.
2005-04-07 09:36:35 +00:00
Eelco Dolstra
806b91f104 * GC docs. 2005-04-07 08:17:04 +00:00
Eelco Dolstra
128c174295 * Manual updates. 2005-04-05 15:28:30 +00:00
Eelco Dolstra
229252941a * Some GC documentation. 2005-04-05 11:30:56 +00:00
Eelco Dolstra
6c8cf567b8 * Use `--nonet' flag. 2005-04-05 11:29:46 +00:00
Eelco Dolstra
4a83c12c5d * Added a glossary to the manual. 2005-04-01 15:34:23 +00:00
Eelco Dolstra
67eff20906 * Manual updates. 2005-03-17 10:30:53 +00:00
Eelco Dolstra
ad3121a52d * Documented common environment variables. 2005-03-16 16:45:29 +00:00
Eelco Dolstra
f982df3cd7 * Update the user environments figure to show multiple profiles and
users.
* Change to base-32 hashes.
2005-03-16 14:40:48 +00:00
Eelco Dolstra
afc3a7b79b * Automake 1.9 compatibility. 2005-03-16 10:46:33 +00:00
Eelco Dolstra
693ff4f6bf * Some more updates. 2005-03-15 15:42:11 +00:00
Eelco Dolstra
e301334696 * XInclude all the way. 2005-03-15 13:55:41 +00:00
Eelco Dolstra
b376565b86 * Manual updates. 2005-03-15 13:21:32 +00:00
Eelco Dolstra
7d75616f2c * NEWS and manual update for release 0.7. 2005-01-12 10:27:46 +00:00
Eelco Dolstra
015beb7cd0 * Typo: genericBuilder -> genericBuild. 2004-12-17 13:46:07 +00:00
Eelco Dolstra
9f8964a062 * More manual fixes. 2004-11-14 10:42:16 +00:00
Eelco Dolstra
0b79a12082 * Manual fixes. 2004-11-14 00:24:57 +00:00
Eelco Dolstra
54c7a870d5 * Document --delete-generations and other nix-env options. 2004-11-12 23:56:37 +00:00
Eelco Dolstra
c2b0d6b02f * Document --eval-only and --parse-only options in nix-instantiate. 2004-11-12 23:22:08 +00:00
Eelco Dolstra
32c7326850 * Typos. 2004-11-09 14:06:56 +00:00
Eelco Dolstra
b8aaef5e4e * Documented the standard environment, including the generic builder. 2004-11-07 22:12:16 +00:00
Eelco Dolstra
2c3b29c5ca * Everything you always wanted to know about functions and derivations
but were afraid to ask.
2004-11-07 20:36:45 +00:00
Eelco Dolstra
ea6581b691 * Drop the grammar appendix. 2004-11-07 20:36:10 +00:00
Eelco Dolstra
1bac7a10e6 * Operators, comments. 2004-11-07 18:58:49 +00:00
Eelco Dolstra
55b35d6d77 * Lets, inheritance, assertions. 2004-11-07 13:53:07 +00:00
Eelco Dolstra
0b1ee4802b * Typo fix. 2004-11-05 21:12:23 +00:00
Eelco Dolstra
5f0300d18c * Generic builders. 2004-11-05 21:11:01 +00:00
Eelco Dolstra
3e9d2038b4 * Start of language reference. 2004-11-05 15:39:30 +00:00
Eelco Dolstra
6ca9c7f0a9 * Finished GNU Hello walkthrough. 2004-11-05 13:10:08 +00:00
Eelco Dolstra
8b934694f2 * Manual: writing Nix expressions. 2004-11-04 20:21:08 +00:00
Eelco Dolstra
5f2c5a306c * chapter -> appendix. 2004-11-02 08:25:29 +00:00
Eelco Dolstra
0913f5a615 * Section about channels. 2004-11-01 16:21:37 +00:00
Eelco Dolstra
ee5dcfade2 * Section about garbage collection. 2004-11-01 16:03:35 +00:00
Eelco Dolstra
cbe8de592d * Profiles section. 2004-11-01 12:02:44 +00:00
Eelco Dolstra
b05a596d61 * Document setuid Nix installs. 2004-10-31 17:08:48 +00:00
Eelco Dolstra
0d80d237c5 * Add figures to make install' / make dist'. 2004-10-31 16:13:25 +00:00
Eelco Dolstra
f8ac8d1ec8 * Began adding build farm docs. 2004-10-29 15:26:26 +00:00
Eelco Dolstra
37d7abd694 * New language feature: with expressions.
The expression `with E1; E2' evaluates to E2 with all bindings in
  the attribute set E1 substituted.  E.g.,

    with {x = 123;}; x

  evaluates to 123.  That is, the attribute set E1 is in scope in E2.

  This is particularly useful when importing files containing lots
  definitions.  E.g., instead of

    let {
      inherit (import ./foo.nix) a b c d e f;

      body = ... a ... f ...;
    }

  we can now say

    with import ./foo.nix;

    ... a ... f ...

  I.e., we don't have to say what variables should be brought into scope.
2004-10-25 16:54:56 +00:00
Eelco Dolstra
2cd590d96c * Instead of — use the actual Unicode character. By the way, to
edit the manual, you should have something like

    (modify-coding-system-alist 'file "\\.xml\\>" 'utf-8)

  in your ~/.emacs.
2004-10-18 12:22:14 +00:00
Eelco Dolstra
692204e0c5 * Rewrite of package management stuff. 2004-10-14 16:43:09 +00:00
Eelco Dolstra
febd8bed1b * Split overview chapter into a chapter on package management and a
chapter on writing Nix expressions.
2004-10-14 11:55:12 +00:00
Eelco Dolstra
98c69e5172 * Unindent. 2004-10-14 11:54:41 +00:00
Eelco Dolstra
371c57d8a7 * Updated the quick start section. Use channels instead of
downloading Nix expressions and calling nix-pull.  This is so
  user-friendly that even a Mac user can do it! :-)
2004-10-13 15:35:47 +00:00
Eelco Dolstra
2b20701f78 * Better introduction.
* Set notes in a different color than warnings.
2004-10-13 15:08:35 +00:00
Eelco Dolstra
5396304c73 * Use setre[ug]id() instead of setres[ug]id(), since the former is
more common than the latter (which exists only on Linux and
  FreeBSD).  We don't really care about dropping the saved IDs since
  there apparently is no way to quiry them in any case, so it can't
  influence the build (unlike the effective IDs which are checked by
  Perl for instance).
2004-09-09 15:55:31 +00:00
Eelco Dolstra
eb233e728f * `--min-age' flag in nix-store and nix-collect-garbage to only delete
unreachable paths that haven't been used for N hours.  For instance,
  `nix-collect-garbage --min-age 168' only deletes paths that haven't
  been accessed in the last week.

  This is useful for instance in the build farm where many derivations
  can be shared between consecutive builds, and we wouldn't want a
  garbage collect to throw them all away.  We could of course register
  them as roots, but then we'd to unregister them at some point, which
  would be a pain to manage.  The `--min-age' flag gives us a sort of
  MRU caching scheme.

  BUG: this really shouldn't be in gc.cc since that violates
  mechanism/policy separation.
2004-08-25 16:54:08 +00:00
Eelco Dolstra
fdec72c6cc * `nix-collect-garbage' now actually performs a garbage collection, it
doesn't just print the set of paths that should be deleted.  So
  there is no more need to pipe the result into `nix-store --delete'
  (which doesn't even exist anymore).
2004-08-25 15:39:13 +00:00
Eelco Dolstra
1eddee59f2 * The default verbosity level of all Nix commands is now lvlInfo.
* Builder output is written to standard error by default.
  * The option `-B' is gone.
  * The option `-Q' suppresses builder output.

The result of this is that most Nix invocations shouldn't need any
flags w.r.t. logging.
2004-08-18 12:19:06 +00:00
Eelco Dolstra
151e61fa5a * By default, `nix-env -i' now deletes previously installed
derivations with names matching the derivations being installed.
  The option `--preserve-installed / -P' overrides this behaviour.
2004-06-28 14:40:26 +00:00
Eelco Dolstra
24286e15c9 * `nix-env -u' now allows a specific version to be specified when
upgrading.

  This fixes a bug reported by Martin:

    $ nix-env -i foo-1.0
    $ nix-env -u foo-1.0
    upgrading foo-1.0 to foo-1.1
2004-06-28 13:37:05 +00:00
Eelco Dolstra
91dc023665 * Added a switch `--fallback'. From the manual:
Whenever Nix attempts to realise a derivation for which a closure is
  already known, but this closure cannot be realised, fall back on
  normalising the derivation.

  The most common scenario in which this is useful is when we have
  registered substitutes in order to perform binary distribution from,
  say, a network repository.  If the repository is down, the
  realisation of the derivation will fail.  When this option is
  specified, Nix will build the derivation instead.  Thus, binary
  installation falls back on a source installation.  This option is
  not the default since it is generally not desirable for a transient
  failure in obtaining the substitutes to lead to a full build from
  source (with the related consumption of resources).
2004-06-28 10:42:57 +00:00
Eelco Dolstra
b113edeab7 * A flag `--keep-going / -k' to keep building goals if one fails, as
much as possible.  (This is similar to GNU Make's `-k' flag.)

* Refactoring to implement this: previously we just bombed out when
  a build failed, but now we have to clean up.  In particular this
  means that goals must be freed quickly --- they shouldn't hang
  around until the worker exits.  So the worker now maintains weak
  pointers in order not to prevent garbage collection.

* Documented the `-k' and `-j' flags.
2004-06-25 15:36:09 +00:00
Eelco Dolstra
bcce9c1ff5 * Only add `-preRELEASE' to the version if STABLE != 1.
* Documented release procedures.
2004-04-26 09:52:06 +00:00
Eelco Dolstra
87bf541f23 * Documented the primops. 2004-04-08 15:51:26 +00:00
Eelco Dolstra
b0c9baf1b5 * EBNF grammar for the Nix expression language. 2004-04-08 13:31:57 +00:00
Eelco Dolstra
92e832348d * Lots of manual stuff. Reference pages for most Nix commands.
* nix-pull now requires the full url to the manifest, i.e.,
  `/MANIFEST/' is no longer automatically appended.
* nix-prefetch-url works again.
2004-02-10 16:14:47 +00:00
Eelco Dolstra
0616b7feea * Documented the most important nix-env flags. 2004-02-10 11:51:16 +00:00
Eelco Dolstra
66e94d3275 * Improvements to profiles. Generations are now per-profile, e.g.,
default -> default-94-link
  default-82-link -> /nix/store/cc4480...
  default-83-link -> /nix/store/caeec8...
  ...
  default-94-link -> /nix/store/2896ca...
  experimental -> experimental-2-link
  experimental-1-link -> /nix/store/cc4480...
  experimental-2-link -> /nix/store/a3148f...

* `--profile' / `-p' -> `--switch-profile' / `-S'
* `--link' / `-l' -> `--profile' / `-p'
* The default profile is stored in $prefix/var/nix/profiles.
  $prefix/var/nix/links is gone.  Profiles can be stored anywhere.
* The current profile is now referenced from ~/.nix-profile, not
  ~/.nix-userenv.
* The roots to the garbage collector now have extension `.gcroot', not
  `.id'.
2004-02-06 10:30:20 +00:00
Eelco Dolstra
d9f30fe7c7 * Sort `nix-env -q' output by derivation name.
* `--version' flag for all commands.
* Manual updates.
2004-02-02 10:51:54 +00:00
Eelco Dolstra
c625718513 * Detect flex and bison; updated the manual. 2004-01-30 16:32:14 +00:00
Eelco Dolstra
cdb50886f4 * Typos. 2004-01-22 09:35:35 +00:00
Eelco Dolstra
3c4bc7276a * Added a note about adding /nix/etc/profile.d/nix.sh to the profile. 2004-01-22 09:17:55 +00:00
Martin Bravenboer
4f72b408a5 Typos and url losser -> catamaran 2004-01-22 08:47:59 +00:00
Eelco Dolstra
4db7ef3fcc * Fixed URL. 2004-01-20 17:18:41 +00:00
Eelco Dolstra
3778586b2a * Nix Quick Start guide. 2004-01-20 15:37:55 +00:00
Eelco Dolstra
8baf50f108 * Manual updates.
* Updated the README.  Now it just refers to the manual.
2004-01-20 11:49:32 +00:00
Eelco Dolstra
ff9af107d3 * Option `-B' to always show the output of builders, regardless of
verbosity level.
2004-01-13 16:35:43 +00:00
Eelco Dolstra
46a71c857c * Option --force-realise' in nix-store --query'. 2004-01-09 14:18:28 +00:00
Eelco Dolstra
30b31a8f61 * Start of nix-env reference.
* Some CSS tweaks.
2004-01-08 16:56:40 +00:00
Eelco Dolstra
b594215531 * Manual updates. 2004-01-08 15:01:37 +00:00
Eelco Dolstra
5346536b62 * Include version number in manual. 2004-01-08 10:45:23 +00:00
Eelco Dolstra
abe8c8c2aa * Include images/ in distribution. 2004-01-07 10:59:38 +00:00
Eelco Dolstra
1ff986d51a * book -> manual 2004-01-06 16:38:32 +00:00
Eelco Dolstra
2f0b93904b * Install images. 2004-01-06 16:35:07 +00:00
Eelco Dolstra
94175e978a * RPM spec file.
* Respect DESTDIR variable.
2003-12-30 20:09:00 +00:00
Eelco Dolstra
0a753e182a * Oops. 2003-12-21 22:02:58 +00:00
Eelco Dolstra
df7a718786 * Man pages in sections. 2003-12-21 21:57:09 +00:00
Eelco Dolstra
00d4f907e1 * Get rid of the icons in warnings etc. 2003-12-03 09:33:03 +00:00
Eelco Dolstra
31fd72ee17 * Epigraph ;-) 2003-12-02 16:29:41 +00:00
Eelco Dolstra
16d971bce7 * A nice stylesheet for the manual. 2003-12-02 15:36:49 +00:00
Eelco Dolstra
905d5b91fa * Manual fixes (thanks to Merijn). 2003-12-01 14:52:51 +00:00
Eelco Dolstra
dc05f29cf6 * Manual updates. 2003-11-27 14:58:32 +00:00
Eelco Dolstra
7b0e29b4dc * Overview of nix-env. Recommended reading. :-) 2003-11-26 16:09:27 +00:00
Eelco Dolstra
62d9b31d0a * Updates. 2003-11-26 14:25:39 +00:00
Eelco Dolstra
f6a30ab264 * Updates. 2003-11-26 12:30:16 +00:00
Eelco Dolstra
2a4bac5459 * Refactoring.
* Convert tabs to spaces.
2003-11-26 11:24:13 +00:00
Eelco Dolstra
bd0ce1a4be * Minor fix. 2003-11-26 10:47:54 +00:00
Eelco Dolstra
c38ba181ed * Configure flags to specify the location of the DocBook DTD / stylesheets. 2003-11-26 10:41:21 +00:00
Eelco Dolstra
6d5877ea12 * Use --nonet flag to prevent fetching of DTD. 2003-11-25 13:43:48 +00:00
Eelco Dolstra
12e805cfb0 * Don't hardcode the path to the DocBook DTD/stylesheets. 2003-11-25 13:06:12 +00:00
Eelco Dolstra
56b98c3857 * Some work on the introduction. 2003-08-22 11:29:20 +00:00
Eelco Dolstra
2de8504791 * Delete the temporary directories of failed builds by default, and an
option `--keep-failed' to override this behaviour.
2003-08-19 09:04:47 +00:00
Eelco Dolstra
161aab582b * Use a catalog when calling xsltproc. 2003-08-14 18:24:40 +00:00
Eelco Dolstra
a24cb19361 * Use xmllint instead of nsgmls to validate the manual. 2003-08-14 18:17:02 +00:00
Eelco Dolstra
2e16ff22ac * Fix man page. 2003-08-14 11:27:02 +00:00
Eelco Dolstra
95b49f8044 * Manual updates. 2003-08-13 15:17:57 +00:00
Eelco Dolstra
68022552d2 * Put the pre-built manual and man pages in the tar distribution. 2003-08-13 15:17:36 +00:00
Eelco Dolstra
c34a153ae5 * Documented the `--query' operation. 2003-08-13 10:45:01 +00:00
Eelco Dolstra
b4f88d0ec3 * Split the book.xml into several xml files. 2003-08-13 09:13:52 +00:00
Eelco Dolstra
469f1eba56 * Documented some Nix operations. 2003-08-12 15:06:49 +00:00
Eelco Dolstra
e405ca506e * Generate man pages from the manual. 2003-08-12 13:54:42 +00:00
Eelco Dolstra
4b7b0bd12c * Started on the introduction. 2003-08-07 15:27:14 +00:00
Eelco Dolstra
74867e72f2 * Start of manual; installation instructions. 2003-08-07 14:17:18 +00:00
Eelco Dolstra
9f4c19276d * Basic makefile. 2003-07-31 13:13:13 +00:00
Eelco Dolstra
64c617e984 * Directories for the manual. 2003-07-30 14:40:18 +00:00