Commit graph

713 commits

Author SHA1 Message Date
Rommel M. Martinez cf141abfe9 Fixed typo. 2015-11-23 15:59:57 +08:00
Vladimír Čunát b39622a487 rename chroot to sandbox (fixes #656, close #682)
- rename options but leav old names as lower-priority aliases,
  also "-dirs" -> "-paths" to get closer to the meaning
- update docs to reflect the new names (old aliases are not documented),
  including a new file with release notes
- tests need an update after corresponding changes to nixpkgs
- __noChroot is left as it is (after discussion on the PR)
2015-11-10 22:32:51 +01:00
Eelco Dolstra 8fdd156a65 Add option to verify build determinism
Passing "--option build-repeat <N>" will cause every build to be
repeated N times. If the build output differs between any round, the
build is rejected, and the output paths are not registered as
valid. This is primarily useful to verify build determinism. (We
already had a --check option to repeat a previously succeeded
build. However, with --check, non-deterministic builds are registered
in the DB. Preventing that is useful for Hydra to ensure that
non-deterministic builds don't end up getting published at all.)
2015-11-09 23:16:24 +01:00
Anders Claesson 055ab1fc8d Fix typo in doc for nix-copy-closure 2015-10-08 13:17:01 +02:00
Eelco Dolstra f08449ccbd nix-prefetch-url: Add --name option
This allows overriding the name component of the resulting Nix store
path, which is necessary if the base name of the URI contains
"illegal" characters.
2015-10-07 14:55:33 +02:00
Eelco Dolstra b54f447df9 nix-prefetch-url: Support unpacking tarballs
This allows nix-prefetch-url to prefetch the output of fetchzip and
its wrappers (like fetchFromGitHub). For example:

  $ nix-prefetch-url --unpack https://github.com/NixOS/patchelf/archive/0.8.tar.gz

or from a Nix expression:

  $ nix-prefetch-url -A nix-repl.src

In the latter case, --unpack can be omitted because nix-repl.src is a
fetchFromGitHub derivation and thus has "outputHashMode" set to
"recursive".
2015-10-07 14:40:10 +02:00
Eelco Dolstra 9ffc4f4363 Don't mention Fedora/Debian packages in the installation section
See d4a88df9d6
2015-10-05 18:46:25 +02:00
Eelco Dolstra 57db2aa220 Merge pull request #645 from acowley/patch-1
Update prerequisites-source.xml
2015-10-05 15:05:32 +02:00
Eelco Dolstra 06f29fafe8 nix-prefetch-url: Support prefetching from a Nix expression
For example,

  $ nix-prefetch-url -A hello.src

will prefetch the file specified by the fetchurl call in the attribute
‘hello.src’ from the Nix expression in the current directory. This
differs from ‘nix-build -A hello.src’ in that it doesn't verify the
hash.

You can also specify a path to the Nix expression:

  $ nix-prefetch-url ~/Dev/nixpkgs -A hello.src

List elements (typically used in ‘patches’ attributes) also work:

  $ nix-prefetch-url -A portmidi.patches.0
2015-10-01 18:07:56 +02:00
Eelco Dolstra a3c4eb0964 nix-prefetch-url: $PRINT_PATH -> --print-path 2015-10-01 16:53:07 +02:00
Vladimír Čunát 12a4aea93d doc: fix the 'prebuild' typos 2015-09-17 12:08:05 +02:00
Anthony Cowley e5c3e054ec Update prerequisites-source.xml
The Perl WWW::Curl bindings are required to build Nix.
2015-09-15 12:42:44 -04:00
Eelco Dolstra 6e06a18d1b Release notes 2015-09-03 11:57:47 +02:00
Eelco Dolstra ce97523a7c Fix readDir example
Fixes https://github.com/NixOS/nixos-homepage/issues/46.
2015-09-01 16:53:51 +02:00
Eelco Dolstra 896428c818 Fix example 2015-08-05 17:36:33 +02:00
Eelco Dolstra 76cc8e97a2 Add sort primop 2015-07-28 18:39:39 +02:00
Eelco Dolstra 50807f3dd5 Add primop genList
This can be used to implement functions like ‘imap’ (or for that
matter, ‘map’) without the quadratic complexity incurred by calling
‘++’ repeatedly.
2015-07-28 17:28:35 +02:00
Eelco Dolstra d6d5885c15 Add replaceStrings primop
This is a generalisation of replaceChars in Nixpkgs.
2015-07-24 15:32:24 +02:00
Eelco Dolstra 14be783676 Add primops all and any
These are used thousands of times during NixOS evaluation, so it's
useful to speed them up.
2015-07-23 19:23:11 +02:00
Eelco Dolstra 61af14a921 Add foldl' primop 2015-07-23 17:03:02 +02:00
Eelco Dolstra ccf31dbc25 nix-copy-closure: Add -v flag
And make exportPath() less spammy by default.
2015-07-20 01:52:07 +02:00
Joachim Schiele 8ce96becf0 extended args@ explanation 2015-07-07 02:09:50 +02:00
Eelco Dolstra 39b3d9698e Typos 2015-06-12 11:02:40 +02:00
Eelco Dolstra d1e4b76a3a Update release notes 2015-06-12 01:11:03 +02:00
Eelco Dolstra 7d148ad543 Fix manual 2015-06-08 11:25:04 +02:00
Eelco Dolstra 53dd97bb9d Document setting up signed binary caches 2015-06-01 17:14:16 +02:00
Eelco Dolstra da196ec68f Document tarball downloading 2015-06-01 15:14:44 +02:00
Eelco Dolstra feca5cb67f Document nix-shell #!-scripts 2015-06-01 13:49:11 +02:00
Eelco Dolstra 99c2c14f50 Typo 2015-06-01 13:04:10 +02:00
Eelco Dolstra d68941d89d Nix 1.9 release notes 2015-06-01 12:57:43 +02:00
Charles Strahan 9c6328a7bf nix-env: document --set option 2015-05-19 11:00:15 +02:00
Shea Levy 4d652875bd Add the pre-build hook.
This hook can be used to set system-specific per-derivation build
settings that don't fit into the derivation model and are too complex or
volatile to be hard-coded into nix. Currently, the pre-build hook can
only add chroot dirs/files through the interface, but it also has full
access to the chroot root.

The specific use case for this is systems where the operating system ABI
is more complex than just the kernel-support system calls. For example,
on OS X there is a set of system-provided frameworks that can reliably
be accessed by any program linked to them, no matter the version the
program is running on. Unfortunately, those frameworks do not
necessarily live in the same locations on each version of OS X, nor do
their dependencies, and thus nix needs to know the specific version of
OS X currently running in order to make those frameworks available. The
pre-build hook is a perfect mechanism for doing just that.
2015-04-18 16:56:02 -04:00
Shea Levy fd6774e285 Revert "Add the pre-build hook."
Going to reimplement differently.

This reverts commit 1e4a4a2e9f.
2015-04-18 14:59:58 -04:00
Shea Levy 1e4a4a2e9f Add the pre-build hook.
This hook can be used to set system specific per-derivation build
settings that don't fit into the derivation model and are too complex or
volatile to be hard-coded into nix. Currently, the pre-build hook can
only add chroot dirs/files.

The specific use case for this is systems where the operating system ABI
is more complex than just the kernel-supported system calls. For
example, on OS X there is a set of system-provided frameworks that can
reliably be accessed by any program linked to them, no matter the
version the program is running on. Unfortunately, those frameworks do
not necessarily live in the same locations on each version of OS X, nor
do their dependencies, and thus nix needs to know the specific version
of OS X currently running in order to make those frameworks available.
The pre-build hook is a perfect mechanism for doing just that.
2015-04-12 12:56:38 -04:00
Daniel Hahler e659978ced Fix typos: s/the the/the/ 2015-03-06 16:43:22 +01:00
Eelco Dolstra cffa7f80ab Typo 2015-02-23 16:02:50 +01:00
Eelco Dolstra 99897f6979 Use chroots for all derivations
If ‘build-use-chroot’ is set to ‘true’, fixed-output derivations are
now also chrooted. However, unlike normal derivations, they don't get
a private network namespace, so they can still access the
network. Also, the use of the ‘__noChroot’ derivation attribute is
no longer allowed.

Setting ‘build-use-chroot’ to ‘relaxed’ gives the old behaviour.
2015-02-23 15:54:31 +01:00
Eelco Dolstra 15d2d3c34e Add restricted evaluation mode
If ‘--option restrict-eval true’ is given, the evaluator will throw an
exception if an attempt is made to access any file outside of the Nix
search path. This is primarily intended for Hydra, where we don't want
people doing ‘builtins.readFile ~/.ssh/id_dsa’ or stuff like that.
2015-02-23 15:54:31 +01:00
Shea Levy a8494de0be Merge branch 'docs/channels-path' of git://github.com/iElectric/nix 2015-02-22 11:59:38 -05:00
Domen Kožar 7bd8299c6c fixes https://github.com/NixOS/nixpkgs/issues/6485 2015-02-22 08:39:29 -08:00
Shea Levy e0953d53de Allow the leading component of a path to be a ~ 2015-02-19 08:05:16 -05:00
Eelco Dolstra bd91064150 Use $<attr>Path instead of $<attr> for passAsFile 2015-02-17 16:42:54 +01:00
Eelco Dolstra a70d275f3d Allow passing attributes via files instead of environment variables
Closes #473.
2015-02-17 14:42:15 +01:00
Eelco Dolstra 29e1ff675b Keep sorted 2015-02-17 13:55:37 +01:00
Eelco Dolstra de8ed5c1d3 Typo 2015-02-04 18:17:06 +01:00
Shea Levy d66d9e8425 Require linux 3.13 or later for chroot
Fixes #453
2015-02-04 18:15:56 +01:00
Tobias Geerinckx-Rice c23d67920e doc: nix-channel --remove takes a name, not a url 2015-01-12 10:56:58 +01:00
Данило Глинський (Danylo Hlynskyi) ed56ea980b Fix typo (assuming this is a typo)
Fix typo (assuming this is a typo)
`allowedRequisites` mentions `allowedReferences` in code example
2015-01-08 16:43:56 +01:00
Eelco Dolstra 128538ef06 nix-shell: Add --run flag
‘--run’ is like ‘--command’, except that it runs the command in a
non-interactive shell. This is important if you do things like:

  $ nix-shell --command make

Hitting Ctrl-C while make is running drops you into the interactive
Nix shell, which is probably not what you want. So you can now do

  $ nix-shell --run make

instead.
2015-01-08 15:14:38 +01:00
Eelco Dolstra 4d5c9d85ea Document how to set up build users on Mac OS X 2015-01-06 11:17:11 +01:00
j-keck 14fb7378df doc: remove wrong phrase.
'... another level of indirection not shown in the figure above ...'
but in the 'user-environments.png' figure there is '~/.nix-profile'.
the figure was updated with the commit: f982df3 on Mar 16, 2005.
2015-01-05 15:08:53 +01:00
j-keck 2c052278d2 doc: remove double word
'... when when ...' -> '... when ...'
2015-01-05 13:40:19 +01:00
Eelco Dolstra 411b237ee5 edition -> subtitle
For some reason, docbook-xsl doesn't render edition.
2015-01-02 12:53:32 +01:00
Eelco Dolstra f16b8786a2 Belatedly add contributors 2014-12-16 18:58:04 +01:00
Eelco Dolstra c2384052e3 Grmbl 2014-12-14 03:38:54 +01:00
Eelco Dolstra 47ed06a290 Add a section on nix-serve 2014-12-14 03:37:41 +01:00
Eelco Dolstra 2142f47c06 Add section on SSH substituter 2014-12-14 03:19:15 +01:00
Eelco Dolstra 68b4717873 Delete the stdenv section
It's outdated and better covered in the Nixpkgs manual.
2014-12-14 01:39:32 +01:00
Eelco Dolstra 6466d56f42 Bla 2014-12-14 01:33:16 +01:00
Eelco Dolstra e90e7b5e0a Fix build
http://hydra.nixos.org/build/17894500
2014-12-14 01:29:35 +01:00
Eelco Dolstra eb53f592b8 Fix image in PDF
Closes #415.
2014-12-14 01:23:06 +01:00
Eelco Dolstra 9c830394ec Rename files 2014-12-14 01:07:23 +01:00
Eelco Dolstra 4c4e891652 Update .nixpkg description 2014-12-13 23:27:22 +01:00
Eelco Dolstra be79773542 ReiserFS -> ext4 2014-12-13 23:23:19 +01:00
Eelco Dolstra 4eace5adda Style 2014-12-13 23:21:14 +01:00
Eelco Dolstra 751ae181a1 Undocument nix-generate-patches 2014-12-13 23:17:26 +01:00
Eelco Dolstra 3b88d03714 Document channel format and excise most mentions of manifests and nix-pull 2014-12-13 23:16:08 +01:00
Eelco Dolstra e5a51fab24 Style 2014-12-13 21:50:01 +01:00
Eelco Dolstra a144eb1415 Don't use ?= 2014-12-11 10:44:02 +01:00
darealshinji 40e1203abc allow custom docbook paths/URLs, use a working URL for docbook.rng 2014-12-11 10:43:46 +01:00
Eelco Dolstra d44d923be9 Add option to disable binary cache certificate checking 2014-12-09 13:16:02 +01:00
Eelco Dolstra e5891f2ea8 Use https://cache.nixos.org instead of http://cache.nixos.org 2014-12-09 13:16:02 +01:00
Eelco Dolstra 5f04da905f Intro: Mention binary caches 2014-11-25 15:55:28 +01:00
Eelco Dolstra d4c8ee7059 Rely on XML catalogs to find the DocBook schemas and stylesheets 2014-11-25 15:54:26 +01:00
Eelco Dolstra 976b949e4d More build-cache-failures -> build-cache-failure 2014-11-24 16:52:13 +01:00
Eelco Dolstra 215745415e Update installation section 2014-11-24 16:50:46 +01:00
Eelco Dolstra 103e4e43cc Update quick start section 2014-11-24 16:50:46 +01:00
Eelco Dolstra 2b74354e52 Combine introduction / quick start parts 2014-11-24 16:50:45 +01:00
Eelco Dolstra 5e04992d1f Manual: Bump date 2014-11-24 16:50:45 +01:00
Eelco Dolstra 69f91e3645 Don't claim FreeBSD support 2014-11-24 16:50:45 +01:00
Rob Vermaas 328a80e60a 'build-cache-failures' -> 'build-cache-failure' in nix.conf documentation. 2014-11-24 13:16:45 +01:00
Shea Levy 3d604ac88c Document functors 2014-11-15 16:25:47 -05:00
Eelco Dolstra 6f6b75cd09 Typo 2014-11-04 10:15:55 +01:00
Eelco Dolstra 1683fffd09 Update release notes 2014-10-29 16:18:39 +01:00
Eelco Dolstra 722bd041ce Document some primops 2014-10-29 16:18:03 +01:00
Bob van der Linden 5f7ded7d22 doc: fixed nix-instantiate --find-file
The manual said --file-file, which should be --find-file.
2014-10-27 08:45:10 +01:00
Eelco Dolstra 2c1711ae33 nix-channel: Add --rollback flag
Fixes #368.
2014-10-14 12:08:04 +02:00
Eelco Dolstra 104e55bb7f nix-env: Add regular expression support in selectors
So you can now do things like:

  $ nix-env -qa '.*zip.*'
  $ nix-env -qa '.*(firefox|chromium).*'
2014-10-03 21:29:40 +02:00
wmertens e83a027e00 Remove bash requirement
As per https://github.com/NixOS/nixos-homepage/pull/16
2014-09-24 11:42:41 +02:00
Shell Turner 147fcdd137 Updated documentation for nix-install-package to mention --set flag 2014-09-23 15:11:25 +02:00
darealshinji a5b5ebc45f add manpage for nix-generate-patches 2014-09-23 15:10:18 +02:00
Vladimír Čunát c313d86bb8 manual: add a note that lists are strict in length
Close #345.
2014-09-23 15:08:33 +02:00
Eelco Dolstra a2fc9c6b57 Remove unhelpful suggestion 2014-09-16 15:42:20 +02:00
Eelco Dolstra 3a52104bee Delete bugs.xml 2014-09-16 15:40:03 +02:00
Eelco Dolstra 5a0181c7f2 Make troubleshooting an appendix 2014-09-16 15:39:08 +02:00
Eelco Dolstra f77d83c26b Style tweak 2014-09-16 15:37:38 +02:00
Eelco Dolstra 3c8522cc22 Fix parallel make of manpages 2014-09-16 15:29:55 +02:00
Eelco Dolstra 54adf344a3 Fix references to version.txt 2014-09-16 14:57:45 +02:00
Eelco Dolstra 7a740c9288 Drop separate release notes 2014-09-16 14:52:44 +02:00
Eelco Dolstra b1af336132 Undocument NIX_OTHER_STORES 2014-09-16 14:49:00 +02:00
Eelco Dolstra 57f6463ec0 Tweak some chapter titles 2014-09-16 14:38:37 +02:00
Eelco Dolstra d0608da13f Drop "service deployment" bla bla 2014-09-16 14:36:32 +02:00
Eelco Dolstra 8b760182cd Drop reference to FreeBSD 2014-09-16 14:35:11 +02:00
Eelco Dolstra f271b94652 Remove pointless "license" section 2014-09-16 14:33:39 +02:00
Eelco Dolstra 7a68b4e4d3 Release notes: Use a section per version 2014-09-16 14:29:00 +02:00
Eelco Dolstra 9ed49c1da0 Nicer file names for the release notes 2014-09-16 14:18:55 +02:00
Eelco Dolstra 8259a392da Manual build fixes 2014-09-16 14:14:09 +02:00
Eelco Dolstra f0ef6b74b9 Merge branch 'master' of github.com:thatdocslady/nix
Conflicts:
	doc/manual/release-notes.xml
	doc/manual/writing-nix-expressions.xml
2014-09-16 14:13:36 +02:00
Eelco Dolstra 67e5dd3ce9 Add some hyperlinks between NIXPATH and -I 2014-09-16 11:20:09 +02:00
Eelco Dolstra 9eddf6f0b6 allowedRequisites: Drop stdenv mention
I don't think it's a good idea to use allowedRequisites for stdenv, so
don't mention it here.
2014-08-28 18:26:01 +02:00
Eelco Dolstra b5da80e627 Fix manual build 2014-08-28 18:25:16 +02:00
Gergely Risko fd61069a42 Introduce allowedRequisites feature 2014-08-28 18:23:55 +02:00
Mikey Ariel 8901acc976 Restructuring the Nix manual 2014-08-27 18:41:09 +02:00
Gergely Risko 4b0a720ddf Document the "out" usage in allowedReferences 2014-08-23 11:11:19 +02:00
Eelco Dolstra 401ab50566 Remove pointless NIX_LOG_TYPE environment variable 2014-08-13 01:19:02 +02:00
Eelco Dolstra 7018830509 Update manual 2014-08-04 18:00:33 +02:00
Eelco Dolstra 1a44f1cb65 nix-copy-closure: Drop --bzip2, --xz, --show-progress
These are too difficult to implement via nix-store --serve.

‘--show-progress’ could be re-implemented fairly easily via a
sink/source wrapper class.
2014-07-24 17:11:54 +02:00
Eelco Dolstra f609eec71a Bump 2014-07-18 00:01:06 +02:00
Eelco Dolstra 049c0eb49c nix-daemon: Add trusted-users and allowed-users options
‘trusted-users’ is a list of users and groups that have elevated
rights, such as the ability to specify binary caches. It defaults to
‘root’. A typical value would be ‘@wheel’ to specify all users in the
wheel group.

‘allowed-users’ is a list of users and groups that are allowed to
connect to the daemon. It defaults to ‘*’. A typical value would be
‘@users’ to specify the ‘users’ group.
2014-07-17 16:57:07 +02:00
Eelco Dolstra a2c85b2ef8 Manual: Typo 2014-07-16 11:21:44 +02:00
Eelco Dolstra beaf3e90af Add builtin function ‘fromJSON’
Fixes #294.
2014-07-04 13:34:15 +02:00
Eelco Dolstra e82951fe23 Manual: html -> xhtml 2014-07-03 12:36:58 +02:00
Paul Colomiets 858b8f9760 Add --json argument to nix-instantiate 2014-06-27 11:23:40 +02:00
Adam Szkoda 8ea9fd7aa6 Rephrase @ operator description 2014-05-26 17:20:58 +02:00
Eelco Dolstra 9f9080e2c0 nix-store -l: Fetch build logs from the Internet
If a build log is not available locally, then ‘nix-store -l’ will now
try to download it from the servers listed in the ‘log-servers’ option
in nix.conf. For instance, if you have:

  log-servers = http://hydra.nixos.org/log

then it will try to get logs from http://hydra.nixos.org/log/<base
name of the store path>. So you can do things like:

  $ nix-store -l $(which xterm)

and get a log even if xterm wasn't built locally.
2014-05-21 17:19:36 +02:00
Charles Strahan a55e77ae10 fix typo 2014-05-13 10:54:03 +02:00
Eelco Dolstra a8c31d5011 Simplify multi-user installation instructions 2014-05-02 14:44:44 +02:00
Charles Strahan eeffdb74dc doc fix: swap 'import' and 'export' 2014-04-28 13:42:03 +02:00
Eelco Dolstra 31fe55bb8e trunk -> master 2014-04-25 14:55:13 +02:00
Ricardo M. Correia 700c678c2e nix-env: Minor change to '--delete-generations Nd' semantics
The option '--delete-generations Nd' deletes all generations older than N
days. However, most likely the user does not want to delete the
generation that was active N days ago.

For example, say that you have these 3 generations:

1: <30 days ago>
2: <15 days ago>
3: <1 hour ago>

If you do --delete-generations 7d (say, as part of a cron job), most
likely you still want to keep generation 2, i.e. the generation that was
active 7 days ago (and for most of the past 7 days, in fact).

This patch fixes this issue. Note that this also affects
'nix-collect-garbage --delete-older-than Nd'.

Thanks to @roconnor for noticing the issue!
2014-04-15 15:34:58 +02:00
Eelco Dolstra a1917208c0 Bump date 2014-04-11 15:11:28 +02:00
Eelco Dolstra 924e19341a Don't barf when installing as root 2014-04-10 23:42:48 +02:00
Eelco Dolstra b0a09a6f32 Add docbook icons to the distribution
Grmbl...
2014-04-09 14:52:43 +02:00
Eelco Dolstra e0a947cde6 Simplify quick start section 2014-04-08 16:28:39 +02:00
Eelco Dolstra d23931f3a4 Remove redundant stuff 2014-04-08 16:10:25 +02:00
Eelco Dolstra 4846005741 Update installation instructions 2014-04-08 16:09:56 +02:00
Eelco Dolstra 89f9232813 Update release notes 2014-04-07 12:00:23 +02:00
Eelco Dolstra 3f8e1f5682 Update release notes 2014-04-04 14:51:07 +02:00
Eelco Dolstra 1f19fdbd45 Document that we require a C++11 compiler 2014-04-04 13:49:53 +02:00
Ricardo M. Correia 034b6f6062 nix-collect-garbage: Add --delete-older-than option 2014-03-30 00:54:16 +01:00
Ricardo M. Correia 7ef7597f71 nix-env: Add support for --delete-generations 15d
It will delete all generations older than the specified number of days.
2014-03-30 00:54:16 +01:00
Eelco Dolstra 006f24c7fa Document nix-env -q --json 2014-03-12 14:25:48 +01:00
Eelco Dolstra d435e46daa Generate release notes again 2014-03-12 14:24:29 +01:00
Eelco Dolstra e9934bb5ad Update release notes for 1.7 2014-03-12 13:58:06 +01:00
Eelco Dolstra 92a848f674 Fix typos 2014-03-11 13:16:21 +01:00
Shea Levy 2f2a20ed18 Document null dynamic attrs 2014-03-11 13:15:06 +01:00
Eelco Dolstra 3a86888fd7 Typo 2014-02-28 14:01:31 +01:00
Eelco Dolstra 7f74513b4e Also provide an option for setting the curl connection timeout 2014-02-26 16:07:43 +01:00
Shea Levy 733214144a Document dynamic attributes
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-02-26 14:06:45 +01:00
Eelco Dolstra 36b90e72d7 nix-shell: Add --packages flag
This allows you to easily set up a build environment containing the
specified packages from Nixpkgs.  For example:

  $ nix-shell -p sqlite xorg.libX11 hello

will start a shell in which the given packages are present.
2014-02-19 17:08:01 +01:00