Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Put file src attribute in quotes to allow more paths #402

merged 1 commit into from Jan 29, 2019


None yet
2 participants
Copy link

commented Jan 29, 2019

Nix paths allow only limited set of characters thus for example paths with "@" of paths with non-latin characters give derivation with Nix fails to parse. Quoting resolves this problem.

@peti peti merged commit 45bf247 into NixOS:master Jan 29, 2019

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed

This comment has been minimized.

Copy link
Contributor Author

commented Jan 30, 2019

@peti I'm quite sorry but this looks to be an incorrect PR:

  • putting valid path (according to Nix) into double quotes results in Nix interpreting src as an URL for an archive which ends in something like
    unpacking sources
    unpacking source archive ./ab
    do not know how to unpack source archive ./ab
  • using tricks like ./. + "/path" when "path" includes invalid (according to Nix) characters results in an error like
    invalid character 'Ð' in name 'аб'

Do you need a PR to revert this one? And sorry once again for not testing it thoroughly.


This comment has been minimized.

Copy link

commented Jan 30, 2019

I'll revert the patch in #404.


This comment has been minimized.

Copy link
Contributor Author

commented Jan 30, 2019

Great, thank you.
BTW do you know if there are any documented constraints that Nix sets on paths it could use?
Comments around the line triggering error in make-derivation.nix have link to NixOS/nix#1771 but I couldn't find anything explicit about my question in that issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.