2003-08-13 11:13:52 +02:00
|
|
|
<chapter>
|
|
|
|
<title>Installation</title>
|
|
|
|
|
|
|
|
<sect1>
|
2003-11-26 13:30:16 +01:00
|
|
|
<title>Obtaining Nix</title>
|
2003-08-13 11:13:52 +02:00
|
|
|
|
|
|
|
<para>
|
2003-11-26 13:30:16 +01:00
|
|
|
The easiest way to obtain Nix is to download a <ulink
|
|
|
|
url='http://www.cs.uu.nl/groups/ST/Trace/Nix'>source
|
|
|
|
distribution.</ulink>
|
2003-08-13 11:13:52 +02:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
2003-11-26 13:30:16 +01:00
|
|
|
Alternatively, the most recent sources of Nix can be obtained from its
|
|
|
|
<ulink url='https://svn.cs.uu.nl:12443/repos/trace/nix/trunk'>Subversion
|
2003-11-26 12:24:13 +01:00
|
|
|
repository</ulink>. For example, the following command will check out
|
2003-08-13 11:13:52 +02:00
|
|
|
the latest revision into a directory called <filename>nix</filename>:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen>
|
2003-11-26 13:30:16 +01:00
|
|
|
$ svn checkout https://svn.cs.uu.nl:12443/repos/trace/nix/trunk nix</screen>
|
2003-08-13 11:13:52 +02:00
|
|
|
|
|
|
|
<para>
|
|
|
|
Likewise, specific releases can be obtained from the <ulink
|
2003-11-26 13:30:16 +01:00
|
|
|
url='https://svn.cs.uu.nl:12443/repos/trace/nix/tags'>tags
|
2003-11-26 12:24:13 +01:00
|
|
|
directory</ulink> of the repository. If you don't have Subversion, you
|
2003-11-26 13:30:16 +01:00
|
|
|
can also download an automatically generated <ulink
|
|
|
|
url='https://svn.cs.uu.nl:12443/dist/trace/'>compressed
|
|
|
|
tar-file</ulink> of the head revision of the trunk.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1>
|
|
|
|
<title>Prerequisites</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
A fairly recent version of GCC/G++ is required. Version 2.95 and higher
|
|
|
|
should work.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
To rebuild this manual and the man-pages you need the
|
|
|
|
<command>xmllint</command> and <command>xsltproc</command>, which are
|
|
|
|
part of the <literal>libxml2</literal> and <literal>libxslt</literal>
|
|
|
|
packages, respectively. You also need the <ulink
|
|
|
|
url='http://docbook.sourceforge.net/projects/xsl/'>DocBook XSL
|
|
|
|
stylesheets</ulink> and optionally the <ulink
|
|
|
|
url='http://www.oasis-open.org/docbook/xml/4.2/docbook-xml-4.2.zip'>
|
|
|
|
DocBook XML 4.2 DTD</ulink>. Note that these are only required if you
|
|
|
|
modify the manual sources or when you are building from the Subversion
|
|
|
|
repository.
|
2003-08-13 11:13:52 +02:00
|
|
|
</para>
|
|
|
|
|
2003-11-26 13:30:16 +01:00
|
|
|
<para>
|
|
|
|
Nix uses Sleepycat's Berkeley DB, CWI's ATerm library, and SDF parser
|
|
|
|
library. These are included in the Nix source distribution. If you
|
|
|
|
build from the Subversion repository, you must download them yourself and
|
|
|
|
place them in the <filename>externals/</filename> directory. See
|
|
|
|
<filename>externals/Makefile.am</filename> for the precise URLs of these
|
|
|
|
packages.
|
|
|
|
</para>
|
2003-08-13 11:13:52 +02:00
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1>
|
|
|
|
<title>Building Nix</title>
|
|
|
|
|
|
|
|
<para>
|
2003-11-26 13:30:16 +01:00
|
|
|
After unpacking or checking out the Nix sources, issue the following
|
|
|
|
commands:
|
2003-08-13 11:13:52 +02:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen>
|
2003-08-13 17:17:57 +02:00
|
|
|
$ ./configure <replaceable>options...</replaceable>
|
|
|
|
$ make
|
|
|
|
$ make install</screen>
|
2003-08-13 11:13:52 +02:00
|
|
|
|
|
|
|
<para>
|
2003-11-26 13:30:16 +01:00
|
|
|
When building from the Subversion repository, these should be preceded by
|
|
|
|
the command:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
$ autoreconf -i</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
|
2003-08-13 11:13:52 +02:00
|
|
|
<filename>/nix</filename>. You can change this to any location you like.
|
2003-11-26 13:30:16 +01:00
|
|
|
You must have write permission to the <replaceable>prefix</replaceable>
|
|
|
|
path.
|
2003-08-13 11:13:52 +02:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<warning>
|
|
|
|
<para>
|
2003-11-26 12:24:13 +01:00
|
|
|
It is advisable <emphasis>not</emphasis> to change the installation
|
2003-11-26 13:30:16 +01:00
|
|
|
prefix from its default, since doing so will in all likelihood make it
|
|
|
|
impossible to use derivations built on other systems.
|
2003-08-13 11:13:52 +02:00
|
|
|
</para>
|
|
|
|
</warning>
|
|
|
|
|
2003-11-26 13:30:16 +01:00
|
|
|
<para>
|
|
|
|
If you want to rebuilt the documentation, pass the full path to the
|
|
|
|
DocBook XML catalog file (<filename>docbook.cat</filename>) and to the
|
|
|
|
DocBook XSL stylesheets using the
|
|
|
|
<option>--with-docbook-catalog=<replaceable>path</replaceable></option>
|
|
|
|
and <option>--with-docbook-xsl=<replaceable>path</replaceable></option>
|
|
|
|
options.
|
|
|
|
</para>
|
|
|
|
|
2003-08-13 11:13:52 +02:00
|
|
|
</sect1>
|
|
|
|
|
2003-11-26 15:25:39 +01:00
|
|
|
|
|
|
|
<sect1>
|
|
|
|
<title>Using Nix</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
To use Nix, some environment variables should be set. In particular,
|
2003-11-27 15:58:32 +01:00
|
|
|
<envar>PATH</envar> should contain the directories
|
2003-11-26 15:25:39 +01:00
|
|
|
<filename><replaceable>prefix</replaceable>/bin</filename> and
|
|
|
|
<filename><replaceable>prefix</replaceable>/var/nix/links/current/bin</filename>.
|
|
|
|
The first directory contains the Nix tools themselves, while the second
|
|
|
|
contains to the current <emphasis>user environment</emphasis> (an
|
|
|
|
automatically generated package consisting of symlinks to installed
|
|
|
|
packages). The simplest way to set the required environment variables is
|
|
|
|
to include the file
|
|
|
|
<filename><replaceable>prefix</replaceable>/etc/profile.d/nix.sh</filename>
|
|
|
|
in your <filename>~/.bashrc</filename> (or similar), like this:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
. <replaceable>prefix</replaceable>/etc/profile.d/nix.sh</screen>
|
|
|
|
|
|
|
|
</sect1>
|
|
|
|
|
2003-08-13 11:13:52 +02:00
|
|
|
</chapter>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
local variables:
|
|
|
|
sgml-parent-document: ("book.xml" "chapter")
|
|
|
|
end:
|
|
|
|
-->
|