[Nix-dev] Regex in manifest breaks nix-env
Eelco Dolstra
eelco.dolstra at logicblox.com
Tue Mar 17 18:26:26 CET 2015
Hi,
On 17/03/15 18:11, Jeffrey David Johnson wrote:
> Hi all! My nix-env commands recently stopped working. For example if I try
> to `nix-env -q`, it says:
>
> error: syntax error, unexpected $undefined, expecting '"', at "/nix/store/ar83fv0d68frfyifz2wl1dm97m6jvxnn-env-manifest.nix":1:153
>
> The contents of `/nix/store/ar83fv0d68frfyifz2wl1dm97m6jvxnn-env-manifest.nix` are:
>
> [ { meta = { description = "RDF database"; downloadPage = "http://archive.apache.org/dis t/jena/binaries/"; downloadURLRegex = "apache-jena-.*[.]tar[.]gz$"; homepage = "http://j ena.apache.org"; license = { fullName = "Apache License 2.0"; shortName = "asl20"; spdxI d = "Apache-2.0"; url = "http://spdx.org/licenses/Apache-2.0"; }; maintainers = [ "Micha el Raskin <7c6f434c at mail.ru>" ]; platforms = [ "i686-linux" "x86_64-linux" "armv5tel-lin ux" "armv6l-linux" "armv7l-linux" "mips64el-linux" ]; position = "/nix/store/75d9rrzyal2 7mn3fdwc060yrbhnyjihi-nixos-14.12.374.61adf9e/nixos/nixpkgs/pkgs/servers/nosql/apache-je na/binary.nix:29"; updateWalker = true; version = "2.12.1"; }; name = "apache-jena-2.12. 1"; out = { outPath = "/nix/store/3pl4jn0l4wx434g8vgv1assymvg7card-apache-jena-2.12.1"; }; outPath = "/nix/store/3pl4jn0l4wx434g8vgv1assymvg7card-apache-jena-2.12.1"; outputs = [ "out" ]; system = "x86_64-linux"; type = "derivation"; } ]
>
> So the offending part seems to be `downloadURLRegex = "apache-jena-.*[.]tar[.]gz$";`.
> Is the package broken for including a regex?
Looks like a bug in the manifest generation, since the '$' should be escaped.
> And how do I remove/fix it without
> parsing that?
Please try "nix-env --rollback" to go back to the most recent non-corrupt version.
--
Eelco Dolstra | LogicBlox, Inc. | http://nixos.org/~eelco/
More information about the nix-dev
mailing list