about summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2009-11-05T09·07+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2009-11-05T09·07+0000
commit268d90a03eaab95d13c1326d58fb2287c628aedc (patch)
tree0833352714936c3c71f7592b8e6835bafdc97b35 /doc
parent1ff8758f762367ffd2517ce7d9d63c6c9746a0ee (diff)
* Various updates.
Diffstat (limited to 'doc')
-rw-r--r--doc/manual/installation.xml52
-rw-r--r--doc/manual/introduction.xml2
-rw-r--r--doc/manual/nix-lang-ref.xml95
-rw-r--r--doc/manual/package-management.xml23
-rw-r--r--doc/manual/quick-start.xml30
-rw-r--r--doc/manual/release-notes.xml2
6 files changed, 62 insertions, 142 deletions
diff --git a/doc/manual/installation.xml b/doc/manual/installation.xml
index 7adf00cb6a..0e66b8f0ea 100644
--- a/doc/manual/installation.xml
+++ b/doc/manual/installation.xml
@@ -140,16 +140,25 @@ $ ./bootstrap</screen>
 <para>The installation path can be specified by passing the
 <option>--prefix=<replaceable>prefix</replaceable></option> to
 <command>configure</command>.  The default installation directory is
-<filename>/nix</filename>.  You can change this to any location you
-like.  You must have write permission to the
+<filename>/usr/local</filename>.  You can change this to any location
+you like.  You must have write permission to the
 <replaceable>prefix</replaceable> path.</para>
 
-<warning><para>It is best <emphasis>not</emphasis> to change the
-installation prefix from its default, since doing so makes it
-impossible to use pre-built binaries from the standard Nixpkgs
-channels.</para></warning>
+<para>Nix keeps its <emphasis>store</emphasis> (the place where
+packages are stored) in <filename>/nix/store</filename> by default.
+This can be changed using
+<option>--with-store-dir=<replaceable>path</replaceable></option>.</para>
 
-<para>If you want to rebuilt the documentation, pass the full path to
+<warning><para>It is best <emphasis>not</emphasis> to change the Nix
+store from its default, since doing so makes it impossible to use
+pre-built binaries from the standard Nixpkgs channels — that is, all
+packages will need to be built from source.</para></warning>
+
+<para>Nix keeps state (such as its database and log files) in
+<filename>/nix/var</filename> by default.  This can be changed using
+<option>--localstatedir=<replaceable>path</replaceable></option>.</para>
+
+<para>If you want to rebuild the documentation, pass the full path to
 the DocBook RELAX NG schemas and to the DocBook XSL stylesheets using
 the
 <option>--with-docbook-rng=<replaceable>path</replaceable></option>
@@ -160,27 +169,26 @@ options.</para>
 </section>
 
 
-<section><title>Installing from RPMs</title>
+<section><title>Installing a binary distribution</title>
 
-<para>RPM packages of Nix can be downloaded from <link
-xlink:href="http://nixos.org/" />.  These RPMs should work for most
-fairly recent releases of SuSE and Red Hat Linux.  They have been
-known to work work on SuSE Linux 8.1 and 9.0, and Red Hat 9.0.  In
-fact, it should work on any RPM-based Linux distribution based on
-<literal>glibc</literal> 2.3 or later.</para>
+<para>RPM and Deb packages of Nix for a number of different versions
+of Fedora, openSUSE, Debian and Ubuntu can be downloaded from <link
+xlink:href="http://nixos.org/" />.  Once downloaded, the RPMs can be
+installed or upgraded using <command>rpm -U</command>.  For example,
+
+<screen>
+$ rpm -U nix-0.13pre18104-1.i386.rpm</screen>
 
-<para>Once downloaded, the RPMs can be installed or upgraded using
-<command>rpm -U</command>.  For example,
+Likewise, for a Deb package:
 
 <screen>
-$ rpm -U nix-0.5pre664-1.i386.rpm</screen>
+$ dpkg -i nix_0.13pre18104-1_amd64.deb</screen>
 
 </para>
 
-<para>The RPMs install into the directory <filename>/nix</filename>.
-Nix can be uninstalled using <command>rpm -e nix</command>.  After
-this it will be necessary to manually remove the Nix store and other
-auxiliary data:
+<para>Nix can be uninstalled using <command>rpm -e nix</command> or
+<command>dpkg -r nix</command>.  After this you should manually remove
+the Nix store and other auxiliary data, if desired:
 
 <screen>
 $ rm -rf /nix/store
@@ -191,6 +199,7 @@ $ rm -rf /nix/var</screen>
 </section>
 
 
+<!-- TODO: should be updated
 <section><title>Upgrading Nix through Nix</title>
 
 <para>You can install the latest stable version of Nix through Nix
@@ -203,6 +212,7 @@ installation</link> by clicking on the package links at <link
 xlink:href="http://nixos.org/releases/full-index-nix.html" />.</para>
 
 </section>
+-->
 
 
 <section><title>Security</title>
diff --git a/doc/manual/introduction.xml b/doc/manual/introduction.xml
index 2e32a649d8..0cf57fd855 100644
--- a/doc/manual/introduction.xml
+++ b/doc/manual/introduction.xml
@@ -320,7 +320,7 @@ overview of NixOS is given in the HotOS XI paper <citetitle
 xlink:href="http://www.st.ewi.tudelft.nl/~dolstra/pubs/hotos-final.pdf">Purely
 Functional System Configuration Management</citetitle>.  The Nix
 homepage has <link
-xlink:href="http://nix.cs.uu.nl/docs/papers.html">an up-to-date list
+xlink:href="http://nixos.org/docs/papers.html">an up-to-date list
 of Nix-related papers</link>.</para>
 
 <para>Nix is the subject of Eelco Dolstra’s PhD thesis <citetitle
diff --git a/doc/manual/nix-lang-ref.xml b/doc/manual/nix-lang-ref.xml
index bda0ff5432..86273ac3d0 100644
--- a/doc/manual/nix-lang-ref.xml
+++ b/doc/manual/nix-lang-ref.xml
@@ -178,100 +178,5 @@
     </productionset>
     
   </sect1>
-  
-
-
-  <sect1>
-    <title>Semantics</title>
-
-
-    
-    <sect2>
-      <title>Built-in functions</title>
-
-      <para>
-        The Nix language provides the following built-in function
-        (<quote>primops</quote>):
-      </para>
-
-      <variablelist>
-
-        <varlistentry>
-          <term><function>import</function>
-          <replaceable>e</replaceable></term>
-          <listitem>
-            <para>
-              Evaluates the expression <replaceable>e</replaceable>,
-              which must yield a path value.  The Nix expression
-              stored at this path in the file system is then read,
-              parsed, and evaluated.  Returns the result of the
-              evaluation of the Nix expression just read.
-            </para>
-
-            <para>
-              Example: <literal>import ./foo.nix</literal> evaluates
-              the expression stored in <filename>foo.nix</filename>
-              (in the directory containing the expression in which the
-              <function>import</function> occurs).
-            </para>
-          </listitem>
-        </varlistentry>
-
-        <varlistentry>
-          <term><function>derivation</function>
-          <replaceable>e</replaceable></term>
-          <listitem>
-            <para>
-              Evaluates the expression <replaceable>e</replaceable>,
-              which must yield an attribute set.  [...]
-            </para>
-          </listitem>
-        </varlistentry>
-
-        <varlistentry>
-          <term><function>baseNameOf</function>
-          <replaceable>e</replaceable></term>
-          <listitem>
-            <para>
-              Evaluates the expression <replaceable>e</replaceable>,
-              which must yield a string value, and returns a string
-              representing its <emphasis>base name</emphasis>.  This
-              is the substring following the last path separator
-              (<literal>/</literal>).
-            </para>
-
-            <para>
-              Example: <literal>baseNameOf "/foo/bar"</literal>
-              returns <literal>"bar"</literal>, and
-              <literal>baseNameOf "/foo/bar/"</literal> returns
-              <literal>""</literal>.
-            </para>
-          </listitem>
-        </varlistentry>
-
-        <varlistentry>
-          <term><function>toString</function>
-          <replaceable>e</replaceable></term>
-          <listitem>
-            <para>
-              Evaluates the expression <replaceable>e</replaceable>
-              and coerces it into a string, if possible.  Only
-              strings, paths, and URIs can be so coerced.
-            </para>
-
-            <para>
-              Example: <literal>toString
-              http://www.cs.uu.nl/</literal> returns
-              <literal>"http://www.cs.uu.nl/"</literal>.
-            </para>
-          </listitem>
-        </varlistentry>
-            
-      </variablelist>
-
-    </sect2>
-
-  </sect1>
-  
 
 </appendix>
diff --git a/doc/manual/package-management.xml b/doc/manual/package-management.xml
index 387258e697..167e96e6f6 100644
--- a/doc/manual/package-management.xml
+++ b/doc/manual/package-management.xml
@@ -507,19 +507,16 @@ click on it, and it will be installed with all the necessary
 dependencies.</para>
 
 <para>For instance, you can go to <link
-xlink:href="http://nixos.org/releases/nixpkgs/nixpkgs-unstable/" /> —
-or to any older release of Nix Packages — and click on any link for
-the individual packages for your platform (say, <link
-xlink:href='http://nix.cs.uu.nl/dist/nix/nixpkgs-0.10pre6622/pkgs/subversion-1.4.0-i686-linux.nixpkg'><literal>subversion-1.4.0</literal>
-for <literal>i686-linux</literal></link>).  The first time you do
-this, your browser will ask what to do with
-<literal>application/nix-package</literal> files.  You should open
-them with <filename>/nix/bin/nix-install-package</filename>.  This
-will open a window that asks you to confirm that you want to install
-the package.  When you answer <literal>Y</literal>, the package and
-all its dependencies will be installed.  This is a binary deployment
-mechanism — you get packages pre-compiled for the selected platform
-type.</para>
+xlink:href="http://hydra.nixos.org/jobset/nixpkgs/trunk/channel/latest"
+/> and click on any link for the individual packages for your
+platform.  The first time you do this, your browser will ask what to
+do with <literal>application/nix-package</literal> files.  You should
+open them with <filename>/nix/bin/nix-install-package</filename>.
+This will open a window that asks you to confirm that you want to
+install the package.  When you answer <literal>Y</literal>, the
+package and all its dependencies will be installed.  This is a binary
+deployment mechanism — you get packages pre-compiled for the selected
+platform type.</para>
 
 <para>You can also install <literal>application/nix-package</literal>
 files from the command line directly.  See <xref
diff --git a/doc/manual/quick-start.xml b/doc/manual/quick-start.xml
index eca58465f6..6d96cb5ac0 100644
--- a/doc/manual/quick-start.xml
+++ b/doc/manual/quick-start.xml
@@ -11,9 +11,9 @@ to the following chapters.</para>
 
 <orderedlist>
 
-<listitem><para>Download a source tarball or RPM from <link
-xlink:href='http://nixos.org/'/>.  Build source
-distributions using the regular sequence:
+<listitem><para>Download a source tarball, RPM or Deb from <link
+xlink:href='http://nixos.org/'/>.  Build source distributions using
+the regular sequence:
         
 <screen>
 $ tar xvfj nix-<replaceable>version</replaceable>.tar.bz2
@@ -21,13 +21,21 @@ $ ./configure
 $ make
 $ make install <lineannotation>(as root)</lineannotation></screen>
 
-This will install Nix in <filename>/nix</filename>.  You shouldn't
-change the prefix if at all possible since that will make it
-impossible to use pre-built binaries from the Nixpkgs channel and
-other channels.  Alternatively, you could grab an RPM if you're on an
-RPM-based system.  You should also add
-<filename>/nix/etc/profile.d/nix.sh</filename> to your
-<filename>~/.bashrc</filename> (or some other login
+This will install the Nix binaries in <filename>/usr/local</filename>
+and keep the Nix store and other state in <filename>/nix</filename>.
+You can change the former by specifying
+<option>--prefix=<replaceable>path</replaceable></option>.  The
+location of the store can be changed using
+<option>--with-store-dir=<replaceable>path</replaceable></option>.
+However, you shouldn't change the store location, if at all possible,
+since that will make it impossible to use pre-built binaries from the
+Nixpkgs channel and other channels.  The location of the state can be
+changed using
+<option>--localstatedir=<replaceable>path</replaceable>.</option></para></listitem>
+
+<listitem><para>You should add
+<filename><replaceable>prefix</replaceable>/etc/profile.d/nix.sh</filename>
+to your <filename>~/.bashrc</filename> (or some other login
 file).</para></listitem>
 
 <listitem><para>Subscribe to the Nix Packages channel.
@@ -100,7 +108,7 @@ numbers).</para></listitem>
 
 <listitem><para>You can also install specific packages directly from
 your web browser.  For instance, you can go to <link
-xlink:href="http://nix.cs.uu.nl/dist/nix/nixpkgs-unstable-latest/" />
+xlink:href="http://hydra.nixos.org/jobset/nixpkgs/trunk/channel/latest" />
 and click on any link for the individual packages for your platform.
 Associate <literal>application/nix-package</literal> with the program
 <filename>/nix/bin/nix-install-package</filename>.  A window should
diff --git a/doc/manual/release-notes.xml b/doc/manual/release-notes.xml
index 81543d313e..5a98ad49af 100644
--- a/doc/manual/release-notes.xml
+++ b/doc/manual/release-notes.xml
@@ -8,7 +8,7 @@
 
 <!--==================================================================-->
 
-<section xml:id="ssec-relnotes-0.13"><title>Release 0.13 (November 4,
+<section xml:id="ssec-relnotes-0.13"><title>Release 0.13 (November 5,
 2009)</title>
 
 <para>This is primarily a bug fix release.  It has some new