GNU bug report logs - #63726
time-machine without options does not get the latest commit

Previous Next

Package: guix;

Reported by: Simon Tournier <zimon.toutoune <at> gmail.com>

Date: Thu, 25 May 2023 18:34:01 UTC

Severity: normal

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 63726 in the body.
You can then email your comments to 63726 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 25 May 2023 18:34:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Simon Tournier <zimon.toutoune <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Thu, 25 May 2023 18:34:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Simon Tournier <zimon.toutoune <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: time-machine without options does not get the latest commit
Date: Thu, 25 May 2023 15:52:26 +0200
Hi,

Well, I do not know if it is a bug or if I misuse something.  Feel free
to close if I am missing a point.

--8<---------------cut here---------------start------------->8---
$ guix describe
Generation 25	mai 19 2023 13:30:14	(current)
  guix 14c0380
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 14c03807ba4bc81d42cf869f5b827f7da54ff843

$ git -C ~/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq log --oneline -1
14c03807ba4 (HEAD -> master) gnu: ruby-3.2: Upgrade to 3.2.2 [fixes CVE-2023-{28755, 28756}].
--8<---------------cut here---------------end--------------->8---

Well, that’s just a luck that both commit hash matches.

Now, what I am missing.  The manual says:

       As for ‘guix pull’, the absence of any options means that the latest
    commit on the master branch will be used.  The command

         guix time-machine -- build hello

       will thus build the package ‘hello’ as defined in the master branch,
    which is in general a newer revision of Guix than you have installed.
    Time travel works in both directions!

and I get:

--8<---------------cut here---------------start------------->8---
$ guix time-machine -- describe
  guix e499cb2
    repository URL: https://git.savannah.gnu.org/git/guix.git
    commit: e499cb2c12d7f1c6d2f004364c9cc7bdb7e38cd5
--8<---------------cut here---------------end--------------->8---

But I do not understand from where this commit hash is coming from.  And
please note that this commit seems coming from my previous experiments
reported in #63667 [1].

Well, the last commit seems a9cde26133b,

--8<---------------cut here---------------start------------->8---
$ git -C ~/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq log origin/master --oneline -1
a9cde26133b (origin/master, origin/HEAD) gnu: Add mouseloupe.
--8<---------------cut here---------------end--------------->8---

Therefore, let create a Guix revision:

--8<---------------cut here---------------start------------->8---
$ guix time-machine --commit=a9cde26133b -- describe
  guix a9cde26
    repository URL: https://git.savannah.gnu.org/git/guix.git
    commit: a9cde26133bd98498869a3528d9dff0d3f456a96
--8<---------------cut here---------------end--------------->8---

However, still this e499cb2 one:

--8<---------------cut here---------------start------------->8---
$ guix time-machine -- describe
  guix e499cb2
    repository URL: https://git.savannah.gnu.org/git/guix.git
    commit: e499cb2c12d7f1c6d2f004364c9cc7bdb7e38cd5
--8<---------------cut here---------------end--------------->8---

Cheers,
simon


1: https://issues.guix.gnu.org/issue/63667




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 25 May 2023 21:05:02 GMT) Full text and rfc822 format available.

Message #8 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Simon Tournier <zimon.toutoune <at> gmail.com>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Thu, 25 May 2023 23:03:54 +0200
Hi,

Simon Tournier <zimon.toutoune <at> gmail.com> skribis:

> Now, what I am missing.  The manual says:
>
>        As for ‘guix pull’, the absence of any options means that the latest
>     commit on the master branch will be used.  The command
>
>          guix time-machine -- build hello
>
>        will thus build the package ‘hello’ as defined in the master branch,
>     which is in general a newer revision of Guix than you have installed.
>     Time travel works in both directions!
>
> and I get:
>
> $ guix time-machine -- describe
>   guix e499cb2
>     repository URL: https://git.savannah.gnu.org/git/guix.git
>     commit: e499cb2c12d7f1c6d2f004364c9cc7bdb7e38cd5
>
>
> But I do not understand from where this commit hash is coming from.  And
> please note that this commit seems coming from my previous experiments
> reported in #63667 [1].
>
> Well, the last commit seems a9cde26133b,

I had to check the code, but ‘guix time-machine’ follows the same logic
as ‘guix pull’: it reads ~/.config/guix/channels.scm, and so on (that’s
the ‘channel-list’ procedure).

I must say I’m surprised, but it’s always been this way.

Should we fix the doc or should we fix the code?…

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Fri, 26 May 2023 11:16:02 GMT) Full text and rfc822 format available.

Message #11 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Konrad Hinsen <konrad.hinsen <at> fastmail.net>
To: Ludovic Courtès <ludo <at> gnu.org>, Simon Tournier
 <zimon.toutoune <at> gmail.com>
Cc: 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Fri, 26 May 2023 13:15:28 +0200
Hi,

> Should we fix the doc or should we fix the code?…

I vote for fixing the doc. Two reasons:

 1. Having "guix time-machine" and "guix pull" behave in the same way
    is desirable. Less cognitive load for users.

 2. What the doc says cannot be implemented in general. "The latest
    commit on the master branch" makes no sense for a setup with
    multiple channels, some of which may not even have a branch called
    "master".

Cheers,
  Konrad.




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Fri, 26 May 2023 11:26:03 GMT) Full text and rfc822 format available.

Message #14 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Simon Tournier <zimon.toutoune <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Fri, 26 May 2023 11:31:01 +0200
[Message part 1 (text/plain, inline)]
Hi,

On jeu., 25 mai 2023 at 23:03, Ludovic Courtès <ludo <at> gnu.org> wrote:

> I had to check the code, but ‘guix time-machine’ follows the same logic
> as ‘guix pull’: it reads ~/.config/guix/channels.scm, and so on (that’s
> the ‘channel-list’ procedure).

--8<---------------cut here---------------start------------->8---
$ cat ~/.config/guix/channels.scm
(use-modules (guix ci))

(list (channel-with-substitutes-available
       %default-guix-channel
       "https://ci.guix.gnu.org"))

$ guix time-machine -C ~/.config/guix/channels.scm -- describe
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
 compute-guix-derivation  1013B                                                                                    373KiB/s 00:00 ▕██████████████████▏ 100.0%
Computing Guix derivation for 'x86_64-linux'... \
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
The following derivations will be built:
  /gnu/store/80sisjhmmb0sbvyylavm3c2rgjnhypw2-profile.drv
  /gnu/store/3213n6v442d1zv17xidg8s48hx02f433-guix-daemon.drv
  /gnu/store/77k19wqklyw4gvxqjjdg8ah4k9llb5c0-guix-command.drv
  /gnu/store/3cyv2vdk3v0asjqbspzlgbzibk1f50p2-guix-system-tests-modules.drv
  /gnu/store/9pq5bivbzg476svaqv38xjgwyhg0ml2k-guix-cli-core-modules.drv
  /gnu/store/gpjmcxvr10fnzjvkwr7yf2wpyrzyb5nm-guix-packages-base-modules.drv
  /gnu/store/gqamr3s5amc1ayqa4xbzv114zy6l8ac8-guix-system-modules.drv
  /gnu/store/xv2yv334dpxvq8bw605avhcf6dv0smyp-guix-home-modules.drv
  /gnu/store/yya1dwvx7svj588vnqznabqaa2ahv4a3-guix-cli-modules.drv

[...]

building profile with 1 package...
  guix 849286b
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 849286ba66c96534bddc04df1a47d5692cbc977e

$ guix time-machine -- describe
  guix 849286b
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 849286ba66c96534bddc04df1a47d5692cbc977e

$ mv ~/.config/guix/channels.scm /tmp/channels.scm

$ guix time-machine -C ~/.config/guix/channels.scm -- describe
guix time-machine: error: failed to load '/home/simon/.config/guix/channels.scm': No such file or directory

$ guix time-machine -- describe
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
Authenticating channel 'guix', commits 9edb3f6 to 3299b40 (36 new commits)...
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
 compute-guix-derivation  1016B                                                                                    168KiB/s 00:00 ▕██████████████████▏ 100.0%
Computing Guix derivation for 'x86_64-linux'... -
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
The following derivations will be built:
  /gnu/store/4gm2ay6gjsjq6iclmbm4jqnvja12axy2-profile.drv
  /gnu/store/7b50p1xnh4r5ahfj4da8yb8xgzqdjsyv-guix-daemon.drv
  /gnu/store/qgcnzghwqxkak53rhnggl73d6r1jkq4q-guix-command.drv
  /gnu/store/1spf6ndyz62izy3xgr9v5jnjin305s2v-guix-cli-core-modules.drv
  /gnu/store/3fib3w2cjl83r75zfllby6wp3znh362p-guix-system-tests-modules.drv
  /gnu/store/7vn6pq6j5psjwlcgvl1nbgwlspamx1wx-guix-home-modules.drv
  /gnu/store/9qr483y1law33nqdwz7bjr32sbkka2xw-guix-cli-modules.drv
  /gnu/store/iq10xaghbj6435w4c6nmyqb3kwzs119f-guix-packages-base-modules.drv
  /gnu/store/wzssfkmqywrqm86vjlyxzpf26d4h30qd-guix-system-modules.drv

[...]

building profile with 1 package...
  guix 3299b40
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 3299b40b3599371890816b52d65a6a5ada1b1131
--8<---------------cut here---------------end--------------->8---

Hum.  Now, I am not seeing anymore e499cb2.  Related to #63667 [1]?

1: https://issues.guix.gnu.org/issue/63667


> Should we fix the doc or should we fix the code?…

What about this patch?

[0001-doc-Reword-guix-time-machine-without-option.patch (text/x-diff, inline)]
From 63b862ed9f3d3b019af3c6926bc1737f573bdfe6 Mon Sep 17 00:00:00 2001
Message-Id: <63b862ed9f3d3b019af3c6926bc1737f573bdfe6.1685093404.git.zimon.toutoune <at> gmail.com>
From: Simon Tournier <zimon.toutoune <at> gmail.com>
Date: Fri, 26 May 2023 11:26:32 +0200
Subject: [PATCH] doc: Reword guix time-machine without option.

* doc/guix.texi (Invoking guix time-machine): Reword the behaviour in the
absence of any option.
---
 doc/guix.texi | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 31dc33fb97..54f8a20196 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -4958,16 +4958,20 @@ Invoking guix time-machine
 @xref{Channels} for more information.
 @end table
 
-As for @command{guix pull}, the absence of any options means that the
-latest commit on the master branch will be used.  The command
+Similarly as @command{guix pull}, the absence of any options means that
+either the user's @file{~/.config/guix/channels.scm} file, or either the
+system-wide @file{/etc/guix/channels.scm} file, or either the built-in
+default channels specified in the @code{%default-channels} will be
+honored, in that order.  The command
 
 @example
 guix time-machine -- build hello
 @end example
 
-will thus build the package @code{hello} as defined in the master branch,
-which is in general a newer revision of Guix than you have installed.
-Time travel works in both directions!
+will thus build the package @code{hello} as defined by the previous
+@dfn{channels} file (@pxref{Channels}).  In general, it builds a newer
+revision of Guix than you have installed.  Time travel works in both
+directions!
 
 Note that @command{guix time-machine} can trigger builds of channels and
 their dependencies, and these are controlled by the standard build

base-commit: 99fc7e5dd3c9c92f9b6c2e51db9dc5b0481a56b2
prerequisite-patch-id: 7ff5f10954ba2e9663c6e7b15e7aee448c8b74c2
prerequisite-patch-id: cb31c4d7ad8d27df155dcf57b61116048a6b0681
prerequisite-patch-id: f256649d0fac1d618b07615c97c46e66436b9262
-- 
2.38.1

[Message part 3 (text/plain, inline)]

Cheers,
simon

Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Tue, 30 May 2023 16:23:02 GMT) Full text and rfc822 format available.

Message #17 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Simon Tournier <zimon.toutoune <at> gmail.com>
To: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, Ludovic Courtès <ludo <at> gnu.org>
Cc: 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Tue, 30 May 2023 15:32:07 +0200
[Message part 1 (text/plain, inline)]
Hi Konrad,

On ven., 26 mai 2023 at 13:15, Konrad Hinsen <konrad.hinsen <at> fastmail.net> wrote:
> Hi,
>
>> Should we fix the doc or should we fix the code?…
>
> I vote for fixing the doc. Two reasons:

What about this patch?

[p.patch (text/x-diff, inline)]
From 63b862ed9f3d3b019af3c6926bc1737f573bdfe6 Mon Sep 17 00:00:00 2001
Message-Id: <63b862ed9f3d3b019af3c6926bc1737f573bdfe6.1685093404.git.zimon.toutoune <at> gmail.com>
From: Simon Tournier <zimon.toutoune <at> gmail.com>
Date: Fri, 26 May 2023 11:26:32 +0200
Subject: [PATCH] doc: Reword guix time-machine without option.

* doc/guix.texi (Invoking guix time-machine): Reword the behaviour in the
absence of any option.
---
 doc/guix.texi | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 31dc33fb97..54f8a20196 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -4958,16 +4958,20 @@ Invoking guix time-machine
 @xref{Channels} for more information.
 @end table
 
-As for @command{guix pull}, the absence of any options means that the
-latest commit on the master branch will be used.  The command
+Similarly as @command{guix pull}, the absence of any options means that
+either the user's @file{~/.config/guix/channels.scm} file, or either the
+system-wide @file{/etc/guix/channels.scm} file, or either the built-in
+default channels specified in the @code{%default-channels} will be
+honored, in that order.  The command
 
 @example
 guix time-machine -- build hello
 @end example
 
-will thus build the package @code{hello} as defined in the master branch,
-which is in general a newer revision of Guix than you have installed.
-Time travel works in both directions!
+will thus build the package @code{hello} as defined by the previous
+@dfn{channels} file (@pxref{Channels}).  In general, it builds a newer
+revision of Guix than you have installed.  Time travel works in both
+directions!
 
 Note that @command{guix time-machine} can trigger builds of channels and
 their dependencies, and these are controlled by the standard build

base-commit: 99fc7e5dd3c9c92f9b6c2e51db9dc5b0481a56b2
prerequisite-patch-id: 7ff5f10954ba2e9663c6e7b15e7aee448c8b74c2
prerequisite-patch-id: cb31c4d7ad8d27df155dcf57b61116048a6b0681
prerequisite-patch-id: f256649d0fac1d618b07615c97c46e66436b9262
-- 
2.38.1

[Message part 3 (text/plain, inline)]
Cheers,
simon

Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 01 Jun 2023 15:02:01 GMT) Full text and rfc822 format available.

Message #20 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Konrad Hinsen <konrad.hinsen <at> fastmail.net>
To: Simon Tournier <zimon.toutoune <at> gmail.com>, Ludovic Courtès <ludo <at> gnu.org>
Cc: 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Thu, 01 Jun 2023 17:01:40 +0200
[Message part 1 (text/plain, inline)]
Hi Simon,

> What about this patch?

That's a good start! But I didn't quite understand what "as defined by the previous
+@dfn{channels} file" means, so I did some more research and some more
rewriting, and came up with the attached patch. That one is clear for
me, but maybe not for others...

In the course of this research, I noticed that channel files are used in
Guix in two varieties for rather different purposes, but this doesn't
seem to be explained anywhere. "guix describe -f channels" produces
channel files with a pinned commit for each repository. That's what we
usually give to time-machine. That feature of channel files seems even
undocumented. The chapter on channels discusses the channel files we
typically use with "guix pull", and which refer to a branch and thus its
last commit, rather than to a pinned commit.

Cheers,
  Konrad.
[0001-doc-Reword-guix-time-machine-without-option.patch (text/x-diff, inline)]
From cbe372191a2daea7b62d8558422f08bc6ed0e047 Mon Sep 17 00:00:00 2001
From: Konrad Hinsen <konrad.hinsen <at> fastmail.net>
Date: Thu, 1 Jun 2023 16:55:33 +0200
Subject: [PATCH] doc: Reword guix time-machine without option.

* doc/guix.texi (Invoking guix time-machine): Reword the behaviour in the
absence of any option.
---
 doc/guix.texi | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 7f8d8d66e9..e4daffe4dd 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -4959,16 +4959,25 @@ Invoking guix time-machine
 @xref{Channels} for more information.
 @end table
 
-As for @command{guix pull}, the absence of any options means that the
-latest commit on the master branch will be used.  The command
+In the absence of any options, the target revision will be determined as
+for @command{guix pull}, i.e. from the user's
+@file{~/.config/guix/channels.scm} file, or, if no such file exists,
+from the system-wide @file{/etc/guix/channels.scm} file, or, if that
+file does not exist either, from the built-in default channels specified
+in the @code{%default-channels} variable.  Note that these three
+fallbacks are usually channel definitions pointing to @i{branches} in
+git repositories, rather then to specific @i{commits}, as the channel
+definitions produced by @command{guix describe} do. A branch-based
+channel definition refers to the latest commit on that branch. The
+command
 
 @example
 guix time-machine -- build hello
 @end example
 
-will thus build the package @code{hello} as defined in the master branch,
-which is in general a newer revision of Guix than you have installed.
-Time travel works in both directions!
+will thus build the package @code{hello} as defined by the current state
+of the default channels. In general, it builds a @i{newer} revision of
+Guix than you have installed.  Time travel works in both directions!
 
 Note that @command{guix time-machine} can trigger builds of channels and
 their dependencies, and these are controlled by the standard build
-- 
2.40.1


Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Fri, 11 Aug 2023 15:37:02 GMT) Full text and rfc822 format available.

Message #23 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludovic.courtes <at> inria.fr>
To: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, Simon Tournier
 <zimon.toutoune <at> gmail.com>
Cc: 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Fri, 11 Aug 2023 17:36:35 +0200
Hi Konrad & Simon,

I had forgotten about this issue (my apologies…) and stumbled upon it
again recently, which led me to approach it a bit differently:

  https://issues.guix.gnu.org/65229

Let me know what you think!

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Mon, 14 Aug 2023 10:15:02 GMT) Full text and rfc822 format available.

Message #26 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Konrad Hinsen <konrad.hinsen <at> fastmail.net>
To: Ludovic Courtès <ludovic.courtes <at> inria.fr>
Cc: 63726 <at> debbugs.gnu.org, Simon Tournier <zimon.toutoune <at> gmail.com>
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Mon, 14 Aug 2023 12:13:55 +0200
Hi Ludo,

> I had forgotten about this issue (my apologies…) and stumbled upon it
> again recently, which led me to approach it a bit differently:
>
>   https://issues.guix.gnu.org/65229
>
> Let me know what you think!

This looks good to me. In practice, I doubt anyone would use -q with
time-machine, because it makes more sense to specify an explicit channel
file every time. But for pull, I can well imaging using it in a
reproducibility-oriented setting.

Cheers,
  Konrad




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Wed, 16 Aug 2023 17:12:04 GMT) Full text and rfc822 format available.

Message #29 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Simon Tournier <zimon.toutoune <at> gmail.com>
To: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, Ludovic Courtès <ludovic.courtes <at> inria.fr>
Cc: 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Wed, 16 Aug 2023 15:51:23 +0200
Hi,

On Mon, 14 Aug 2023 at 12:13, Konrad Hinsen <konrad.hinsen <at> fastmail.net> wrote:

>> Let me know what you think!

LGTM! :-)


> This looks good to me. In practice, I doubt anyone would use -q with
> time-machine, because it makes more sense to specify an explicit channel
> file every time. But for pull, I can well imaging using it in a
> reproducibility-oriented setting.

Well, I am also lacking imagination for “guix time-machine -q”. :-)

Moreover, the option precedence (commit, branch, channel file, etc.) is
never clear for me.  Hum, maybe I could check if it’s documented… ;-)


Cheers,
simon






Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 17 Aug 2023 08:43:02 GMT) Full text and rfc822 format available.

Message #32 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludovic.courtes <at> inria.fr>
To: Konrad Hinsen <konrad.hinsen <at> fastmail.net>
Cc: 63726 <at> debbugs.gnu.org, Simon Tournier <zimon.toutoune <at> gmail.com>
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Thu, 17 Aug 2023 10:42:07 +0200
Hey!

Konrad Hinsen <konrad.hinsen <at> fastmail.net> skribis:

> This looks good to me. In practice, I doubt anyone would use -q with
> time-machine, because it makes more sense to specify an explicit channel
> file every time.

Yeah.  The use case I have in mind is something like:

  guix time-machine -q --commit=XYZ -- build hello

Useful, for example, to share a way to reproduce a bug, making sure
there’s nothing but the ‘guix’ channel.

Thanks for taking a look!

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 17 Aug 2023 13:42:02 GMT) Full text and rfc822 format available.

Message #35 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludovic.courtes <at> inria.fr>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726 <at> debbugs.gnu.org,
 Simon Tournier <zimon.toutoune <at> gmail.com>
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Thu, 17 Aug 2023 09:41:06 -0400
Hi,

Ludovic Courtès <ludovic.courtes <at> inria.fr> writes:

> Hey!
>
> Konrad Hinsen <konrad.hinsen <at> fastmail.net> skribis:
>
>> This looks good to me. In practice, I doubt anyone would use -q with
>> time-machine, because it makes more sense to specify an explicit channel
>> file every time.
>
> Yeah.  The use case I have in mind is something like:
>
>   guix time-machine -q --commit=XYZ -- build hello
>
> Useful, for example, to share a way to reproduce a bug, making sure
> there’s nothing but the ‘guix’ channel.

The '-q' short option by itself is a bit opaque / hard to memorize;
perhaps complementing it with a self explanatory
'--ignore-channel-files' long option name would be a good idea?

-- 
Thanks,
Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 17 Aug 2023 14:08:03 GMT) Full text and rfc822 format available.

Message #38 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludovic.courtes <at> inria.fr>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726 <at> debbugs.gnu.org,
 Simon Tournier <zimon.toutoune <at> gmail.com>
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Thu, 17 Aug 2023 16:07:34 +0200
Hi,

Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:

> Ludovic Courtès <ludovic.courtes <at> inria.fr> writes:
>
>> Hey!
>>
>> Konrad Hinsen <konrad.hinsen <at> fastmail.net> skribis:
>>
>>> This looks good to me. In practice, I doubt anyone would use -q with
>>> time-machine, because it makes more sense to specify an explicit channel
>>> file every time.
>>
>> Yeah.  The use case I have in mind is something like:
>>
>>   guix time-machine -q --commit=XYZ -- build hello
>>
>> Useful, for example, to share a way to reproduce a bug, making sure
>> there’s nothing but the ‘guix’ channel.
>
> The '-q' short option by itself is a bit opaque / hard to memorize;
> perhaps complementing it with a self explanatory
> '--ignore-channel-files' long option name would be a good idea?

Yes, I did that in v2, as Simon suggested.

(‘-q’ seems to be a relatively common convention: emacs, guile, and also
‘guix repl’.)

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Thu, 17 Aug 2023 14:41:02 GMT) Full text and rfc822 format available.

Message #41 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludovic.courtes <at> inria.fr>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726 <at> debbugs.gnu.org,
 Simon Tournier <zimon.toutoune <at> gmail.com>
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Thu, 17 Aug 2023 10:39:55 -0400
Hi Ludovic,

Ludovic Courtès <ludovic.courtes <at> inria.fr> writes:

> Hi,
>
> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:
>
>> Ludovic Courtès <ludovic.courtes <at> inria.fr> writes:
>>
>>> Hey!
>>>
>>> Konrad Hinsen <konrad.hinsen <at> fastmail.net> skribis:
>>>
>>>> This looks good to me. In practice, I doubt anyone would use -q with
>>>> time-machine, because it makes more sense to specify an explicit channel
>>>> file every time.
>>>
>>> Yeah.  The use case I have in mind is something like:
>>>
>>>   guix time-machine -q --commit=XYZ -- build hello
>>>
>>> Useful, for example, to share a way to reproduce a bug, making sure
>>> there’s nothing but the ‘guix’ channel.
>>
>> The '-q' short option by itself is a bit opaque / hard to memorize;
>> perhaps complementing it with a self explanatory
>> '--ignore-channel-files' long option name would be a good idea?
>
> Yes, I did that in v2, as Simon suggested.

Oh, I had missed that.  Thank you!

> (‘-q’ seems to be a relatively common convention: emacs, guile, and also
> ‘guix repl’.)

I think it's also commonly used as '--quiet', in other circles :-).

-- 
Thanks,
Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#63726; Package guix. (Mon, 04 Sep 2023 17:38:03 GMT) Full text and rfc822 format available.

Message #44 received at 63726 <at> debbugs.gnu.org (full text, mbox):

From: Simon Tournier <zimon.toutoune <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726 <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Mon, 04 Sep 2023 18:55:04 +0200
Hi,

On Thu, 25 May 2023 at 23:03, Ludovic Courtès <ludo <at> gnu.org> wrote:

>> Now, what I am missing.  The manual says:
>>
>>        As for ‘guix pull’, the absence of any options means that the latest
>>     commit on the master branch will be used.  The command
>>
>>          guix time-machine -- build hello
>>
>>        will thus build the package ‘hello’ as defined in the master branch,
>>     which is in general a newer revision of Guix than you have installed.
>>     Time travel works in both directions!

[...]

> Should we fix the doc or should we fix the code?…

All seems fixed so let close it?

Cheers,
simon




Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Fri, 08 Sep 2023 15:40:02 GMT) Full text and rfc822 format available.

Notification sent to Simon Tournier <zimon.toutoune <at> gmail.com>:
bug acknowledged by developer. (Fri, 08 Sep 2023 15:40:02 GMT) Full text and rfc822 format available.

Message #49 received at 63726-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Simon Tournier <zimon.toutoune <at> gmail.com>
Cc: Konrad Hinsen <konrad.hinsen <at> fastmail.net>, 63726-done <at> debbugs.gnu.org
Subject: Re: bug#63726: time-machine without options does not get the latest
 commit
Date: Fri, 08 Sep 2023 17:39:01 +0200
Simon Tournier <zimon.toutoune <at> gmail.com> skribis:

> On Thu, 25 May 2023 at 23:03, Ludovic Courtès <ludo <at> gnu.org> wrote:
>
>>> Now, what I am missing.  The manual says:
>>>
>>>        As for ‘guix pull’, the absence of any options means that the latest
>>>     commit on the master branch will be used.  The command
>>>
>>>          guix time-machine -- build hello
>>>
>>>        will thus build the package ‘hello’ as defined in the master branch,
>>>     which is in general a newer revision of Guix than you have installed.
>>>     Time travel works in both directions!
>
> [...]
>
>> Should we fix the doc or should we fix the code?…
>
> All seems fixed so let close it?

Yes, done!




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 07 Oct 2023 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 195 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.