help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: *** TRYING TO INSTALL GUIXSD v0.15.0 FOR DAYS ***


From: Mark H Weaver
Subject: Re: *** TRYING TO INSTALL GUIXSD v0.15.0 FOR DAYS ***
Date: Thu, 01 Nov 2018 03:35:35 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Brian Woodcox <address@hidden> writes:
> Just to avoid me having to search, what command would I use to get the
> tail of the build log file.

If you know the file name in /gnu/store of one of the build's outputs,
you can pass that file name, e.g.:

  guix build --log-file /gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3

If you know the file name of the derivation (/gnu/store/….drv) of the
build you're looking for, then you can use "guix build --log-file
/gnu/store/….drv".

If you built the package locally, another useful trick is to look for
the newest files in /var/log/guix/drvs/*/*, which you can list by
running "ls -ltr */* | tail" or "ls -ltr */*-guile-* | tail" from
/var/log/guix/drvs.

In some cases, it is sufficient to pass the package name with optional
version, e.g. "guix build --log-file address@hidden", but not always.
Roughly, that command finds the log for the derivation that would have
been built right now if you ran the same command without "--log-file".
Note that this won't be the build you're looking for if you've run "guix
pull" since the relevant build was fresh, if either the package or one
of its transitive dependencies have changed.  Passing a simple package
name also won't work if the derivation you're looking for is a special
variant package which is hidden or not bound to a public variable.

For example, 'guile-final' in gnu/packages/commencement.scm is one such
variant.  It is one of the products of the early bootstrap, and the
Guile variant used to build most of the other packages in Guix.  This is
not the same guile that you get by running "guix build guile".

'guile-final' is a "hidden" package, but it can be specified using the
more general "--expression=<scheme-expression>" syntax:

  guix build --log-file --expression="(@@ (gnu packages commencement) \
                                          guile-final)"

Also note that there is a very simple mapping between build log file
names and derivation file names, perhaps best shown by example:

__/var/log/guix/drvs/wc/47q5cw4b23gy9hzzhxp09b804nippx-guile-2.2.3.drv.bz2
___________/gnu/store/wc47q5cw4b23gy9hzzhxp09b804nippx-guile-2.2.3.drv

       Mark



reply via email to

[Prev in Thread] Current Thread [Next in Thread]