[Nix-dev] nix-copy-closure / impurity?

Mathijs Kwik mathijs at bluescreen303.nl
Sun Apr 1 12:13:32 CEST 2012


Hi all,

Since my systems share most packages/settings, I wanted to just build
on 1 machine, and copy the results to the others.
This has worked in the past, but now I'm getting this error:

# nix-copy-closure --to bluescreen.local
/nix/store/rcasd3g773blljmr8iqacvmrvz5by9lq-system
copying 263 missing paths to ‘bluescreen.local’...
importing path `/nix/store/23p410331w7hqjmx9qr5qysyl5z4qx9x-libxcb-1.7'
importing path `/nix/store/475j295h0rv0hrhdxkayhzpyyq6h2gah-libX11-1.4.1'
importing path `/nix/store/w38zdg3h4ydh3c59nkcrnv5bzkbvh9hk-libXext-1.2.0'
importing path `/nix/store/sqcwfm2xxyjl2kil8pjcbqb78vvnk5jj-libXinerama-1.1.1'
importing path `/nix/store/yhzx4isbjg2s20rb6lb6b2cl1b3nrghm-imlib2-1.4.5'
importing path `/nix/store/vb62pqv56ms2gyjb2qlpbjyvb6sq4mhk-giblib-1.2.4'
importing path `/nix/store/02xkrvfsa0hvi36la606z77bhb75mqr5-feh-2.4'
importing path `/nix/store/wcmcvl6kzzw49rkjy3vvrffzjjrxd71x-glib-2.30.3'
importing path `/nix/store/3wncn9gwn4l7gkqchfirf8ilymxx43y8-polkit-0.104'
importing path `/nix/store/qp1mzjhw6zyk1vxjirfig149v6af6lin-udev-173'
importing path `/nix/store/sicp7avk5fryififyla67hkcd5f21mw9-lvm2-2.02.95'
importing path `/nix/store/4v62lv919s5rpsx7628pckhb8phz3grj-parted-3.0'
importing path `/nix/store/v0q9xkwisgpajhpacbq2nwskx4ia7k2r-dbus-glib-0.98'
importing path `/nix/store/xj1vhzyfn73lbg8vlydqvl93sfxan8nj-libatasmart-0.17'
importing path `/nix/store/627z7qzd2wh9i8djy8nwpwlkarvaf6h8-udisks-1.0.4'
hash of path `/nix/store/xs6j8bqq3886aibwgyh5na7kw65s814x-linux-3.3'
has changed from
`1b9c6db88dd687f0a000eae43a90a9c7bf23347c9d779e0f771c21c413262c6c' to
`31a655197a3b4c39a6c9eb661b11d79684aa6beb8b502a0b7680409e9a836b78'! at
/nix/store/sqxyvzcqpnkhiy5iff8k3fpj7yjg9446-nix-1.0pre2632_b8fb0ce/lib/perl5/site_perl/5.14.2/x86_64-linux-thread-multi/Nix/CopyClosure.pm
line 38.

The remote system seems to have linux-3.3 already (built it by itself
last time), and it seems it is somewhat different from the one I'm
pushing.
I was under the impression that the hash in the store path already
contained all info about dependencies, so if the hashes match, they
should be the same thing, right?

As this is probably just a small issue, I would like to just instruct
nix-copy-closure to just force my version.
Is this possible somehow?
Can I force-remove the remote one using nix-store there?

Thanks,
Mathijs


More information about the nix-dev mailing list