2004-01-20 17:37:55 +02:00
|
|
|
<chapter>
|
|
|
|
<title>Quick Start</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This chapter is for impatient people who don't like reading
|
|
|
|
documentation. For more in-depth information you are kindly
|
|
|
|
referred to <xref linkend='chap-installation' /> and <xref
|
|
|
|
linkend='chap-overview' />.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Download a source tarball or RPM from <ulink
|
2004-01-20 19:18:41 +02:00
|
|
|
url='http://www.cs.uu.nl/groups/ST/Trace/Nix'/>.
|
2004-01-20 17:37:55 +02:00
|
|
|
Build source distributions using the regular sequence:
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
$ tar xvfj nix-<replaceable>version</replaceable>.tar.bz2
|
|
|
|
$ ./configure
|
|
|
|
$ make
|
|
|
|
$ make install <lineannotation>(as root)</lineannotation></screen>
|
|
|
|
|
2004-01-22 11:17:55 +02:00
|
|
|
This will install Nix in <filename>/nix</filename>. You
|
|
|
|
should also add <filename>/nix/etc/profile.d/nix.sh</filename>
|
|
|
|
to your <filename>~/.bashrc</filename> (or some other login
|
|
|
|
file).
|
2004-01-20 17:37:55 +02:00
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Get some Nix expressions for pre-built packages by downloading
|
|
|
|
the latest <literal>nixpkgs</literal> distribution (from the
|
|
|
|
same location), and unpack them.
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
$ wget http://<replaceable>...</replaceable>/nix/nixpkgs-<replaceable>version</replaceable>/nixpkgs-<replaceable>version</replaceable>.tar.bz2
|
|
|
|
$ tar xfj nixpkgs-<replaceable>version</replaceable>.tar.bz2</screen>
|
|
|
|
|
2004-01-22 11:17:55 +02:00
|
|
|
This will unpack the distribution into a directory
|
|
|
|
<filename>nixpkgs-<replaceable>version</replaceable>/</filename>.
|
2004-01-20 17:37:55 +02:00
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Pull the Nix cache. This ensures that when you install
|
|
|
|
packages they are downloaded in pre-built form from the
|
|
|
|
network, rather than built from source.
|
|
|
|
|
|
|
|
<screen>
|
2004-02-10 18:14:47 +02:00
|
|
|
$ nix-pull http://<replaceable>...</replaceable>/nix/nixpkgs-<replaceable>version</replaceable>/MANIFEST</screen>
|
2004-01-20 17:37:55 +02:00
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Note that currently we only pre-build for Linux on x86
|
|
|
|
platforms.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
See what's available:
|
|
|
|
|
|
|
|
<screen>
|
2004-01-22 11:17:55 +02:00
|
|
|
$ nix-env -qaf nixpkgs-<replaceable>version</replaceable>/
|
2004-01-20 17:37:55 +02:00
|
|
|
MozillaFirebird-0.7
|
|
|
|
hello-2.1.1
|
|
|
|
docbook-xml-4.2
|
|
|
|
libxslt-1.1.0
|
|
|
|
<replaceable>...</replaceable></screen>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Install some packages:
|
|
|
|
|
|
|
|
<screen>
|
2004-01-22 11:17:55 +02:00
|
|
|
$ nix-env -iBf nixpkgs-<replaceable>version</replaceable>/ hello MozillaFirebird <replaceable>...</replaceable> </screen>
|
2004-01-20 17:37:55 +02:00
|
|
|
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Test that they work:
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
$ which hello
|
2004-02-06 12:30:20 +02:00
|
|
|
/home/eelco/.nix-profile/bin/hello
|
2004-01-20 17:37:55 +02:00
|
|
|
$ hello
|
|
|
|
Hello, world!
|
|
|
|
$ MozillaFirebird
|
|
|
|
<lineannotation>(read Slashdot or something)</lineannotation></screen>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Uninstall a package:
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
$ nix-env -e hello</screen>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
If a new release of <literal>nixpkgs</literal> comes along,
|
|
|
|
you can upgrade all installed packages to the latest versions
|
|
|
|
by downloading and unpacking the new release and doing:
|
|
|
|
|
|
|
|
<screen>
|
2004-01-22 11:35:35 +02:00
|
|
|
$ nix-env -uBf nixpkgs-<replaceable>version</replaceable>/ '*'</screen>
|
2004-01-20 17:37:55 +02:00
|
|
|
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
You should periodically run the Nix garbage collector to get
|
|
|
|
rid of unused packages, since uninstalls or upgrades don't
|
|
|
|
actual delete them:
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
$ nix-collect-garbage | xargs nix-store --delete</screen>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
|
|
</chapter>
|