Re: [Nix-dev] cannot build nova

2013-08-17 Thread Vladimír Čunát

On 08/17/2013 01:50 AM, Tim Barbour wrote:

Thank you. I tried prefetching it, but it makes no difference. The result of
prefetching goes in different store location to the one it is looking for.
Perhaps the package has the wrong hash for python-novaclient-2012.1.tar.gz ?


It does look like the hash is different. That strange, but upstream 
sometimes change tarballs without changing the version, unfortunately 
(it's really ugly and relatively insecure).



What is the process for updating the package ?


Often it's enough to change just the version and hash in the expression. 
Here it seems that dependencies have changed as well, it reports missing 
stuff if I do


-  name = novaclient-2012.1;
+  name = novaclient-2.14.1;
   namePrefix = ;

   src = fetchurl {
 url = 
http://pypi.python.org/packages/source/p/python-novaclient/python-${name}.tar.gz;;

-md5 = 8f53a308e08b2af4645281917be77ffc;
+sha256 = 0cicdr3qlhz2wnhi89kmp709if363yz4bdvsjsr9507c7mw29v0v;
   };

I know very little about python and nothing about nova at all (or how we 
package pypi stuff with nix), so I would rather leave this package to 
others (than me).



Vlada




smime.p7s
Description: S/MIME Cryptographic Signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] CTest post-test command fails in liblapack build

2013-08-17 Thread Peter Simons
Hey,

could some CMake guru please help me figure out why liblapack's test
phase fails [1]? The build and test phase seem to work fine at first,
but then it run into the following error:

 | [...]
 | 100% tests passed, 0 tests failed out of 86
 |
 | Total Test time (real) =  77.31 sec
 | No such file or directory
 | Problem running command: ./lapack_testing.py -s -d TESTING
 | Problem executing post-test command(s).
 | Errors while running CTest

This happens only on the stdenv-updates branch. Does anyone have a
suggestion how to fix that?

take care,
Peter


[1] http://hydra.cryp.to/build/8006/nixlog/13

___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Samba, nixpkgs and GNU/Hurd

2013-08-17 Thread Bjørn Forsman
Hi Ludovic, all,

I want to update samba from 3.6.8 to 3.6.18 (latest 3.x version),
but then the GNU/Hurd patch that you have added failed. Is it OK if I
drop the patch? Or do you want to bump samba yourself and re-create
the patch?
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] msmtp and certificates

2013-08-17 Thread Bjørn Forsman
On 22 July 2013 21:43, Bjørn Forsman bjorn.fors...@gmail.com wrote:
 On 22 July 2013 20:37, Eelco Dolstra eelco.dols...@logicblox.com wrote:
 Hi,

 On 20/07/13 20:57, Bjørn Forsman wrote:

 Would it be an idea to rename ca-bundle.crt to ca-certificates.crt?
 One less (needless?) distro difference?

 I don't think the certificate locations are very standardized across
 distributions.  AFAIK /etc/ssl/certs/ca-bundle.crt is what Fedora also 
 uses...

 You are correct (just checked Fedora 19). Too bad. Thanks.

I've sent a pull request that adds /etc/ssl/certs/ca-certificates.crt
symlink to be compatible with Ubuntu:

https://github.com/NixOS/nixos/pull/224
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] how to install nilfs-utils ?

2013-08-17 Thread Tim Barbour
I am trying to install nilfs-utils.

According to the wiki ( http://nixos.org/wiki/Install/remove_software ), I can
install a package by 'nix-env -i package for one user, or I can install it
for all users by adding it to environment.systemPackages . The second way does
not work for me for nilfs-utils. If I put

  environment.systemPackages = with pkgs; [
 wget httpfs2
 nilfs-utils
  ];

in /etc/nixos/configuration.nix, then nix complains:

$ nixos-rebuild build
building Nix...
building the system configuration...
error: undefined variable `nilfs-utils'

but other packages like wget or httpfs2 are fine.
Also 'nix-env -i nilfs-utils' works fine.

What is wrong with putting nilfs-utils in environment.systemPackages ?
Does it have something to do with the hyphen in the name, or is nilfs-utils a
special kind of package ? In the latter case, how can one tell ?
How can it be installed for all users ?

Tim
---
GPG public key available at: 
 http://phasechangeit.com/~trb/gpg-key  or 
 http://subkeys.pgp.net:11371
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] how to install nilfs-utils ?

2013-08-17 Thread Michael Raskin
I am trying to install nilfs-utils.

According to the wiki ( http://nixos.org/wiki/Install/remove_software ), I can
install a package by 'nix-env -i package for one user, or I can install it
for all users by adding it to environment.systemPackages . The second way does
not work for me for nilfs-utils. If I put

  environment.systemPackages = with pkgs; [
 wget httpfs2
 nilfs-utils
  ];

in /etc/nixos/configuration.nix, then nix complains:

$ nixos-rebuild build
building Nix...
building the system configuration...
error: undefined variable `nilfs-utils'

but other packages like wget or httpfs2 are fine.
Also 'nix-env -i nilfs-utils' works fine.

What is wrong with putting nilfs-utils in environment.systemPackages ?
Does it have something to do with the hyphen in the name, or is nilfs-utils a
special kind of package ? In the latter case, how can one tell ?
How can it be installed for all users ?

«nix-env -i» deals with evluated package names
«nix-env -iA» and «systemPackages» deal with attribute names (most are
specified in all-packages.nix).

The difference is more or less the difference between a variable name 
and its value.

nilfs-utils is an old package (added before Nix allowed dashes inside 
variable names) and it haven't been updated for a while. So it is listed
in all-packages.nix using attribute name nifs_utils.

The simplest way to find out is currently looking at al-packages.nix
in pkgs/top-level directory at nixpkgs repository.



___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] how to install nilfs-utils ?

2013-08-17 Thread Bjørn Forsman
On 17 August 2013 13:13, Tim Barbour t...@categorical.net wrote:
 I am trying to install nilfs-utils.

 According to the wiki ( http://nixos.org/wiki/Install/remove_software ), I can
 install a package by 'nix-env -i package for one user, or I can install it
 for all users by adding it to environment.systemPackages . The second way does
 not work for me for nilfs-utils. If I put

   environment.systemPackages = with pkgs; [
  wget httpfs2
  nilfs-utils
   ];

 in /etc/nixos/configuration.nix, then nix complains:

 $ nixos-rebuild build
 building Nix...
 building the system configuration...
 error: undefined variable `nilfs-utils'

 but other packages like wget or httpfs2 are fine.
 Also 'nix-env -i nilfs-utils' works fine.

 What is wrong with putting nilfs-utils in environment.systemPackages ?
 Does it have something to do with the hyphen in the name, or is nilfs-utils a
 special kind of package ? In the latter case, how can one tell ?
 How can it be installed for all users ?

nix-env -i installs by package name (unless you use -A). In
systemPackages you must provide an attribute name, not package name.
The following command shows attribute name followed by package name:

$ nix-env -qaP \* | grep nilfs
nixos.pkgs.nilfs_utils
  nilfs-utils-2.0.19

Basically, you want nilfs_utils in systemPackages,

Best regards,
Bjørn Forsman
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] disk setup for nixos installation

2013-08-17 Thread Tim Barbour
I would like to be able to boot from nixos installation media, then do
automated partitioning, LVM setup and filesystem creation, then let nixops do
the rest. What is the best way to automate partitioning, LVM setup and
filesystem creation ? I wrote a shell script to do this (just for one disk, so
far) using parted etc., but it looks ugly, and I wonder if it would be better
done using nix.

Does nix / nixos provide any existing mechanisms for doing this ?

I am an experienced functional programmer (Haskell, not nix), but I don't
understand how to do IO in nix. Perhaps I should be modelling the disk setup
as the building of some derivations, but such derivations would not produce a
result in the nix store.  If I made them produce a result in the store, then
the disk setup would be a side-effect, and not referentially transparent. I
get the feeling that this is outside the scope of nix.

Tim
---
GPG public key available at: 
 http://phasechangeit.com/~trb/gpg-key  or 
 http://subkeys.pgp.net:11371
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Samba, nixpkgs and GNU/Hurd

2013-08-17 Thread Bjørn Forsman
On 17 August 2013 15:07, Ludovic Courtès l...@gnu.org wrote:
 Hi!

 Sorry for the late reply.

It's ok :-)

 Bjørn Forsman bjorn.fors...@gmail.com skribis:

 I want to update samba from 3.6.8 to 3.6.18 (latest 3.x version),
 but then the GNU/Hurd patch that you have added failed. Is it OK if I
 drop the patch? Or do you want to bump samba yourself and re-create
 the patch?

 Could you try to port the patch, if it’s not too hard?

I tried to update it, but it changes one of several very similar
looking blocks of code. Without a way to verify my change I don't feel
like committing it.

 If it’s too difficult, just comment it out and leave it in the repo for
 future reference.

I'd prefer to remove the patch instead of leaving it dangling in
nixpkgs. You can always bring it back with git. Or with the mailing
list archive (see below). Ok?

`libnss_wins' uses pthreads but is built without `-pthread'.  This is
not a problem when building natively on GNU/Linux, but causes troubles
when cross-building for GNU/Hurd (undefined references to libpthread
functions.)

--- samba-3.6.1/source3/Makefile.in 2012-02-22 15:25:15.0 +0100
+++ samba-3.6.1/source3/Makefile.in 2012-02-22 15:25:47.0 +0100
@@ -2760,6 +2760,7 @@ bin/vlp@EXEEXT@: $(BINARY_PREREQS) $(VLP
  @echo Linking $@
  @$(SHLD) $(LDSHFLAGS) -o $@ $(WINBIND_WINS_NSS_OBJ) \
  $(LDAP_LIBS) $(KRB5LIBS) $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
$(ZLIB_LIBS) \
+ $(PTHREAD_LDFLAGS) \
  @SONAMEFLAG@`basename $@`@NSSSONAMEVERSIONSUFFIX@

 bin/winbind_krb5_locator.@SHLIBEXT@: $(BINARY_PREREQS)
$(WINBIND_KRB5_LOCATOR_OBJ) $(LIBWBCLIENT)

Best regards,
Bjørn Forsman
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] disk setup for nixos installation

2013-08-17 Thread Tim Barbour
On further reflection, I think I see how it almost might work using
derivations.  Assume it is possible to have a derivation that is only
considered to be built (hand-waving part here ...) if the required filesystem
exists. Then that derivation depends on another that is only considered to be
built if the necessary LVM volume exists, etc. . I still cannot see how to
make the hand-waving part referentially transparent.

I think nixos must have a solution to this problem, otherwise how can it
install GRUB ?

Tim
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] disk setup for nixos installation

2013-08-17 Thread Domen Kožar
I used something like this to generate an ISO image that would
self-install: http://paste.ofcode.org/K9Haex6MiBxygqJDFXkSL7




On Sat, Aug 17, 2013 at 3:22 PM, Tim Barbour t...@categorical.net wrote:

 I would like to be able to boot from nixos installation media, then do
 automated partitioning, LVM setup and filesystem creation, then let nixops
 do
 the rest. What is the best way to automate partitioning, LVM setup and
 filesystem creation ? I wrote a shell script to do this (just for one
 disk, so
 far) using parted etc., but it looks ugly, and I wonder if it would be
 better
 done using nix.

 Does nix / nixos provide any existing mechanisms for doing this ?

 I am an experienced functional programmer (Haskell, not nix), but I don't
 understand how to do IO in nix. Perhaps I should be modelling the disk
 setup
 as the building of some derivations, but such derivations would not
 produce a
 result in the nix store.  If I made them produce a result in the store,
 then
 the disk setup would be a side-effect, and not referentially transparent. I
 get the feeling that this is outside the scope of nix.

 Tim
 ---
 GPG public key available at:
  http://phasechangeit.com/~trb/gpg-key  or
  http://subkeys.pgp.net:11371
 ___
 nix-dev mailing list
 nix-dev@lists.science.uu.nl
 http://lists.science.uu.nl/mailman/listinfo/nix-dev

___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] disk setup for nixos installation

2013-08-17 Thread Michael Raskin
On further reflection, I think I see how it almost might work using
derivations.  Assume it is possible to have a derivation that is only
considered to be built (hand-waving part here ...) if the required filesystem
exists. Then that derivation depends on another that is only considered to be
built if the necessary LVM volume exists, etc. . I still cannot see how to
make the hand-waving part referentially transparent.

I think nixos must have a solution to this problem, otherwise how can it
install GRUB ?

NixOS way is to generate the needed scripts (preferably, the scripts 
can be safely run the second time after success) and run them.



___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] disk setup for nixos installation

2013-08-17 Thread Marc Weber
Well - the nixos isos ship with nixos-install.
It should be easy to add a script which runs automatically on startup
(creating llvm devices and so on)
and runs the script afterwards.

Marc Weber
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] where did hydra's tested view go?

2013-08-17 Thread Mathijs Kwik
It was quite useful to find out if the channel has issues.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Software development workflow -- the nix way?

2013-08-17 Thread phreedom
В письме от Четверг 15 августа 2013 18:08:52 пользователь Kyle Heath написал:
 Hi Nix Folks,
 
 *short version:*
 *
 *
 I would like to enable the following development workflow...
 
 1. I write packages of code containing java, c++, python binary and library
 targets (and probably host them on github)
 2. I include with each package a build script that will provide all it's
 dependencies via nix packages - (either from the official nix repository or
 from my own public repository of nix packages)

An example of package shipping its own nix expression: 
https://github.com/phreedom/nixpkgs-monitor

You can also ship a development environment this way.

 3. I can release source and binary versions of my packages by tagging them
 on github and publishing them to my own nix channel.  After publishing
 them, anyone can depend on them from other packages based on the same build
 script system.

Never dealt with channels :(
But you can make the binaries of your package and its dev environment 
available.

Also, while I have never tried this, you can probably write a derivation that 
fetches the required .nix file from your repository and then imports it:

  pkgnix = fetchurl { url = http://something; sha256 = ...; }
  pkg = import pkgnix;


The problem with such an approach in general is that such a package will lose 
CI and that dependency updates become a responsibility of the package 
publisher. Developers can definitely deal with major versions of their deps, 
but how closely would developers track minor(read vulnerability and bugfix) 
updates? 

I'm not very optimistic in this regard, and suspect that  an out-of-tree 
package depending on out-of-tree package is a recipe for vulnerabilities. 

To sum it up:
1. 0install sets to make a distro-agnostic package manager
2. Enforces a specific approach to refer to dependencies(by unique ID and 
version mask)
3. primarily intended by its developers to be used without middlemen like a 
typical distro maintainers who do integration and security work.

[1] Same as Nix.

[2] Packages in NixPkgs use the same sloppy references to each other, which 
facilitates updates.

It is also possible to refer to a specific build script as a dependency instead 
of package name, thus wrestling away the control from distro maintainers. Nix 
can enforce such specific builds thanks to hashes.

In 0install a similar result can be obtained by hosting your own builds of 
dependencies and referring to their URL instead, although it might be 
inconvenient due to lack of tools since 0install devs probably didn't intend 
to encourage such an approach.

[3] A distro-like approach can be implemented in 0install as well, since 
anyone can publish their builds of packages and you can use them as 
dependencies instead of builds provided by the software publisher.

== short version

If you wrestle away anyone's influence on your dependencies by specifying 
hashes, you become responsible for maintenance of the dependencies.

If you let someone manage your dependencies, they need to know you exist and 
you need to trust them to care to not break your stuff(as in do CI), AND they 
need to be able to fix stuff on your side if their update exposes your mistakes.

Which, in case of core dependencies like glibc, gcc, Xorg and such, means that 
the maintainers need to have and CI all the available packages, thus this 
causes nixpkgs and hydra to emerge.



 Has anyone done something like this or have ideas if this could be done?
 
 *long version:*
 
 I'm a graduate student, and write lots of code that I'd love to share with
 the world.  I'm learning the hard way that publishing source is easy for
 the developer, but hard for potential users while publishing (a matrix) of
 binary versions makes it easy for potential users but really hard for the
 developer.  I started packaging my code with
 zeroinstallhttp://0install.net/, but quickly found that binary
 portability is hard to pull off and package dependency resolution based on
 ad-hoc version numbers is not good enough to reliably build software from
 source.  I read the nix papers and
 documentation and was very excited about the generality of this approach.
 I would love to figure out if nix can be part of a cross-language
 cross-platform workflow that eliminates the dependency hell problem.
 
 Cheers,
 Kyle
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev