Subject: Re: [bug#43654] [PATCH] Add perl-opengl

From: Malte Frank Gerdes <[email-masked]>
Date: Fri, 02 Oct 2020 21:33:04 +0200

> Hello,
>
> On Fri, Oct 02, 2020 at 12:13:43AM -0400, Kei Kebreau wrote:
>> > @@ -0,0 +1,5 @@
>> > +GLUT=20801
>> > +VERSION=3.0 Mesa 10.2.6
>> > +VENDOR=Intel Open Source Technology Center
>> > +RENDERER=Mesa DRI Intel(R) Ivybridge Mobile
>> I suppose the purpose of this glversion.txt is to avoid reproducibility
>> issues?  I see it was added as a "pretty ugly hack" in the nixpkgs
>> repository [1].  (Interestingly enough, this text file doesn't seem to
>> cause me any issues, even though my computer doesn't support OpenGL 3.0,
>> so I guess it's fine.)
>
> I also tried to package perl-opengl (as a prerequisite for slic3r); the
> problem is that during the configure phase it wants to do this:
>
> In order to test your GPU's capabilities, run this make under an X11 shell
> freeglut (./glversion): failed to open display ''
> make: *** [Makefile:24: glversion.txt] Error 1
>
> to create the file, which will presumably depend on the GPU in the build
> machine, a no-go. Nix works around this by providing a fixed file. I did not
> investigate whether this will work everywhere; it clearly leaks information
> on the machine where it was created. In my case, for instance, I got "Skylake"
> instead of "Ivybridge". It all feels a bit brittle; for instance, we have
> [email-masked] and @3.2.1 in Guix; I suppose "GLUT=20801" refers to @2.8.1.
> Will it work with a newer version? Our mesa is @20.0.8 and not 10.2.6.

I just tried to build with those variables set to arbitrary values:

--8<---------------cut here---------------start------------->8---
GLUT=99999
VERSION=3.0 Mesa 99.99.99
VENDOR=NoVendor
RENDERER=MesaRenderer
--8<---------------cut here---------------end--------------->8---

the package builds and no tests fail, so those might even be irrelevant,
but i cannot test it properly, because no program using perl-opengl is
packaged (and i can't manage to get slic3r packaged...).

Malte