[Nix-dev] myEnvFun for IPython with Nix on openSuse host
Andreas Herrmann
andreash87 at gmx.ch
Sun Jun 1 17:17:04 CEST 2014
Dear Luca,
Thanks for your response.
> What commit of nixpkgs are you tracking?
How do I find that out?
I installed Nix using the install script, not the from source installation.
So, I never manually checked out any package list.
I ran the following commands. They didn't really do anything. In my
interpretation that means, that my Nix installation should already be
up-to-date. Correct?
$ nix-channel --list
nixpkgs http://nixos.org/channels/nixpkgs-unstable
$ nix-channel --update
downloading Nix expressions from `
http://releases.nixos.org/nixpkgs/nixpkgs-14.10pre44162.11ac14f/nixexprs.tar.xz'.
..
% Total % Received % Xferd Average Speed Time Time Time
Current
Dload Upload Total Spent Left
Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:--
0
unpacking channels...
$ nix-env -u \*
$
Cheers.
On 1 June 2014 16:35, Luca Bruno <lethalman88 at gmail.com> wrote:
> What commit of nixpkgs are you tracking? Try upgrding your nixpkgs, that
> should have been fixed a while ago.
>
>
> On Sun, Jun 1, 2014 at 4:12 PM, Andreas Herrmann <andreash87 at gmx.ch>
> wrote:
>
>> Hi everyone,
>>
>> I am very new to Nix, so let me apologize in advance if this ends up
>> being a stupid question.
>>
>>
>> # First, some back story:
>>
>> The reason I got interested in Nix is that I am doing scientific
>> computing on a number of different machines with self-made simulation
>> software. Hence, I need to keep my development environments in sync on
>> these various machines. A tiresome task that, so far, I am performing
>> manually. I understand that Nix is promising to help in such situations.
>>
>> So, I went ahead and installed Nix in single user mode on my laptop which
>> is running on openSuse 13.1. That is, I used the install script [1], and
>> installed Nix under /nix. On the wiki I found a section [2] about managing
>> development environments, which introduces a thing called myEnvFun. It
>> worked out for a simple environment to use numpy:
>>
>> numpy = pkgs.myEnvFun {
>> name = "numpy";
>> buildInputs = with pkgs; let p27=python27Packages; in [
>> stdenv python
>> p27.readline
>> p27.numpy
>> ];
>> };
>>
>> I've installed it using `nix-env -i env-numpy`, and loaded it using `
>> load-env-numpy`, and everything seems to work fine.
>>
>> $ load-env-numpy
>> env-numpy loaded
>> $ which python
>> /nix/store/qikwsrbsyx59ygcmb36p1rgmfclgg882-python-2.7.6/bin/python
>> $ python
>> Python 2.7.6 (default, Apr 21 2014, 11:09:09)
>> [GCC 4.8.2] on linux2
>> Type "help", "copyright", "credits" or "license" for more information.
>> >>> import numpy.version
>> >>> numpy.version.version
>> '1.7.1'
>>
>> However, I would prefer to do develop using the IPython shell. So, I
>> wrote another environment that encorporates ipython:
>>
>> ipython = pkgs.myEnvFun {
>> name = "ipython";
>> buildInputs = with pkgs; let p27=python27Packages; in [
>> stdenv python
>> p27.readline
>> p27.ipython
>> p27.numpy
>> ];
>> };
>>
>> Installing it works just fine. Loading the environment on the other hand
>> doesn't.
>>
>>
>> # The Problem
>>
>> I get a huge amount errors about gdk-bug when I load the ipython
>> environment defined above:
>>
>> $ load-env-ipython
>> mkdir: cannot create directory ‘/lib/gdk-pixbuf-loaders-2.0/’:
>> Permission denied
>> # repeated 61 times
>> mkdir: cannot create directory ‘/lib/gdk-pixbuf-loaders-2.0/’:
>> Permission denied
>>
>> /nix/store/1j8nx7r6a7s76hj14b7lgqij7yddmvw2-gdk-pixbuf-2.30.6/nix-support/setup-hook:
>> line 11: /lib/gdk-pixbuf-loaders-2.0//loaders.cache: No such file or
>> directory
>> mkdir: cannot create directory ‘/lib/gdk-pixbuf-loaders-2.0/’:
>> Permission denied
>> # repeated 17 times
>> mkdir: cannot create directory ‘/lib/gdk-pixbuf-loaders-2.0/’:
>> Permission denied
>> env-ipython loaded
>>
>> Depsite the error messages, the environment seems to work.
>>
>> $ ipython
>> Python 2.7.6 (default, Apr 21 2014, 11:09:09)
>> Type "copyright", "credits" or "license" for more information.
>>
>> IPython 2.0.0 -- An enhanced Interactive Python.
>> ? -> Introduction and overview of IPython's features.
>> %quickref -> Quick reference.
>> help -> Python's own help system.
>> object? -> Details about 'object', use 'object??' for extra details.
>>
>> In [1]: import numpy
>>
>> In [2]: numpy.version.version
>>
>>
>> # My Question
>>
>> What is going on there? Is this because I'm using Nix on a host OS,
>> instead of NixOS?
>> Or, am I just missing some package in the environment? In which case,
>> shouldn't Nix take care of this, and make sure all dependencies are
>> available?
>> One instance of a kind-of missing dependency is already the readline
>> module. If I don't mention it explicitly in the environment, python is
>> going to complain about it missing.
>>
>>
>> Thanks in advance for your help. And also thanks for doing this project
>> in the first place.
>>
>> Best regards,
>>
>> Andreas
>>
>> [1]: https://nixos.org/nix/install
>> [2]:
>> https://nixos.org/wiki/Howto_develop_software_on_nixos#Obtaining_an_Environment_from_a_Custom_Definition
>>
>>
>> _______________________________________________
>> nix-dev mailing list
>> nix-dev at lists.science.uu.nl
>> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>>
>>
>
>
> --
> www.debian.org - The Universal Operating System
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.science.uu.nl/pipermail/nix-dev/attachments/20140601/7ec09bc9/attachment.html
More information about the nix-dev
mailing list