* bug#36544: 'set-paths' should exclude 'source' from consideration
@ 2019-07-07 23:26 Mark H Weaver
2019-07-11 21:24 ` Ludovic Courtès
2020-06-01 4:51 ` Aiko Kyle
0 siblings, 2 replies; 5+ messages in thread
From: Mark H Weaver @ 2019-07-07 23:26 UTC (permalink / raw)
To: 36544
The 'set-paths' phase in (guix build gnu-build-system) currently
includes 'source' in the set of candidates for inclusion in the
search-path variables.
First of all, I think it's undesirable to include subdirectories of the
source directory in these search paths. However, if you think it's
desirable, there's another problem: it's fragile. It depends on:
(1) whether the source is a tarball or an unpacked checkout, and
(2) whether the subdirectories specified in the search-paths
(e.g. 'include') are within the top source directory.
Currently, if you change the 'source' field of a package from a tarball
to an (unpacked) VCS checkout, there *might* be additional components
added to the environment variables, depending on the source tree layout.
For example, this causes our 'linux-libre' package to fail to build if
you substitute its 'source' field for a git checkout, as Chris Webber
discovered here:
https://lists.gnu.org/archive/html/help-guix/2019-07/msg00058.html
https://lists.gnu.org/archive/html/help-guix/2019-07/msg00062.html
Also, if any package depends on the current behavior, it will break if
its 'source' is changed from a VCS checkout to a release tarball.
To avoid this unexpected sensitivity on the source origin method, I
suggest that we explicitly exclude 'source' from consideration within
the 'set-paths' phase. What do you think?
Also, does anyone know of other procedures that do something similiar?
Thanks,
Mark
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#36544: 'set-paths' should exclude 'source' from consideration
2019-07-07 23:26 bug#36544: 'set-paths' should exclude 'source' from consideration Mark H Weaver
@ 2019-07-11 21:24 ` Ludovic Courtès
2020-12-13 19:30 ` Leo Famulari
2020-06-01 4:51 ` Aiko Kyle
1 sibling, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2019-07-11 21:24 UTC (permalink / raw)
To: Mark H Weaver; +Cc: 36544
Hello,
Mark H Weaver <mhw@netris.org> skribis:
> The 'set-paths' phase in (guix build gnu-build-system) currently
> includes 'source' in the set of candidates for inclusion in the
> search-path variables.
Oh, that was certainly not intended.
> First of all, I think it's undesirable to include subdirectories of the
> source directory in these search paths. However, if you think it's
> desirable, there's another problem: it's fragile. It depends on:
>
> (1) whether the source is a tarball or an unpacked checkout, and
> (2) whether the subdirectories specified in the search-paths
> (e.g. 'include') are within the top source directory.
>
> Currently, if you change the 'source' field of a package from a tarball
> to an (unpacked) VCS checkout, there *might* be additional components
> added to the environment variables, depending on the source tree layout.
>
> For example, this causes our 'linux-libre' package to fail to build if
> you substitute its 'source' field for a git checkout, as Chris Webber
> discovered here:
>
> https://lists.gnu.org/archive/html/help-guix/2019-07/msg00058.html
> https://lists.gnu.org/archive/html/help-guix/2019-07/msg00062.html
>
> Also, if any package depends on the current behavior, it will break if
> its 'source' is changed from a VCS checkout to a release tarball.
Indeed, that’s terrible. I suppose we were just lucky not to hit such
issues before!
> To avoid this unexpected sensitivity on the source origin method, I
> suggest that we explicitly exclude 'source' from consideration within
> the 'set-paths' phase. What do you think?
I agree. We should do that in the next ‘core-updates’.
Ludo’.
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#36544: 'set-paths' should exclude 'source' from consideration
2019-07-11 21:24 ` Ludovic Courtès
@ 2020-12-13 19:30 ` Leo Famulari
2020-12-13 19:35 ` Marius Bakke
0 siblings, 1 reply; 5+ messages in thread
From: Leo Famulari @ 2020-12-13 19:30 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 36544
On Thu, Jul 11, 2019 at 11:24:55PM +0200, Ludovic Courtès wrote:
> > To avoid this unexpected sensitivity on the source origin method, I
> > suggest that we explicitly exclude 'source' from consideration within
> > the 'set-paths' phase. What do you think?
>
> I agree. We should do that in the next ‘core-updates’.
Now is a good time to make this change.
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#36544: 'set-paths' should exclude 'source' from consideration
2019-07-07 23:26 bug#36544: 'set-paths' should exclude 'source' from consideration Mark H Weaver
2019-07-11 21:24 ` Ludovic Courtès
@ 2020-06-01 4:51 ` Aiko Kyle
1 sibling, 0 replies; 5+ messages in thread
From: Aiko Kyle @ 2020-06-01 4:51 UTC (permalink / raw)
To: 36544
> > To avoid this unexpected sensitivity on the source origin
> > method, I
> > suggest that we explicitly exclude 'source' from consideration
> > within
> > the 'set-paths' phase. What do you think?
>
> I agree. We should do that in the next ‘core-updates’.
I recently ran into this bug myself and was surprised that there
would be a difference between building from a tarball and a git
checkout. It seems the fix should be fairly straight forward so
are there any plans to implement it?
Thanks,
Aiko
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-12-13 19:37 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-07 23:26 bug#36544: 'set-paths' should exclude 'source' from consideration Mark H Weaver
2019-07-11 21:24 ` Ludovic Courtès
2020-12-13 19:30 ` Leo Famulari
2020-12-13 19:35 ` Marius Bakke
2020-06-01 4:51 ` Aiko Kyle
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.