From 8b70f138e02d62214715f144b133bf1b981911df Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 8 Apr 2005 13:00:38 +0000 Subject: * Lots of manual updates, in particular the new `nix-store --query' options were documented, as well as the Nix configuration file. --- doc/manual/troubleshooting.xml | 72 ++++++++++++++++++++++++++++++++---------- 1 file changed, 56 insertions(+), 16 deletions(-) (limited to 'doc/manual/troubleshooting.xml') diff --git a/doc/manual/troubleshooting.xml b/doc/manual/troubleshooting.xml index cd0bafe3d..4179eb841 100644 --- a/doc/manual/troubleshooting.xml +++ b/doc/manual/troubleshooting.xml @@ -1,31 +1,71 @@ - - Troubleshooting +Troubleshooting - This section provides solutions for some common problems. +This section provides solutions for some common problems. - Berkeley DB: <quote>Cannot allocate memory</quote> - Symptom: Nix operations (in particular the - nix-store operations , - , and - — the latter being called by nix-channel - --update) failing: +Berkeley DB: <quote>Cannot allocate memory</quote> + +Symptom: Nix operations (in particular the +nix-store operations , +, and — +the latter being called by nix-channel --update) +failing: $ nix-store --verify error: Db::del: Cannot allocate memory - Possible solution: make sure that no Nix processes are running, - then do: + + +Possible solution: make sure that no Nix processes are running, +then do: $ cd /nix/var/nix/db $ rm __db.00* - + + + + + +Collisions in <command>nix-env</command> + +Symptom: when installing or upgrading, you get an error message such as + + +$ nix-env -i docbook-xml +... +adding /nix/store/s5hyxgm62gk2...-docbook-xml-4.2 +collission between `/nix/store/s5hyxgm62gk2...-docbook-xml-4.2/xml/dtd/docbook/calstblx.dtd' + and `/nix/store/06h377hr4b33...-docbook-xml-4.3/xml/dtd/docbook/calstblx.dtd' + at /nix/store/...-builder.pl line 62. + + + +The cause is that two installed packages in the user environment +have overlapping filenames (e.g., +xml/dtd/docbook/calstblx.dtd. This usually +happens when you accidentally try to install two versions of the same +package. For instance, in the example above, the Nix Packages +collection contains two versions of docbook-xml, so +nix-env -i will try to install both. The default +user environment builder has no way to way to resolve such conflicts, +so it just gives up. + +Solution: remove one of the offending packages from the user +environment (if already installed) using nix-env +-u, or specify exactly which version should be installed +(e.g., nix-env -i docbook-xml-4.2). + +Alternatively, you can modify the user environment builder +script (in +prefix/share/nix/corepkgs/buildenv/builder.pl) +to implement some conflict resolution policy. E.g., the script could +be modified to rename conflicting file names, or to pick one over the +other. + + + - - - - -- cgit v1.2.3