[Nix-dev] Nix(OS) on upcoming sprints/events

Florian Friesdorf flo at chaoflow.net
Mon Feb 6 03:26:46 CET 2012


On Mon, 06 Feb 2012 01:27:16 +0100, Marc Weber <marco-oweber at gmx.de> wrote:
> Excerpts from Florian Friesdorf's message of Sun Feb 05 22:31:21 +0100 2012:
> > It would be great to have your know-how about that! Would you be
> > interested to help with another approach and join us for at least a
> > couple of days?
> I don't do python - and I don't think I'm coding much python soon.
> Also I'm not sure its going to pay off because it looks like the
> existing installation tools work pretty well - don't they?

We have only around 100 python packages in nixpkgs, in case they have
dependencies they are impure and they were/are created manually. You
created an experimental python overlay

http://nixos.org/wiki/Nix(OS)_related_repositories_and_work

consisting of three extra repositories:

https://gitorious.org/nixpkgs-python-overlay/

So far your approach did not find acceptance to be used for nixpkgs
trunk and I don't see how it is possible to easily modify a nix
expression for a specific package.

I'd like to be able to tell my tools that I want python application X, Y
and Z packaged for nixpkgs and it will determine it's dependencies and
create the derivations for them, which I then can check into mainline
nixpkgs.

However, maybe I am completely off and your approach just needs more
documentation to find acceptance.

> > > Thus it looks to me that you will have to download the packages to
> > > query the install scripts for dependency information.
> > 
> > http://wiki.python.org/moin/PyPiXmlRpc claims that this is available via
> > pypi, but I have not tried to query that info yet.
> I tried it with one or two packages finding that still dependencies were
> missing. 

That's interesting information - can you point me to them. I would not
want to waste time on an approach (querying pypi) if it's doomed anyway,
but instead would download to figure out the dependencies.

> > However, I see a whitelist of packages we want to package, we download
> > them, checksum, generate EGG_INFO and create an expression for each
> > package version we want to include.
> > What is needed for maintenance with your approach?
> In theory almost none (but passing C dependencies).
> A dump of PyPi is done by cron job. And dependencies should be found if
> PyPi lists them.
> If you have complicated dependency information such as
> A depends on B (> 1.0)
> C depends on B-1.0
> 
> and T(arget) depends on A and C you may have to force B having version
> 2.0

That would be the same with what I have in mind.

> I can try to resurrect the overlay so that we can compare the effort it
> takes to make packages work. So if you tell me which packages you're
> interested in ...

Plone and all it's dependencies. But for Plone itself we most likely
need zc.buildout in builder.sh instead of easy_install/pip. Another one
would be mailman.

-- 
Florian Friesdorf <flo at chaoflow.net>
  GPG FPR: 7A13 5EEE 1421 9FC2 108D  BAAF 38F8 99A3 0C45 F083
Jabber/XMPP: flo at chaoflow.net
IRC: chaoflow on freenode,ircnet,blafasel,OFTC
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
Url : http://lists.science.uu.nl/pipermail/nix-dev/attachments/20120206/0138d0eb/attachment.bin 


More information about the nix-dev mailing list