GNU bug report logs - #70954
No 'guix pull' substitutes for foreign distros?

Previous Next

Package: guix;

Reported by: Nigko Yerden <nigko.yerden <at> gmail.com>

Date: Wed, 15 May 2024 03:47:02 UTC

Severity: normal

Done: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>

To reply to this bug, email your comments to 70954 AT debbugs.gnu.org.
There is no need to reopen the bug first.

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#70954; Package guix. (Wed, 15 May 2024 03:47:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nigko Yerden <nigko.yerden <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Wed, 15 May 2024 03:47:02 GMT) Full text and rfc822 format available.

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

From: Nigko Yerden <nigko.yerden <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: No 'guix pull' substitutes for foreign distros?
Date: Wed, 15 May 2024 08:46:33 +0500
Hello Guix!

I have two systems: first (A) is a full Guix system and second (B) is a 
foreign distribution with Guix package manager installed onto. I have 
noticed when I'm performing 'guix pull' system B always build 'guix 
pull' derivations by itself while system A most often just download 
substitutes for them. The latter, of course, is much faster.

Here is how it looks on system B (commit 
014875b29e68da6357a5323e6dd1eaa74a05b753):

$ guix pull
Updating channel 'guix' from Git repository at 
'https://git.savannah.gnu.org/git/guix.git'...
Authenticating channel 'guix', commits 9edb3f6 to 08360a2 (781 new 
commits)...
Building from these channels:
  guix      https://git.savannah.gnu.org/git/guix.git	08360a2
substitute: updating substitutes from 
'https://mirrors.sjtug.sjtu.edu.cn/guix'... 100.0%
26,4 MB will be downloaded
....
The following derivations will be built:
  /gnu/store/q9b8yr9452im7mmah1cfk2dpy44y755v-profile.drv
  /gnu/store/87avc5s6q4xq1rdk26cnlviai7hfjzi0-inferior-script.scm.drv
  /gnu/store/saji8f542jbrmj6315lxrgmgjdgrzlx4-guix-08360a2cd.drv
  /gnu/store/3j2xd5l3q0s1jf9798fr4s3k3ky5fw07-guix-manual.drv
  /gnu/store/42bwpkmcv6jsdzhsxc0pwc13k1fgxh25-guix-08360a2cd-modules.drv

/gnu/store/2cl0dr63d900v6406hs10qgjsp7iaysi-guix-packages-base-modules.drv
  /gnu/store/j8av01zjcx9kimjm0yrdrkhmiba7wwmj-guix-packages-base.drv
  /gnu/store/a7w5hbq6kppl90838b3iwpgn4v93jv75-guix-extra.drv
  /gnu/store/gd8lqzj70wx5qgx39lnh3lh4g5slln5g-guix-core-source.drv
  /gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv
  /gnu/store/6r0k3wg5bcjnjdjlx8rvxr2q3izyhgvh-guix-system-tests-modules.drv
  /gnu/store/7pmrsz3mlnhiggm3pz99wiyrddahl9mb-guix-system-tests.drv
  /gnu/store/3jwjfb0rjxsvv4xy0m65db0nmbg56nx7-guix-cli.drv
  /gnu/store/87yna60fdd0gv70nb4svqvxq8br4cbm6-guix-cli-core.drv
  /gnu/store/b28ayyn4jqfz5dbgcshh5gmayzms65wj-guix-system.drv
  /gnu/store/x5x97w98q16myzx3rfik1gs06n1vbccr-guix-packages.drv
  /gnu/store/sxhm9vii5lwig55vjpc4jz639r9ygdyx-guix-home.drv
  /gnu/store/7i2z4b2imjxc0qd5kgis9c045ybq0wwy-guix-system-modules.drv
  /gnu/store/f3qxxs77klhk0q8bvsxdly1xr147wb9s-guix-cli-modules.drv
  /gnu/store/fl6m42fdnykhd5drv42s1zn5x18vbiy9-guix-extra-modules.drv
  /gnu/store/h7ynn7s9p8ywd5s2s4g43l6rgkqdidqd-guix-home-modules.drv
  /gnu/store/i0qnblii1as7yk2pz3vvvfd9mh28fdzv-guix-config-modules.drv
  /gnu/store/m02vi15w4chc27kgrf2x55riacsl20gc-guix-config-source.drv
  /gnu/store/6z80pzmm18nmbmblk9mh2vjl1hvdzm02-config.scm.drv
  /gnu/store/jilxlihmy07h9xhr1pbxw5i01b4l1js1-guix-cli-core-modules.drv
  /gnu/store/ng76j3d6m66w7jfk0gds9204zp4l727p-guix-packages-modules.drv
  /gnu/store/znffqlp69qjbvzpnjvvfmpc4fq6q9b8w-guix-core-modules.drv
  /gnu/store/qxaqgq36bg5mi210yflrg31hz3nxjfb3-guix-command.drv
  /gnu/store/as05nvh2dq4s0pb0lxkmcyf407c7wjcm-guix-module-union.drv
  /gnu/store/qxsz62r8giy0hf8qqzzv8f35g6470kcj-guix-daemon.drv
  /gnu/store/za0rf8ypn7v1a9a7cc7fmnnh7pig5580-guix-misc.drv
  /gnu/store/pf1h4mhpp6qhvixzr4172v81wqy1wj1x-inferior-script.scm.drv
  /gnu/store/3aci63l4yq7i9jh4v55f0lyk3hji8z1w-inferior-script.scm.drv
  /gnu/store/3kjkjx8fayv97p48rgdmi51mlwx6lb7c-profile.drv

3,0 MB will be downloaded
 module-import-compiled  128KiB        57KiB/s 00:02 
▕██████████████████▏ 100.0%
 guix-config  4KiB                    647KiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-core  1.8MiB                    418KiB/s 00:04 
▕██████████████████▏ 100.0%
 guix-translated-texinfo  1.7MiB      971KiB/s 00:02 
▕██████████████████▏ 100.0%
 module-import-compiled  8KiB          13KiB/s 00:01 
▕██████████████████▏ 100.0%
 module-import-compiled  47KiB         88KiB/s 00:01 
▕██████████████████▏ 100.0%
 module-import-compiled  66KiB         20KiB/s 00:03 
▕██████████████████▏ 100.0%
 module-import-compiled  97KiB          6KiB/s 00:17 
▕██████████████████▏ 100.0%
 module-import-compiled  54KiB          8KiB/s 00:07 
▕██████████████████▏ 100.0%
building /gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv...
building /gnu/store/6z80pzmm18nmbmblk9mh2vjl1hvdzm02-config.scm.drv...
applying 9 grafts for gd-2.3.2 ...
applying 5 grafts for gts-0.7.6 ...
building 
/gnu/store/m02vi15w4chc27kgrf2x55riacsl20gc-guix-config-source.drv...
applying 19 grafts for graphviz-minimal-7.0.1 ...
building 
/gnu/store/i0qnblii1as7yk2pz3vvvfd9mh28fdzv-guix-config-modules.drv...
building /gnu/store/gd8lqzj70wx5qgx39lnh3lh4g5slln5g-guix-core-source.drv...
building /gnu/store/za0rf8ypn7v1a9a7cc7fmnnh7pig5580-guix-misc.drv...
building 
/gnu/store/znffqlp69qjbvzpnjvvfmpc4fq6q9b8w-guix-core-modules.drv...
building /gnu/store/a7w5hbq6kppl90838b3iwpgn4v93jv75-guix-extra.drv...
building 
/gnu/store/87avc5s6q4xq1rdk26cnlviai7hfjzi0-inferior-script.scm.drv...
building 
/gnu/store/fl6m42fdnykhd5drv42s1zn5x18vbiy9-guix-extra-modules.drv...
building 
/gnu/store/j8av01zjcx9kimjm0yrdrkhmiba7wwmj-guix-packages-base.drv...
building 
/gnu/store/pf1h4mhpp6qhvixzr4172v81wqy1wj1x-inferior-script.scm.drv...
building /gnu/store/87yna60fdd0gv70nb4svqvxq8br4cbm6-guix-cli-core.drv...
building 
/gnu/store/2cl0dr63d900v6406hs10qgjsp7iaysi-guix-packages-base-modules.drv...
building 
/gnu/store/jilxlihmy07h9xhr1pbxw5i01b4l1js1-guix-cli-core-modules.drv...
building /gnu/store/x5x97w98q16myzx3rfik1gs06n1vbccr-guix-packages.drv...
applying 3 grafts for libfontenc-1.1.4 ...
building 
/gnu/store/ng76j3d6m66w7jfk0gds9204zp4l727p-guix-packages-modules.drv...
building /gnu/store/b28ayyn4jqfz5dbgcshh5gmayzms65wj-guix-system.drv...
applying 8 grafts for mkfontscale-1.2.2 ...
building /gnu/store/sxhm9vii5lwig55vjpc4jz639r9ygdyx-guix-home.drv...
building 
/gnu/store/7i2z4b2imjxc0qd5kgis9c045ybq0wwy-guix-system-modules.drv...
building /gnu/store/3jwjfb0rjxsvv4xy0m65db0nmbg56nx7-guix-cli.drv...
building 
/gnu/store/h7ynn7s9p8ywd5s2s4g43l6rgkqdidqd-guix-home-modules.drv...
building /gnu/store/f3qxxs77klhk0q8bvsxdly1xr147wb9s-guix-cli-modules.drv...
building 
/gnu/store/7pmrsz3mlnhiggm3pz99wiyrddahl9mb-guix-system-tests.drv...
applying 2 grafts for mkfontdir-1.0.7 ...
building 
/gnu/store/6r0k3wg5bcjnjdjlx8rvxr2q3izyhgvh-guix-system-tests-modules.drv...
applying 6 grafts for texinfo-6.8 ...
building 
/gnu/store/42bwpkmcv6jsdzhsxc0pwc13k1fgxh25-guix-08360a2cd-modules.drv...
building /gnu/store/3j2xd5l3q0s1jf9798fr4s3k3ky5fw07-guix-manual.drv...
building 
/gnu/store/as05nvh2dq4s0pb0lxkmcyf407c7wjcm-guix-module-union.drv...
building /gnu/store/qxaqgq36bg5mi210yflrg31hz3nxjfb3-guix-command.drv...
building /gnu/store/qxsz62r8giy0hf8qqzzv8f35g6470kcj-guix-daemon.drv...
building /gnu/store/saji8f542jbrmj6315lxrgmgjdgrzlx4-guix-08360a2cd.drv...
building CA certificate bundle...
listing Emacs sub-directories...
building fonts directory...
building directory of Info manuals...
...


And there how it looks on system A (the same commit 
014875b29e68da6357a5323e6dd1eaa74a05b753):
Updating channel 'guix' from Git repository at 
'https://git.savannah.gnu.org/git/guix.git'...
Authenticating channel 'guix', commits 9edb3f6 to 08360a2 (781 new 
commits)...
Building from these channels:
  guix      https://git.savannah.gnu.org/git/guix.git	08360a2
26,4 MB will be downloaded
...
substitute: updating substitutes from 
'https://mirrors.sjtug.sjtu.edu.cn/guix'... 100.0%
...
The following derivations will be built:
  /gnu/store/pfs471chzsnwyl3zdkz3wkzl5gpsqchm-profile.drv
  /gnu/store/87avc5s6q4xq1rdk26cnlviai7hfjzi0-inferior-script.scm.drv

/gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv
  /gnu/store/4bay72mqflnhx3382gy5lmcjiv0k673s-guix-system-tests-modules.drv
  /gnu/store/5dsx6hxbrsy8iljmz6sjn08f1c9q5zi9-guix-system-modules.drv
  /gnu/store/j33qgaybzml6fbfldw5nljgq4haxd34f-guix-cli-core-modules.drv
  /gnu/store/rzwb58zr3mnz5pff4v0581nr8bhh4bj5-guix-cli-modules.drv
  /gnu/store/yhv9fr3rzlnk8dmgiwz73rjz6xalip94-guix-extra-modules.drv
  /gnu/store/hmcds0yp3bxl8y8gaf6a42jfipvqgsii-guix-daemon.drv
  /gnu/store/x91k63vwwj6mahn804hjg5n9xzsjj4sn-guix-command.drv
  /gnu/store/pf1h4mhpp6qhvixzr4172v81wqy1wj1x-inferior-script.scm.drv
  /gnu/store/2x3s1sx169y9lk9wdnz8p21c88jr8jkd-profile.drv
  /gnu/store/mkq51lalsi9vy94afskmi92854sx1cxm-inferior-script.scm.drv

70,0 MB will be downloaded
substitute: updating substitutes from 
'https://mirrors.sjtug.sjtu.edu.cn/guix'... 100.0%
...
 module-import-compiled  128KiB      43.7MiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-cli  315KiB                      27KiB/s 00:12 
▕██████████████████▏ 100.0%
 guix-cli-core  922KiB                 21KiB/s 00:44 
▕██████████████████▏ 100.0%
 guix-cli-modules  260B                56KiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-cli-core-modules  261B           46KiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-extra  2.8MiB                    10KiB/s 04:45 
▕██████████████████▏ 100.0%
 guix-manual  5.2MiB                   13KiB/s 06:58 
▕██████████████████▏ 100.0%
 guix-extra-modules  260B              61KiB/s 00:00 
▕██████████████████▏ 100.0%
 module-import-compiled  66KiB         34KiB/s 00:02 
▕██████████████████▏ 100.0%
 guix-packages-base  17.4MiB          777KiB/s 00:23 
▕██████████████████▏ 100.0%
 guix-system  7.9MiB                  702KiB/s 00:12 
▕██████████████████▏ 100.0%
 guix-packages-base-modules  268B     140KiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-system-modules  261B            101KiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-system-tests  921KiB            368KiB/s 00:03 
▕██████████████████▏ 100.0%
 module-import-compiled  54KiB         69KiB/s 00:01 
▕██████████████████▏ 100.0%
 guix-system-tests-modules  263B       57KiB/s 00:00 
▕██████████████████▏ 100.0%
building 
/gnu/store/87avc5s6q4xq1rdk26cnlviai7hfjzi0-inferior-script.scm.drv...
applying 8 grafts for mkfontscale-1.2.2 ...
 guix-08360a2cd-modules  31.2MiB      1.9MiB/s 00:17 
▕██████████████████▏ 100.0%
building 
/gnu/store/pf1h4mhpp6qhvixzr4172v81wqy1wj1x-inferior-script.scm.drv...
 guix-module-union  2KiB              149KiB/s 00:00 
▕██████████████████▏ 100.0%
applying 2 grafts for mkfontdir-1.0.7 ...
 guix-command  653B                   436KiB/s 00:00 
▕██████████████████▏ 100.0%
applying 6 grafts for texinfo-6.8 ...
 guix-daemon  402B                    105KiB/s 00:00 
▕██████████████████▏ 100.0%
 guix-08360a2cd  800B                  94KiB/s 00:00 
▕██████████████████▏ 100.0%
building CA certificate bundle...
listing Emacs sub-directories...
building fonts directory...
building directory of Info manuals...
...


Shouldn't 'guix pull' substitutes also work on foreign distros?
If they should, why don't sytem B get them?

Regards,
Nigko




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Wed, 15 May 2024 08:09:02 GMT) Full text and rfc822 format available.

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

From: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
To: Nigko Yerden <nigko.yerden <at> gmail.com>
Cc: 70954 <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Wed, 15 May 2024 10:07:48 +0200
Hello Nigko Yerden.  You could definitely test if substitutes are never
available if you used

https://guix.gnu.org/manual/en/html_node/Channels-with-Substitutes.html

which should guarantee that it will use a version of Guix where guix
pull has substitutes.  When not using
channel-with-substitutes-available, it might be bad timing.

Regards,
Florian




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Thu, 16 May 2024 05:55:01 GMT) Full text and rfc822 format available.

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

From: Nigko Yerden <nigko.yerden <at> gmail.com>
To: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
Cc: 70954 <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Thu, 16 May 2024 10:53:00 +0500
Hi Florian Pelz,

>> https://guix.gnu.org/manual/en/html_node/Channels-with-Substitutes.html
Yes, I'm aware about this feature. It doesn't help.

>> it might be bad timing.
I think this possibility can be excluded because of:

1) I have performed 'guix pull' on the system B for the last few
months (maybe half a year) a few dozens of times and every time I
observed it build all the derivations by itself.

2) I had performed the experiment. I queried [1] for the latest
commit with substitutes and performed 'guix pull --commit="obtained commit"'
on systems A and B (they are both x86_64). The results of this experiment
are  presented in my first message.

3) Today I have preformed the similar experiment. According to [1] the
latest commit with substitutes was "5a624adfd". Again, the system B
have built all the derivations by itself while the system A have
downloaded substitutes.

[1] https://ci.guix.gnu.org/api/latestbuilds?nr=1&job=guix.x86_64-linux

Regards,
Nigko

pelzflorian (Florian Pelz) wrote:
> Hello Nigko Yerden.  You could definitely test if substitutes are never
> available if you used
> 
> https://guix.gnu.org/manual/en/html_node/Channels-with-Substitutes.html
> 
> which should guarantee that it will use a version of Guix where guix
> pull has substitutes.  When not using
> channel-with-substitutes-available, it might be bad timing.
> 
> Regards,
> Florian




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Thu, 16 May 2024 12:02:01 GMT) Full text and rfc822 format available.

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

From: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
To: Nigko Yerden <nigko.yerden <at> gmail.com>
Cc: 70954 <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Thu, 16 May 2024 14:00:48 +0200
I had not understood that you used the --commit option, sorry for the
misunderstanding.

Foreign distros are not treated specially, but configuration for
substitute authorization could be missing as described at the end
of [1].  I do not believe they are missing though:

Could you try “guix pull -q” to disable any other channels?

guix pull -q --commit=08360a2cd0f1c447c9ad25bef8ed317abcdb0c91

on my x86_64 Guix System laptop, like your machine A (that downloads
substitutes), builds
/gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv
whose store path is different on your machine B (that does *not* get
substitutes).

Regards,
Florian

[1] https://guix.gnu.org/en/manual/devel/en/html_node/Getting-Started.html




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Fri, 17 May 2024 05:17:02 GMT) Full text and rfc822 format available.

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

From: Nigko Yerden <nigko.yerden <at> gmail.com>
To: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
Cc: 70954 <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Fri, 17 May 2024 10:15:37 +0500
> I had not understood that you used the --commit option, sorry for the
> misunderstanding.
Technically I wasn't because at the time of experiment 08360a2cd
was the latest commit (not only the latest commit with substitutes).

> Foreign distros are not treated specially, but configuration for
> substitute authorization could be missing as described at the end
> of [1].
Sorry, I couldn't find any mention of substitute authorization at [1].
On system B substitute public keys were configured according to [2].
I have checked the content of /etc/guix/acl file. All keys are there.

> Could you try “guix pull -q” to disable any other channels?
Sure! Here are the final parts of the outputs (after the words
"The following derivations will be built:"):

On system B (foreign distro):
$ guix pull -q --commit=08360a2cd0f1c447c9ad25bef8ed317abcdb0c91
...
The following derivations will be built:
  /gnu/store/cj32m9h2fyd54nqlagn17ha8virfkrcb-profile.drv
  /gnu/store/s76agwq3r05ghybjc18chd07v4bspj1b-guix-08360a2cd.drv
  /gnu/store/37bsxlp93cxriknqrzs98ja8is6l7agw-guix-daemon.drv
  /gnu/store/ffi9d4y6xavq2r8kw78zmnvg78z5jnah-guix-command.drv
  /gnu/store/lq0yq5n43awhdcygy1zxs8aq2gzhl24b-guix-module-union.drv
  /gnu/store/xd79q4s0dz93a8hcyyn6f70ak7h2sl7k-guix-08360a2cd-modules.drv
  /gnu/store/2cl0dr63d900v6406hs10qgjsp7iaysi-guix-packages-base-modules.drv
  /gnu/store/j8av01zjcx9kimjm0yrdrkhmiba7wwmj-guix-packages-base.drv
  /gnu/store/a7w5hbq6kppl90838b3iwpgn4v93jv75-guix-extra.drv
  /gnu/store/gd8lqzj70wx5qgx39lnh3lh4g5slln5g-guix-core-source.drv
  /gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv
  /gnu/store/6r0k3wg5bcjnjdjlx8rvxr2q3izyhgvh-guix-system-tests-modules.drv
  /gnu/store/7pmrsz3mlnhiggm3pz99wiyrddahl9mb-guix-system-tests.drv
  /gnu/store/3jwjfb0rjxsvv4xy0m65db0nmbg56nx7-guix-cli.drv
  /gnu/store/87yna60fdd0gv70nb4svqvxq8br4cbm6-guix-cli-core.drv
  /gnu/store/b28ayyn4jqfz5dbgcshh5gmayzms65wj-guix-system.drv
  /gnu/store/x5x97w98q16myzx3rfik1gs06n1vbccr-guix-packages.drv
  /gnu/store/sxhm9vii5lwig55vjpc4jz639r9ygdyx-guix-home.drv
  /gnu/store/7i2z4b2imjxc0qd5kgis9c045ybq0wwy-guix-system-modules.drv
  /gnu/store/bf17y9g9fnxfgcmqz5ivp51k1j9ik6cv-guix-config-modules.drv
  /gnu/store/c99v1k78lcg84isjq7iaqdrrrczjwv3r-guix-config-source.drv
  /gnu/store/2nkjhm0w9ql8y2sw55cdpsq0fsvs1zx5-config.scm.drv
  /gnu/store/vbnqf2zbrz3wgfywmyqpy12pb8g1lrsa-guix-config.drv
  /gnu/store/f3qxxs77klhk0q8bvsxdly1xr147wb9s-guix-cli-modules.drv
  /gnu/store/fl6m42fdnykhd5drv42s1zn5x18vbiy9-guix-extra-modules.drv
  /gnu/store/h7ynn7s9p8ywd5s2s4g43l6rgkqdidqd-guix-home-modules.drv
  /gnu/store/jilxlihmy07h9xhr1pbxw5i01b4l1js1-guix-cli-core-modules.drv
  /gnu/store/ng76j3d6m66w7jfk0gds9204zp4l727p-guix-packages-modules.drv
  /gnu/store/znffqlp69qjbvzpnjvvfmpc4fq6q9b8w-guix-core-modules.drv
  /gnu/store/3j2xd5l3q0s1jf9798fr4s3k3ky5fw07-guix-manual.drv
  /gnu/store/za0rf8ypn7v1a9a7cc7fmnnh7pig5580-guix-misc.drv
  /gnu/store/3kv36y4g8s8m20nbdx8q53jhp48gy4bd-profile.drv
  /gnu/store/lld7s6z1pnj919y59npi7svdysl28pc5-inferior-script.scm.drv

3,0 MB will be downloaded
 module-import-compiled  128KiB
 guix-core  1.8MiB
 guix-translated-texinfo  1.7MiB
 module-import-compiled  8KiB
 module-import-compiled  47KiB
 module-import-compiled  66KiB
 module-import-compiled  97KiB
 module-import-compiled  54KiB
building /gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv...
building /gnu/store/2nkjhm0w9ql8y2sw55cdpsq0fsvs1zx5-config.scm.drv...
applying 19 grafts for graphviz-minimal-7.0.1 ...
building /gnu/store/c99v1k78lcg84isjq7iaqdrrrczjwv3r-guix-config-source.drv...
building /gnu/store/gd8lqzj70wx5qgx39lnh3lh4g5slln5g-guix-core-source.drv...
building /gnu/store/vbnqf2zbrz3wgfywmyqpy12pb8g1lrsa-guix-config.drv...
building /gnu/store/znffqlp69qjbvzpnjvvfmpc4fq6q9b8w-guix-core-modules.drv...
building /gnu/store/bf17y9g9fnxfgcmqz5ivp51k1j9ik6cv-guix-config-modules.drv...
building /gnu/store/a7w5hbq6kppl90838b3iwpgn4v93jv75-guix-extra.drv...
building /gnu/store/za0rf8ypn7v1a9a7cc7fmnnh7pig5580-guix-misc.drv...
building /gnu/store/fl6m42fdnykhd5drv42s1zn5x18vbiy9-guix-extra-modules.drv...
building /gnu/store/j8av01zjcx9kimjm0yrdrkhmiba7wwmj-guix-packages-base.drv...
applying 3 grafts for libfontenc-1.1.4 ...
building /gnu/store/87yna60fdd0gv70nb4svqvxq8br4cbm6-guix-cli-core.drv...
building /gnu/store/2cl0dr63d900v6406hs10qgjsp7iaysi-guix-packages-base-modules.drv...
building /gnu/store/jilxlihmy07h9xhr1pbxw5i01b4l1js1-guix-cli-core-modules.drv...
building /gnu/store/x5x97w98q16myzx3rfik1gs06n1vbccr-guix-packages.drv...
applying 8 grafts for mkfontscale-1.2.2 ...
building /gnu/store/ng76j3d6m66w7jfk0gds9204zp4l727p-guix-packages-modules.drv...
building /gnu/store/b28ayyn4jqfz5dbgcshh5gmayzms65wj-guix-system.drv...
applying 2 grafts for mkfontdir-1.0.7 ...
building /gnu/store/sxhm9vii5lwig55vjpc4jz639r9ygdyx-guix-home.drv...
building /gnu/store/7i2z4b2imjxc0qd5kgis9c045ybq0wwy-guix-system-modules.drv...
building /gnu/store/3jwjfb0rjxsvv4xy0m65db0nmbg56nx7-guix-cli.drv...
building /gnu/store/h7ynn7s9p8ywd5s2s4g43l6rgkqdidqd-guix-home-modules.drv...
building /gnu/store/f3qxxs77klhk0q8bvsxdly1xr147wb9s-guix-cli-modules.drv...
building /gnu/store/7pmrsz3mlnhiggm3pz99wiyrddahl9mb-guix-system-tests.drv...
applying 6 grafts for texinfo-6.8 ...
building /gnu/store/6r0k3wg5bcjnjdjlx8rvxr2q3izyhgvh-guix-system-tests-modules.drv...
building /gnu/store/3j2xd5l3q0s1jf9798fr4s3k3ky5fw07-guix-manual.drv...
building /gnu/store/xd79q4s0dz93a8hcyyn6f70ak7h2sl7k-guix-08360a2cd-modules.drv...
building /gnu/store/lq0yq5n43awhdcygy1zxs8aq2gzhl24b-guix-module-union.drv...
building /gnu/store/ffi9d4y6xavq2r8kw78zmnvg78z5jnah-guix-command.drv...
building /gnu/store/37bsxlp93cxriknqrzs98ja8is6l7agw-guix-daemon.drv...
building /gnu/store/s76agwq3r05ghybjc18chd07v4bspj1b-guix-08360a2cd.drv...
building CA certificate bundle...
listing Emacs sub-directories...
building fonts directory...
building directory of Info manuals...
building profile with 1 package...
building /gnu/store/lld7s6z1pnj919y59npi7svdysl28pc5-inferior-script.scm.drv...
building package cache...
building profile with 1 package...


On system A (Guix system):
$ guix pull -q --commit=08360a2cd0f1c447c9ad25bef8ed317abcdb0c91
...
The following derivations will be built:
  /gnu/store/dnmf3rg7x9gszykqslzykv54ag4cpi7n-profile.drv
  /gnu/store/mx48ryifmx932snc1zsbda7yz38hz4rs-guix-08360a2cd.drv
  /gnu/store/80rqq8fx33623sm8bbhm9db01h5yb1cy-guix-command.drv
  /gnu/store/8qgvl4im2bqkvzp32lrkad8b3vbf521v-guix-module-union.drv
  /gnu/store/i8035a4qm04gzf9bqivb6vm1nyjs901f-guix-08360a2cd-modules.drv
  /gnu/store/0z5klnkrjnynfazi06p71lh93vwf2wda-guix-core-modules.drv
  /gnu/store/gd8lqzj70wx5qgx39lnh3lh4g5slln5g-guix-core-source.drv
  /gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv
  /gnu/store/4bay72mqflnhx3382gy5lmcjiv0k673s-guix-system-tests-modules.drv
  /gnu/store/5dsx6hxbrsy8iljmz6sjn08f1c9q5zi9-guix-system-modules.drv
  /gnu/store/bf17y9g9fnxfgcmqz5ivp51k1j9ik6cv-guix-config-modules.drv
  /gnu/store/c99v1k78lcg84isjq7iaqdrrrczjwv3r-guix-config-source.drv
  /gnu/store/2nkjhm0w9ql8y2sw55cdpsq0fsvs1zx5-config.scm.drv
  /gnu/store/vbnqf2zbrz3wgfywmyqpy12pb8g1lrsa-guix-config.drv
  /gnu/store/blq2s8cj9130rwd240bkyvch75s69wky-guix-packages-modules.drv
  /gnu/store/j33qgaybzml6fbfldw5nljgq4haxd34f-guix-cli-core-modules.drv
  /gnu/store/rzwb58zr3mnz5pff4v0581nr8bhh4bj5-guix-cli-modules.drv
  /gnu/store/sgh48ylj7r4w2d4p1x7m0n91knjniz01-guix-home-modules.drv
  /gnu/store/yhv9fr3rzlnk8dmgiwz73rjz6xalip94-guix-extra-modules.drv
  /gnu/store/b6a298acz3lm2lvp1gh57n5as0y9mfln-guix-daemon.drv
  /gnu/store/b75vlmyw5vpj8l2q0zcrp2lw76fhy4g2-guix-misc.drv
  /gnu/store/8cc301dx0j3fjki7zml115363q7v64rq-inferior-script.scm.drv
  /gnu/store/jqg3i92sxbhnxia5blif0idrz9cfynv2-profile.drv

41,6 MB will be downloaded
 module-import-compiled  128KiB
 guix-cli  315KiB
 guix-cli-core  922KiB
 guix-core  1.8MiB
 guix-extra  2.8MiB
 guix-home  751KiB
 guix-manual  5.2MiB
 guix-packages  1.5MiB
 guix-packages-base  17.4MiB
 guix-system  7.9MiB
 guix-system-tests  921KiB
 module-import-compiled  8KiB
 module-import-compiled  67KiB
 module-import-compiled  97KiB
 module-import-compiled  54KiB
building /gnu/store/2nkjhm0w9ql8y2sw55cdpsq0fsvs1zx5-config.scm.drv...
building /gnu/store/j33qgaybzml6fbfldw5nljgq4haxd34f-guix-cli-core-modules.drv...
building /gnu/store/rzwb58zr3mnz5pff4v0581nr8bhh4bj5-guix-cli-modules.drv...
building /gnu/store/c99v1k78lcg84isjq7iaqdrrrczjwv3r-guix-config-source.drv...
building /gnu/store/gd8lqzj70wx5qgx39lnh3lh4g5slln5g-guix-core-source.drv...
building /gnu/store/vbnqf2zbrz3wgfywmyqpy12pb8g1lrsa-guix-config.drv...
building /gnu/store/0z5klnkrjnynfazi06p71lh93vwf2wda-guix-core-modules.drv...
building /gnu/store/bf17y9g9fnxfgcmqz5ivp51k1j9ik6cv-guix-config-modules.drv...
building /gnu/store/yhv9fr3rzlnk8dmgiwz73rjz6xalip94-guix-extra-modules.drv...
building /gnu/store/sgh48ylj7r4w2d4p1x7m0n91knjniz01-guix-home-modules.drv...
building /gnu/store/b75vlmyw5vpj8l2q0zcrp2lw76fhy4g2-guix-misc.drv...
building /gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv...
building /gnu/store/blq2s8cj9130rwd240bkyvch75s69wky-guix-packages-modules.drv...
building /gnu/store/5dsx6hxbrsy8iljmz6sjn08f1c9q5zi9-guix-system-modules.drv...
building /gnu/store/4bay72mqflnhx3382gy5lmcjiv0k673s-guix-system-tests-modules.drv...
applying 8 grafts for mkfontscale-1.2.2 ...
building /gnu/store/i8035a4qm04gzf9bqivb6vm1nyjs901f-guix-08360a2cd-modules.drv...
applying 2 grafts for mkfontdir-1.0.7 ...
building /gnu/store/8qgvl4im2bqkvzp32lrkad8b3vbf521v-guix-module-union.drv...
applying 6 grafts for texinfo-6.8 ...
building /gnu/store/80rqq8fx33623sm8bbhm9db01h5yb1cy-guix-command.drv...
building /gnu/store/b6a298acz3lm2lvp1gh57n5as0y9mfln-guix-daemon.drv...
building /gnu/store/mx48ryifmx932snc1zsbda7yz38hz4rs-guix-08360a2cd.drv...
building CA certificate bundle...
listing Emacs sub-directories...
building fonts directory...
building directory of Info manuals...
building profile with 1 package...
building /gnu/store/8cc301dx0j3fjki7zml115363q7v64rq-inferior-script.scm.drv...
building package cache...
building profile with 1 package...

> on my x86_64 Guix System laptop, like your machine A (that downloads
> substitutes), builds
> /gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv
> whose store path is different on your machine B (that does *not* get
> substitutes).
It looks like these 'guix pull' derivations (not only guix-packages-base-modules.drv)
are almost completely different on system A and B.

Regards,
Nigko

[1] https://guix.gnu.org/en/manual/devel/en/html_node/Getting-Started.html
[2] https://guix.gnu.org/en/manual/devel/en/html_node/Substitute-Server-Authorization.html




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Fri, 17 May 2024 10:51:01 GMT) Full text and rfc822 format available.

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

From: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
To: Nigko Yerden <nigko.yerden <at> gmail.com>
Cc: 70954 <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Fri, 17 May 2024 12:50:40 +0200
Hello Nigko, I can reproduce your bug by using Guix in a Debian testing
VM, their Debian guix package, and get
/gnu/store/2cl0dr63d900v6406hs10qgjsp7iaysi-guix-packages-base-modules.drv
like you.

The difference between bad (i.e. not substituted)
/gnu/store/2cl0dr63d900v6406hs10qgjsp7iaysi-guix-packages-base-modules.drv
and good
/gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv
are different out output hashes of referenced derivations.

When I stop the guix-daemon from the debian guix package and start a
pulled guix-daemon,

sudo systemctl stop guix-daemon.service
sudo ~/.config/guix/current/bin/guix-daemon --build-users-group=_guixbuild &

then I get the substitutable
/gnu/store/1mwhp5crimgvqd4jmlfsj3017yk8vxsv-guix-packages-base-modules.drv
instead.

Does Debian’s guix-daemon need to be patched somehow?  To be
investigated.

Nigko Yerden <nigko.yerden <at> gmail.com> writes:
> Sorry, I couldn't find any mention of substitute authorization at [1].

I should have linked to
https://guix.gnu.org/manual/devel/en/html_node/Binary-Installation.html
but it is not the cause anyway.

Regards,
Florian




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Fri, 17 May 2024 17:31:01 GMT) Full text and rfc822 format available.

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

From: Nigko Yerden <nigko.yerden <at> gmail.com>
To: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
Cc: 70954 <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Fri, 17 May 2024 22:29:47 +0500
Hello Florian,

These are great news! Thanks a lot for investigating this!

Indeed, foreign distros still run guix-daemon from Guix v1.4,
which is very old now. It makes sense that old guix-daemon + recent
remaining parts of Guix might have produced modified derivations.

For foreign distros using systemd, the following workaround may be
useful to replace old guix-daemon by guix-daemon from USER profile:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~guix-daemon.service
...
[Service]
ExecStart=/home/USER/.config/guix/current/bin/guix-daemon \
    --build-users-group=_guixbuild --discover=no \
    --substitute-urls='.....'

Environment='GUIX_LOCPATH=/home/USER/.guix-profile/lib/locale'
...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Regards,
Nigko




Reply sent to "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>:
You have taken responsibility. (Sat, 18 May 2024 12:16:02 GMT) Full text and rfc822 format available.

Notification sent to Nigko Yerden <nigko.yerden <at> gmail.com>:
bug acknowledged by developer. (Sat, 18 May 2024 12:16:02 GMT) Full text and rfc822 format available.

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

From: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
To: Nigko Yerden <nigko.yerden <at> gmail.com>
Cc: 70954-done <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Sat, 18 May 2024 14:15:07 +0200
Hello Nigko, I’m glad the problem is solved for you.

From testing old Guix System system generations, I believe September
2023’s new daemon feature “builtin:git-download” has caused the change
in hashes, but no further action is advisable.  I’m closing this bug.

But I would like to know, does \ work in systemd by now:

Nigko Yerden <nigko.yerden <at> gmail.com> writes:
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~guix-daemon.service
> ...
> [Service]
> ExecStart=/home/USER/.config/guix/current/bin/guix-daemon \
>     --build-users-group=_guixbuild --discover=no \
>     --substitute-urls='.....'
>
> Environment='GUIX_LOCPATH=/home/USER/.guix-profile/lib/locale'
> ...
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

or have you changed the ExecStart line for the e-mail?  The way I know,
\ cannot be used.  If this has changed, it could solve problems with
overlong lines in the cookbook PDF.

Regards,
Florian




Information forwarded to bug-guix <at> gnu.org:
bug#70954; Package guix. (Sat, 18 May 2024 15:45:04 GMT) Full text and rfc822 format available.

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

From: Nigko Yerden <nigko.yerden <at> gmail.com>
To: 70954-done <at> debbugs.gnu.org
Subject: Re: bug#70954: No 'guix pull' substitutes for foreign distros?
Date: Sat, 18 May 2024 20:43:42 +0500
Hello Florian,

> From testing old Guix System system generations, I believe September
> 2023’s new daemon feature “builtin:git-download” has caused the change
> in hashes
As far as I remember, approximately at that time, in the late
autumn, I have started to experience very long 'guix pull'.

> I’m closing this bug.
No objections.

> But I would like to know, does \ work in systemd by now
Yes, \ works in systemd service files. I didn't know that \ was forbidden
in the past.

Regards,
Nigko




This bug report was last modified 21 days ago.

Previous Next


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