From 46b631b6c4a743b88bf2d6bb779c0f677e9b8318 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 17 Oct 2006 10:15:42 +0000 Subject: * Don't generate an empty drvPath attribute in the manifest. --- src/nix-env/main.cc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/nix-env') diff --git a/src/nix-env/main.cc b/src/nix-env/main.cc index b55fc2246..f6b3cbdfb 100644 --- a/src/nix-env/main.cc +++ b/src/nix-env/main.cc @@ -165,19 +165,19 @@ static void createUserEnv(EvalState & state, const DrvInfos & elems, i != elems.end(); ++i) { Path drvPath = keepDerivations ? i->queryDrvPath(state) : ""; - ATerm t = makeAttrs(ATmakeList5( + ATermList as = ATmakeList4( makeBind(toATerm("type"), makeStr("derivation"), makeNoPos()), makeBind(toATerm("name"), makeStr(i->name), makeNoPos()), makeBind(toATerm("system"), makeStr(i->system), makeNoPos()), - makeBind(toATerm("drvPath"), - makeStr(drvPath), makeNoPos()), makeBind(toATerm("outPath"), - makeStr(i->queryOutPath(state)), makeNoPos()) - )); - manifest = ATinsert(manifest, t); + makeStr(i->queryOutPath(state)), makeNoPos())); + if (drvPath != "") as = ATinsert(as, + makeBind(toATerm("drvPath"), + makeStr(drvPath), makeNoPos())); + manifest = ATinsert(manifest, makeAttrs(as)); inputs = ATinsert(inputs, makeStr(i->queryOutPath(state))); /* This is only necessary when installing store paths, e.g., -- cgit v1.2.3