all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Leo Famulari <leo@famulari.name>
To: "Björn Höfling" <bjoern.hoefling@bjoernhoefling.de>
Cc: Guix-Help <help-guix@gnu.org>
Subject: Re: Several questions on Guix(SD)
Date: Mon, 22 Aug 2016 17:49:21 -0400	[thread overview]
Message-ID: <20160822214921.GA9557@jasmine> (raw)
In-Reply-To: <20160822225350.32c08923@alma-ubu>

Welcome, Björn!

On Mon, Aug 22, 2016 at 10:53:50PM +0200, Björn Höfling wrote:
>  * Do you have the concept of package maintainers, like in Debian?
>    People who are responsible for each package, apply patches, etc?

No, we don't have a concept of this. In practice, people pay attention
to the packages they care about. This information can be obtained with
`git blame` and `git log`.

Some of us subscribe to security-related mailing lists, and apply
security updates across the package tree. More people should do this,
please :)

>  * Are there "recommmended"/"sugggested" dependencies? For example,
>    diffoscope complained that "'readelf' is not on the path. Falling
>    back to binary comparison." That could be a candidate for a package
>    not needed at compile/runtime but that would enhance the usage if
>    present.

All dependencies are specified explicitly in the package definitions and
the build systems.

We do have a concept of run-time and build-time dependencies. See the
text about "inputs":
<https://www.gnu.org/software/guix/manual/html_node/package-Reference.html#package-Reference>

Speaking of caring about packages, I care about diffoscope. I will look
into adding readelf to the diffoscope package definition.

>  * I have for example in my store:
>    * /gnu/store/abc...-tar-1.29/
>    * /gnu/store/xyz...-tar-1.29/
> 
>    Can I somehow figure out what's the differnce between them, how
>    they came into the system, which one is "newer"? I tried diffoscope
>    and found some marginal, crypted hex-differences.

You can inspect the relationships a given store item has to other store
items with the '--referrers', '--requisites', '--references' options to
`guix gc`:
<https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-gc.html#Invoking-guix-gc>

I'm not sure if it's possible to go backwards from a store item to the
Guix Git commit it was built from. Advice wanted!

>  * Can I somehow get a store history? I.e. a (ordered) list of
>    installation progress. "ls -ltr /gnu/store" was my first try
>    but it obviously fails.

Yes, there is `guix package --list-generations`. For more, see
<https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-package.html#Invoking-guix-package>
<https://www.gnu.org/software/guix/manual/html_node/Features.html#Features>

>  * Is there a log for the deamon? I only found the
>    "/var/log/guix/drvs", which seam to be only logs of each compilation.
>    BTW, what do the two letters of the subfolders mean? 

The log output of the daemon goes wherever your daemons normally log to.
On most recent versions of the major distros, this is handled by
systemd / journald.

Package build logs can be obtained like so:

`guix build foo --log-file --no-grafts`

... but you still have the problem of knowing which version of Guix
produced the store item you are interested in. I'm interested to hear
better answers to this question.

>  * Is there a list of builds available that are not reproducible? Or is
>    that (eq? _ '()) ?

We don't have much infrastructure for tracking reproducible builds yet.
Help wanted!

We do have `guix challenge`, for challenging a binary substitute server.
Also, packages can be built with '--rounds=x' and '--check', which
repeat the build and compare the outputs to see if they are bit-for-bit
identical.

<https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-build.html#Invoking-guix-build>
<https://www.gnu.org/software/guix/manual/html_node/Common-Build-Options.html#Common-Build-Options>

>  * Are any other Hydra instances running other than the GNU ones that
>    could be challenged?

I don't know of any public instances. There are some private instances
running in institutional settings.

There is `guix publish`, which is not a full continuous integration
system like Hydra, but rather a simple HTTP server that you can use to
serve your binary substitutes:

<https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-publish.html#Invoking-guix-publish>

>  * If I would like to set up my own Hydra server, how much storage space
>    takes the whole hydra-archive of substitutes (for each platform)? Or
>    only the %base-packages?
> 
>  * How much time takes it to recompile all packages in Hydra?

I don't know. Others can answer this.

And, others can add to my answers as well.

  reply	other threads:[~2016-08-22 21:49 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-22 20:53 Several questions on Guix(SD) Björn Höfling
2016-08-22 21:49 ` Leo Famulari [this message]
2016-08-25 21:03   ` Björn Höfling
2016-08-26 23:15     ` Leo Famulari
2016-08-26 23:23     ` Leo Famulari
2016-08-29  9:36       ` Björn Höfling
2016-08-30 12:24   ` Ludovic Courtès
2016-08-23  7:25 ` Florian Paul Schmidt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160822214921.GA9557@jasmine \
    --to=leo@famulari.name \
    --cc=bjoern.hoefling@bjoernhoefling.de \
    --cc=help-guix@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.