Hi Ludo',

Yes, your explanation about the quoting makes sense. Also, it looks like you were right: the PYTHONPATH leaked from my current environment. Thank you for your help.

Would you like me to adjust the length of the longest line as mentioned by Ben, or is my patch good to go as-is?

Thank you,
Chris

On Thu, Nov 26, 2015 at 5:44 AM Ludovic Courtès <ludo@gnu.org> wrote:
Hi!

Sorry for the delay.

Chris Marusich <cmmarusich@gmail.com> skribis:

> However, there is one curiosity. I've noticed that when I run
> "./pre-inst-env guix environment python2-contextlib2", the PYTHONPATH
> is configured to allow importation of contextlib2 from the
> $profile/lib/python3.4/site-packages directory tree, rather than
> $profile/lib/python2.7/site-packages. When I run python in this
> environment, I get a Python 2.7 interpreter.

The interpreter you get here is probably one that was already in PATH,
because the command above lacks --pure.

If you want to be sure, use:

  ./pre-inst-env guix environment --pure \
        python2-contextlib python-2 -- python

(Even better: --container instead of --pure.)

Can you confirm?

> I'm also curious: why does the "(#:phases" part need to be
> quasi-quoted with the backtick symbol "`"?

The #:phases part specified build code (info "(guix) G-Expressions").
That code is quoted because we don’t want to evaluate it; we merely want
to pass the code itself for future execution in the build environment.

Does that make sense?

Thanks,
Ludo’.