all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: John Kehayias via Guix-patches via <guix-patches@gnu.org>
To: Maxime Devos <maximedevos@telenet.be>
Cc: "49339@debbugs.gnu.org" <49339@debbugs.gnu.org>
Subject: [bug#49339] [PATCH core-updates] gnu: mesa: Update to 21.1.4.
Date: Fri, 09 Jul 2021 15:34:29 +0000	[thread overview]
Message-ID: <vGU4MgkOeG3Tx8QPbrAdj_cb2L3IC00Eb8_NUmByhEJ-bH44AkG_mE3TuQcktoi2qdYCoy3Nxj6xlzCsPWjOlvMXUfU1YJdlASPWkZv7tj0=@protonmail.com> (raw)
In-Reply-To: <ff9db3620a35942a1d0aba98bcd85bbd3a85cf7e.camel@telenet.be>

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

On Friday, July 9th, 2021 at 8:48 AM, Maxime Devos wrote:

> Warning: I've no idea how building mesa and libglvnd works,
>
> how linking against mesa and libglvnd works, and how mesa and libglvnd
>
> work, besides ‘you can use the GL_... functions to do GL stuff’.
>
No worries, I also know very little here (just learning about libglvnd), so I'm no expert. However, I think it will be a little more complicated because libglvnd is meant to dispatch to a vendor's GL libraries at runtime. Meaning it will need to know where these libraries exist, which may require some changes for Guix.

> That said, it appears some package definitions expect "libGL.so" to be in mesa.
>
> (Search for "/lib/libGL" and "lib/libEGL" with 'git grep -F"').
>
> I've found about twenty such occurences, including libepoxy.
>
> So it appears that adding libglvnd to the propagated-inputs and fixing
>
> these twenty package definitions should be doable.
>
> Looking at libepoxy in particular:
>
> (let ((python (assoc-ref inputs "python"))
>
> (mesa (assoc-ref inputs "mesa")))
>
> (substitute* "src/gen_dispatch.py"
>
> (("/usr/bin/env python") python))
>
> (substitute* (find-files "." "\\.[ch]$")
>
> (("libGL.so.1") (string-append mesa "/lib/libGL.so.1"))
>
> (("libEGL.so.1") (string-append mesa "/lib/libEGL.so.1")))
>
> #t))))))
>
> it seems like the test failure isn't a false positive, as libGL.so.1 is searched
>
> for in the wrong location.
>
While I think getting builds and tests to pass is not so bad, I don't know that it will actually work the way it is supposed to (see above). I'm also a bit limited in what I can test directly. (For one thing, I'm on a foreign distro right now, which complicates GL testing. For example, Nix has https://github.com/guibou/nixGL for the "OpenGL problem" which may be something we should look at for this as well.)

> > Anyway, perhaps we want to tackle libglvnd separately? I don't think it is specific to the Mesa version change, but more of how we want to handle gl across packages. Still, it will involve changes to how we build Mesa as well as possibly other packages. I'm not sure that the Mesa version change will require other changes in dependent packages (I can only test a few on my own).
> >
> > How do you think we should proceed?
>
> I'd suggest adding libglvnd to propagated-inputs
>
> and adjusting the twenty package definitions to refer
>
> to libglvnd, and testing some graphical applications.
>
> "mesa-utils" has "glxdemo" and "glxheads" and has few dependencies,
>
> maybe start with that?
>
The more I think about it, the more I think we should tackle a change to Guix's GL system separately. The original patch enabled libglvnd in Mesa, but that has been around for a while and is not new to 21.1.x. I worry doing them at the same time would introduce two sources for anything breaking, though I hope the move to 21.1.x doesn't require any big changes elsewhere.

Personally, I'd like to see Mesa 21.1.x updated and make sure dependents are okay. We can then have a separate patch series that enables libglvnd in Mesa and adjusts all packages. We would need some people who can test that actually use different GL vendors to see that libglvnd does what it is supposed to. Perhaps Irfan can weigh in, since in their original patch they did have libglvnd and may have tested that it works.

Any experts on Mesa/libglvnd here to chime in? Is the minimal Mesa version update patch okay if we want to libglvnd separately?

Thanks,
John




  reply	other threads:[~2021-07-09 15:35 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-02 15:10 [bug#49339] [PATCH core-updates] gnu: mesa: Update to 21.1.4 Irfan S
2021-07-02 19:29 ` John Kehayias via Guix-patches via
2021-07-05 15:35 ` John Kehayias via Guix-patches via
2021-07-08  1:35   ` John Kehayias via Guix-patches via
2021-07-08  2:24     ` John Kehayias via Guix-patches via
2021-07-08 15:40       ` John Kehayias via Guix-patches via
2021-07-08 20:55     ` Maxime Devos
2021-07-09  2:41       ` John Kehayias via Guix-patches via
2021-07-09 12:48         ` Maxime Devos
2021-07-09 15:34           ` John Kehayias via Guix-patches via [this message]
2021-07-13 15:42             ` John Kehayias via Guix-patches via
2021-07-13 16:26               ` John Kehayias via Guix-patches via
2021-07-27 21:54                 ` John Kehayias via Guix-patches via
2021-07-13  4:45 ` [bug#49339] Irfan S
2021-07-28 21:35 ` [bug#49339] [PATCH core-updates] gnu: mesa: Update to 21.1.4 Kaelyn via Guix-patches via
2021-07-29  4:52 ` [bug#49339] [PATCH core-updates] gnu: mesa: Update to 21.1.6 John Kehayias via Guix-patches via
2021-07-31 10:33   ` bug#49339: [PATCH core-updates] gnu: mesa: Update to 21.1.4 Ludovic Courtès
2021-07-31 14:01     ` [bug#49339] " John Kehayias via Guix-patches via
2021-08-02 13:27       ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='vGU4MgkOeG3Tx8QPbrAdj_cb2L3IC00Eb8_NUmByhEJ-bH44AkG_mE3TuQcktoi2qdYCoy3Nxj6xlzCsPWjOlvMXUfU1YJdlASPWkZv7tj0=@protonmail.com' \
    --to=guix-patches@gnu.org \
    --cc=49339@debbugs.gnu.org \
    --cc=john.kehayias@protonmail.com \
    --cc=maximedevos@telenet.be \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.