GNU bug report logs - #37035
--with-graft tries to download source files and build them

Previous Next

Package: guix;

Reported by: <pkill9 <at> runbox.com>

Date: Thu, 15 Aug 2019 11:39:01 UTC

Severity: normal

To reply to this bug, email your comments to 37035 AT debbugs.gnu.org.

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#37035; Package guix. (Thu, 15 Aug 2019 11:39:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to <pkill9 <at> runbox.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Thu, 15 Aug 2019 11:39:02 GMT) Full text and rfc822 format available.

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

From: <pkill9 <at> runbox.com>
To: "bug-guix" <bug-guix <at> gnu.org>
Subject: --with-graft tries to download source files and build them
Date: Thu, 15 Aug 2019 12:38:09 +0100 (BST)
When running `guix build --dry-run --with-graft=mesa=mesa love`, Guix shows that it will try to download a bunch of source files for quite a few packages:

```
$ guix build --dry-run --with-graft=mesa=mesa love
The following derivations would be built:
   /gnu/store/0lfws1b85h6lkv09pp7q0439pd41qirj-love-11.1.drv
   /gnu/store/2spqmdn4s13r0z9d9hym25h4nfcl1r5g-sdl2-2.0.9.drv
   /gnu/store/aknpb0pgslx9jaidgvh8wrzl7j6nl3nn-fcitx-4.2.9.6.drv
   /gnu/store/8pk7gncsr1cfph8km8dhwk67q9d58c0k-libepoxy-1.5.3.drv
   /gnu/store/w0wxk5f2a44hksrbvwqxn1d6sx96hdyw-gtk+-3.24.9.drv
   /gnu/store/ydx7mg4bni0lfckw0r3x65icmfhr194k-xorg-server-1.20.5.drv
   /gnu/store/xnc6a1fjwlwfjpg0lwai3aq51rw5qwrc-extra-cmake-modules-5.55.0.drv
   /gnu/store/jp29lhdwhs3znbsbznxq9nd9zp5l8ds0-qtbase-5.11.3.drv
   /gnu/store/sblg1v3yxf41b89aaj4r47zcyhxs3az4-ibus-1.5.20.drv
   /gnu/store/a4ynsy7ras28jlgmrhfilkc0lnin21mw-libnotify-0.7.7.drv
   /gnu/store/d8gvjnrl584wc5pavppa3m3yvm3jaxpk-dconf-0.32.0.drv
76.4 MB would be downloaded:
   /gnu/store/4vl3vkvqv0hhr0rlzciq55l4j8c5lgdz-ibus-1.5.20.tar.gz
   /gnu/store/jpxqw86l1gxkfrp66h5mc747xf881hjm-gettext-0.19.8.1
   /gnu/store/9dgbqa3m412prwadpwg0ah7a3kv6fh9p-libnotify-0.7.7.tar.xz
   /gnu/store/aaha1wfv58b83fwp0fqg8b5nlpkw1bva-libmng-2.0.3
   /gnu/store/6qy0ni5msmg93a55wi5qmj96729c1fcf-vulkan-headers-1.1.112
   /gnu/store/3a3j7rnd49fr6papzd2r2i8f96ayxi1v-qtbase-everywhere-src-5.11.3.tar.xz
   /gnu/store/3n7yhbfl1gik3n64rmy1574djpc1w6m5-gperf-3.1
   /gnu/store/wkfsm7mv8rjawdkzi8chf7qy8l5dppkm-xorg-server-1.20.5.tar.xz
   /gnu/store/7w7fq1iy0jkap5np4q00cw4cllr0lkj5-libdmx-1.1.4
   /gnu/store/cc39n3mx1nswgwx7p8mbx7apy4j1w8yy-xtrans-1.3.5
   /gnu/store/l1nxv1asf958h9ww4iijypyk31mj3d3x-gtk+-3.24.9.tar.xz
   /gnu/store/9rzjddyd621n26av5hb6zn55r372fhnv-libepoxy-1.5.3.tar.xz
```



Information forwarded to bug-guix <at> gnu.org:
bug#37035; Package guix. (Thu, 15 Aug 2019 19:22:01 GMT) Full text and rfc822 format available.

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

From: Mark H Weaver <mhw <at> netris.org>
To: <pkill9 <at> runbox.com>
Cc: 37035 <at> debbugs.gnu.org
Subject: Re: bug#37035: --with-graft tries to download source files and build
 them
Date: Thu, 15 Aug 2019 15:20:58 -0400
Hi,

<pkill9 <at> runbox.com> writes:

> When running `guix build --dry-run --with-graft=mesa=mesa love`, Guix shows that it will try to download a bunch of source files for quite a few packages:
>
> ```
> $ guix build --dry-run --with-graft=mesa=mesa love
> The following derivations would be built:
>    /gnu/store/0lfws1b85h6lkv09pp7q0439pd41qirj-love-11.1.drv
>    /gnu/store/2spqmdn4s13r0z9d9hym25h4nfcl1r5g-sdl2-2.0.9.drv
>    /gnu/store/aknpb0pgslx9jaidgvh8wrzl7j6nl3nn-fcitx-4.2.9.6.drv
>    /gnu/store/8pk7gncsr1cfph8km8dhwk67q9d58c0k-libepoxy-1.5.3.drv
>    /gnu/store/w0wxk5f2a44hksrbvwqxn1d6sx96hdyw-gtk+-3.24.9.drv
>    /gnu/store/ydx7mg4bni0lfckw0r3x65icmfhr194k-xorg-server-1.20.5.drv
>    /gnu/store/xnc6a1fjwlwfjpg0lwai3aq51rw5qwrc-extra-cmake-modules-5.55.0.drv
>    /gnu/store/jp29lhdwhs3znbsbznxq9nd9zp5l8ds0-qtbase-5.11.3.drv
>    /gnu/store/sblg1v3yxf41b89aaj4r47zcyhxs3az4-ibus-1.5.20.drv
>    /gnu/store/a4ynsy7ras28jlgmrhfilkc0lnin21mw-libnotify-0.7.7.drv
>    /gnu/store/d8gvjnrl584wc5pavppa3m3yvm3jaxpk-dconf-0.32.0.drv
> 76.4 MB would be downloaded:
>    /gnu/store/4vl3vkvqv0hhr0rlzciq55l4j8c5lgdz-ibus-1.5.20.tar.gz
>    /gnu/store/jpxqw86l1gxkfrp66h5mc747xf881hjm-gettext-0.19.8.1
>    /gnu/store/9dgbqa3m412prwadpwg0ah7a3kv6fh9p-libnotify-0.7.7.tar.xz
>    /gnu/store/aaha1wfv58b83fwp0fqg8b5nlpkw1bva-libmng-2.0.3
>    /gnu/store/6qy0ni5msmg93a55wi5qmj96729c1fcf-vulkan-headers-1.1.112
>    /gnu/store/3a3j7rnd49fr6papzd2r2i8f96ayxi1v-qtbase-everywhere-src-5.11.3.tar.xz
>    /gnu/store/3n7yhbfl1gik3n64rmy1574djpc1w6m5-gperf-3.1
>    /gnu/store/wkfsm7mv8rjawdkzi8chf7qy8l5dppkm-xorg-server-1.20.5.tar.xz
>    /gnu/store/7w7fq1iy0jkap5np4q00cw4cllr0lkj5-libdmx-1.1.4
>    /gnu/store/cc39n3mx1nswgwx7p8mbx7apy4j1w8yy-xtrans-1.3.5
>    /gnu/store/l1nxv1asf958h9ww4iijypyk31mj3d3x-gtk+-3.24.9.tar.xz
>    /gnu/store/9rzjddyd621n26av5hb6zn55r372fhnv-libepoxy-1.5.3.tar.xz
> ```

You asked Guix to build something, so it's not surprising to me that it
might need to download some source code to do that.

Can you spell out more clearly what you expected to happen differently,
and why you think Guix is acting improperly here?

     Thanks,
       Mark




Information forwarded to bug-guix <at> gnu.org:
bug#37035; Package guix. (Sun, 18 Aug 2019 05:56:01 GMT) Full text and rfc822 format available.

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

From: <pkill9 <at> runbox.com>
To: "Mark H Weaver" <mhw <at> netris.org>
Cc: 37035 <37035 <at> debbugs.gnu.org>
Subject: Re: bug#37035: --with-graft tries to download source files and
 build them
Date: Sun, 18 Aug 2019 06:55:08 +0100 (BST)
Hi,

> You asked Guix to build something, so it's not surprising to me that it
> might need to download some source code to do that.
> 
> Can you spell out more clearly what you expected to happen differently,
> and why you think Guix is acting improperly here?
> 
>      Thanks,
>        Mark

Originally I expected it to attempt to graft mesa onto the love package, even though it's the exact same input, however after running `guix build --dry-run --with-graft=subversion=subversion git` I see that it shouldn't output anything (same as running `guix build` with a package you already have all substitutes for).

If I run `guix build --dry-run love` it shows that it will just download the substitute for "love", not build anything else from source, so grafting mesa onto it (even though it's the same input) shouldn't try to build anything from source.

Also just to note, in this example grafting "mesa" onto itself is just as an example, not for a useful reason. An example that doesn't try to build anything is running `guix build --dry-run --with-graft=subversion=subversion git`.

As an example of a graft that works, if you put this in a file and build it with `guix build -f <file>`, it will successfully graft the "hello" package (with the name and version changed) onto the "git" package:

```
(use-modules (guix packages) (gnu packages base) (gnu packages version-control))

(define new-subversion
  (package (inherit hello)
           (name "subversion")
           (version (package-version subversion))))

(define new-subversion-graft
  (package (inherit subversion)
           (replacement new-subversion)))

(define with-new-subversion
  (package-input-rewriting
    `((,subversion . ,new-subversion-graft))))

(with-new-subversion git)
```

You can see that it worked by running `/gnu/store/...-git-2.22.0-svn/libexec/git-core/git-svn`, and it will fail with a bunch of errors, unlike the ungrafted package.



This bug report was last modified 5 years and 298 days ago.

Previous Next


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