aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2013-11-19 11:18:13 +0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2013-11-19 14:09:14 +0100
commitaf94a70ba6bb9ba2eac328133b2a97d405867f68 (patch)
treec8df44974946afe0472f0657505543c36a3736f7
parent245e26408fc0954974a1b30991af6d97c1d1e2ce (diff)
Drop support for user environment manifests in ATerm format
-rw-r--r--src/nix-env/user-env.cc113
1 files changed, 1 insertions, 112 deletions
diff --git a/src/nix-env/user-env.cc b/src/nix-env/user-env.cc
index 727c4bd44..64ddaadb9 100644
--- a/src/nix-env/user-env.cc
+++ b/src/nix-env/user-env.cc
@@ -11,24 +11,16 @@
namespace nix {
-static void readLegacyManifest(const Path & path, DrvInfos & elems);
-
-
DrvInfos queryInstalled(EvalState & state, const Path & userEnv)
{
DrvInfos elems;
-
Path manifestFile = userEnv + "/manifest.nix";
- Path oldManifestFile = userEnv + "/manifest";
-
if (pathExists(manifestFile)) {
Value v;
state.evalFile(manifestFile, v);
Bindings bindings;
getDerivations(state, v, "", bindings, elems, false);
- } else if (pathExists(oldManifestFile))
- readLegacyManifest(oldManifestFile, elems);
-
+ }
return elems;
}
@@ -167,107 +159,4 @@ bool createUserEnv(EvalState & state, DrvInfos & elems,
}
-/* Code for parsing manifests in the old textual ATerm format. */
-
-static string parseStr(std::istream & str)
-{
- expect(str, "Str(");
- string s = parseString(str);
- expect(str, ",[])");
- return s;
-}
-
-
-static string parseWord(std::istream & str)
-{
- string res;
- while (isalpha(str.peek()))
- res += str.get();
- return res;
-}
-
-
-static MetaInfo parseMeta(std::istream & str)
-{
- MetaInfo meta;
-
- expect(str, "Attrs([");
- while (!endOfList(str)) {
- expect(str, "Bind(");
-
- MetaValue value;
-
- string name = parseString(str);
- expect(str, ",");
-
- string type = parseWord(str);
-
- if (type == "Str") {
- expect(str, "(");
- value.type = MetaValue::tpString;
- value.stringValue = parseString(str);
- expect(str, ",[])");
- }
-
- else if (type == "List") {
- expect(str, "([");
- value.type = MetaValue::tpStrings;
- while (!endOfList(str))
- value.stringValues.push_back(parseStr(str));
- expect(str, ")");
- }
-
- else throw Error(format("unexpected token `%1%'") % type);
-
- expect(str, ",NoPos)");
- meta[name] = value;
- }
-
- expect(str, ")");
-
- return meta;
-}
-
-
-static void readLegacyManifest(const Path & path, DrvInfos & elems)
-{
- string manifest = readFile(path);
- std::istringstream str(manifest);
- expect(str, "List([");
-
- unsigned int n = 0;
-
- while (!endOfList(str)) {
- DrvInfo elem;
- expect(str, "Attrs([");
-
- while (!endOfList(str)) {
- expect(str, "Bind(");
- string name = parseString(str);
- expect(str, ",");
-
- if (name == "meta") elem.setMetaInfo(parseMeta(str));
- else {
- string value = parseStr(str);
- if (name == "name") elem.name = value;
- else if (name == "outPath") elem.setOutPath(value);
- else if (name == "drvPath") elem.setDrvPath(value);
- else if (name == "system") elem.system = value;
- }
-
- expect(str, ",NoPos)");
- }
-
- expect(str, ")");
-
- if (elem.name != "") {
- elem.attrPath = int2String(n++);
- elems.push_back(elem);
- }
- }
-
- expect(str, ")");
-}
-
-
}