Hello, Adam Pribyl <pri...@lowlevel.cz> skribis:
> On Thu, 12 Jun 2014, Ludovic Courtès wrote: > [...] >>> however I am not able to finish any "guix package -i" as it always >>> reports error in compilation, either profile.drv or perl etc. >> >> What error does it report? > > This is what is at the end: > > makefile:550: recipe for target 'install.perl' failed > make[1]: *** [install.perl] Error 28 > make[1]: Leaving directory > /tmp/nix-build-perl-5.16.1.drv-0/perl-5.16.1' > makefile:535: recipe for target 'install' failed > make: *** [install] Error 2 > phase `install' failed after 90 seconds > builder for > /gnu/store/pg7qk32dirrqwagwd12n533v483hyipx-perl-5.16.1.drv' failed > with exit code 1 All this means that it failed to build Perl. Since it happens during the install phase, it may be a no-space-left condition; could you check if this is the case? Could you check the tail of the log file returned by guix build --log-file /gnu/store/pg7qk32dirrqwagwd12n533v483hyipx-perl-5.16.1.drv ? It should contain an error message that’s missing above. > I am still somehow unsure, how to correctly work with guix - e.g. what > to do if some build fails? As an “end user”, if a build fails, it amounts to being unable to install the package or whatever depends on it. As someone who wants to get involved in Guix (and I think this is the main category at this development stage ;-)), then you need to investigate. But really, more than 90% of the packages present in the distro at the time 0.6 was released were known to build fine. > Are the already build packages still there? The “substitutes” may have disappeared from hydra.gnu.org, meaning that some of the packages as they were defined in 0.6 may have to be built locally on your machine. But again, that’s transparent for you, it just takes more time. > How do I start clean build of whole dependency chain? The principle of “functional packaging” is that it always “starts clean”. It’s as if you were rebuilding everything from scratch in a pristine environment. [...] >>> guix refresh just prints various packages that "would be upgraded" but >>> does nothing. >> >> That’s intended: >> >> http://www.gnu.org/software/guix/manual/guix.html#Invoking-guix-refresh >> >> As noted there, the primary audience of the guix refresh command is >> developers of the GNU software distribution. > > OK, how do I then upgrade all packages, e.g. to get to "master" status? Using “guix pull”, as you found out. > guix package -u > says "nothing to be done". Yes, because it compares what’s installed to the list of packages known to it: Note that this upgrades package to the latest version of packages found in the distribution currently installed. To update your distribution, you should regularly run guix pull (see Invoking guix pull). http://www.gnu.org/software/guix/manual/guix.html#Invoking-guix-package > guix pull > prints few messages and then just sits there, doing nothing. > > root@gnu# guix pull > accepted connection from pid 25883, uid 0 > starting download of `guix-file.FvG4HK' from > http://git.savannah.gnu.org/cgit/g > uix.git/snapshot/guix-master.tar.gz'... > http://git.savannah.gnu.org/.../guix-master.tar.gz > 6328.1 KiB transferred > The following derivations will be built: > /gnu/store/dx6awxpri6s5n1hvz8ah1k7lga16d6lm-guix-latest.drv > > /gnu/store/hak6ligbsmqrqns1g2gagg0pmklhva73-pkg-config-0.27.1.drv > > /gnu/store/shmbq7s0zmqc5xd0ab2cn6b2zsdz89ra-binutils-cross-boot0-2.24.drv > /gnu/store/pg7qk32dirrqwagwd12n533v483hyipx-perl-5.16.1.drv > > /gnu/store/5yz9vz3h79jqlkqiik5nwgxj894f9dmb-linux-libre-headers-3.3.8.drv > > /gnu/store/64lzm3zc8ndxss5wn0jgbxdpwjaam0zm-findutils-4.4.2.drv > > /gnu/store/6x2zwiamdwzh2a3iq0a3zm1k1r05p900-diffutils-3.3.drv > /gnu/store/7gz7rqrg9v6zr8vsxpwd299zws8siqc8-make-4.0.drv > /gnu/store/gif1916apz6v2w9yl7p79pas3m3rc5pp-tar-1.27.1.drv > /gnu/store/kfd74bkyc6zihysa0dh5kq7j2rwblfcx-patch-2.7.1.drv > /gnu/store/q55k342x0rm16cidc4521ffckpab0dzf-sed-4.2.2.drv > /gnu/store/qrxglkjsb61pvwjnzinmi7smyacjnc0w-gzip-1.6.drv > /gnu/store/1ynv017dz1dxp3y4a7qbjsq80wh503kp-tar-1.27.1.drv At this point it is probably building all of the above dependencies, but I understand this can be confusing because there are no messages being printed. >>> I am confused with dmd too at I do not know how to list running >>> services, therefore I can not enable or disable anything as I do not >>> know what is available. >> >> As root, try running ‘deco status dmd’; more info at: >> >> http://www.gnu.org/software/dmd/manual/dmd.html#Invoking-deco > > > It may not look that way, but I'm trying to read the doc, but this was > really a not obvious to get the list of services by quering dmd > status, while one has to know it has to query dmd. I was looking for > something like "deeco list-services" Yeah. Actually your feedback is very helpful in improving the doc. I’ve just done that for this particular example: http://git.savannah.gnu.org/cgit/dmd.git/commit/?id=3e516eaea4cb6833c5b9292dce80687541b1aedd But I’m sure you’ll find other things that are under-documented or undocumented. Don’t hesitate to report them. Thanks, Ludo’.