Re: Guix "days old" variable

2018-06-05 Thread Mark H Weaver
Jone  writes:

> Hello. I check updates:
>
> guix refresh emacs
>   gnu/packages/emacs.scm:116:13: emacs would be upgraded from 25.3 to 26.1
>
> and would like to install only this one update:
>
> guix package -u emacs
>   guix package: warning: Your Guix installation is 16 days old
>   ...
>
> Can I change threshold for this ("NN days old")? What is this variable?

You can set the GUIX_DISTRO_AGE_WARNING environment variable to a string
like "9d" for 9 days.  The suffix can also be "w" or "m" for weeks or
months.

   Mark



Re: Checking for substitutes

2018-06-05 Thread Konrad Hinsen

Hi Ricardo,


I tried it. It provides interesting statistics, but always considers all
packages in Guix rather than just the ones I care about.


You can pass a manifest to “guix weather”.


Found it in the manual - great! And a quick look at the source shows 
that it shouldn't be too hard to make it print a list of the packages 
that are not available as substitutes. It's on my to-do list...


Thanks,
  Konrad.





Guix "days old" variable

2018-06-05 Thread Jone
Hello. I check updates:

guix refresh emacs
  gnu/packages/emacs.scm:116:13: emacs would be upgraded from 25.3 to 26.1

and would like to install only this one update:

guix package -u emacs
  guix package: warning: Your Guix installation is 16 days old
  ...

Can I change threshold for this ("NN days old")? What is this variable?

Thanks.



Re: Checking for substitutes

2018-06-05 Thread Ricardo Wurmus


Hi Konrad,

Timothy Sample  writes:

>> I wonder if there is any way to check if substitutes are available for a
>> given set of packages (e.g. a single package with its dependencies, or a
>> complete manifest).
[…]
>
> There’s also the ‘guix weather’ command.  It is supposed to provide info
> about available substitutes.  I have not made much of use of it, though.

This is exacly providing this very feature.  You use it like this:

guix weather --substitute-urls="…" -m my-manifest.scm

and it tells you what the current substitute coverage for your manifest
is for all substitute servers you interrogated.  (It does not give you a
total percentage when all servers are considered, unfortunately.)

--
Ricardo




Re: Checking for substitutes

2018-06-05 Thread Ricardo Wurmus


Konrad Hinsen  writes:

>> There’s also the ‘guix weather’ command.  It is supposed to provide info
>> about available substitutes.  I have not made much of use of it, though.
>
> I tried it. It provides interesting statistics, but always considers all
> packages in Guix rather than just the ones I care about.

You can pass a manifest to “guix weather”.

-- 
Ricardo




Re: Checking for substitutes

2018-06-05 Thread Konrad Hinsen
Hi Tim,

Thanks for your explanations! I will try out the script you posted
last year. From your description it sounds like good enough to solve my
routine problem, which is that compiling Qt runs out of memory on my
machine unless it's close to idle. No way to have Emacs + Firefox + Qt
compilation with 8 GB of RAM :-(

> There’s also the ‘guix weather’ command.  It is supposed to provide info
> about available substitutes.  I have not made much of use of it, though.

I tried it. It provides interesting statistics, but always considers all
packages in Guix rather than just the ones I care about.

Konrad.



Re: Checking for substitutes

2018-06-05 Thread Timothy Sample
Hi Konrad,

Konrad Hinsen  writes:

> Hi Guix,
>
> I wonder if there is any way to check if substitutes are available for a
> given set of packages (e.g. a single package with its dependencies, or a
> complete manifest).
>
> The context is optimizing package updates: if I know everything I need
> is available as a substitute, I can do an update immediately, but if big
> packages need to be built locally, I prefer to wait until my computer is
> idle.
>
> Ideally, I'd like "guix package" to have an option –only-substitutes
> that will stop if local builds are required, providing a list of the
> packages that must be built.

There’s an old feature request for this:

  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26608

I looked into it some time ago, and there were a lot of blockers.  See
https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00190.html for
details.

At the end of that thread, I posted a small shell script that scrapes
the most recent fully evaluated commit from the build farm.  That way,
you can update to that commit, and have a much better chance of getting
all substitutes.  To be honest, I only use the script if I see something
like Icecat building.  In that case, I rollback to the latest complete
evaluation.

There’s also the ‘guix weather’ command.  It is supposed to provide info
about available substitutes.  I have not made much of use of it, though.

Hope that helps.


-- Tim



Checking for substitutes

2018-06-05 Thread Konrad Hinsen
Hi Guix,

I wonder if there is any way to check if substitutes are available for a
given set of packages (e.g. a single package with its dependencies, or a
complete manifest).

The context is optimizing package updates: if I know everything I need
is available as a substitute, I can do an update immediately, but if big
packages need to be built locally, I prefer to wait until my computer is
idle.

Ideally, I'd like "guix package" to have an option –only-substitutes
that will stop if local builds are required, providing a list of the
packages that must be built.

Konrad.