guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#41294] [PATCH] gnu: Add libfreenect.


From: Ekaitz Zarraga
Subject: [bug#41294] [PATCH] gnu: Add libfreenect.
Date: Sat, 16 May 2020 10:18:26 +0000

Hi,

On Saturday, May 16, 2020 5:48 AM, <address@hidden> wrote:

> We generally try to enable all optional features when adding a package,
> I'd go with:
>
> 1.  Build the python bindings by default.
> 2.  Try seperate the python bindings into another output. (eg: newt)
> 3.  If 1 and 2 seems difficult, try add a seperate package for the
>     python bindings, and it better only contains the bindings, reuse the
>     original package as input. (eg: python-libxml2)
>
> 4.  If not feel lucky, just leave a TODO comment for it...
>

I don't really like the first because it forces you to add a python interpreter 
that is not needed otherwise.
2 and 3 sound good to me.
It can handle both python2 and 3. What would you do with that?
Maybe make option 3 and add two outputs to that with python2 and python3? Or 
two different packages?
(or just forget the python2?)

>
> > -   The package is 300 megs checking `guix size` that's because it has some 
> > testing binaries that have extra dependencies. If only the library is 
> > compiled it doesn't depend on GLUT and that reduces the size a lot. I tried 
> > to separate the package's outputs but I don't know how to do it correctly 
> > (I checked the docs but it doesn't go in detail). I'd like to do it but I 
> > need some help.
>
> To define a packages with multiple outputs:
>
> -   Decide what ‘outputs’ can be made, eg: ‘doc’, ‘bin’, ‘examples’,
>     etc. In this case, I’d add an ‘examples’ output, to put those
>     ‘freenect-*’ binaries, built from the “examples” directory.
>
> -   Add an ‘outputs’ field, it default to ‘(list "out")’, We’d use
>     ‘(outputs '("out" "examples")’.
>
> -   Modify the install flags or phases to get files into their output
>     directory. Sometimes we can configure the target directory by flags,
>     but usually we have to move the files around after the install phase…
>
>     You can see ‘newt’ in ‘gnu/packages/slang.scm’ for a example.

Great! Thank you. That's more or less what I understood from some code examples 
I checked but they were complex and I tried to make the same thing and didn't 
work for me. I'll give it a new try with this example.

Inputs can also be defined with an extra argument for different outputs, right? 
It should be something like:

`(inputs `("freeglut" ,freeglut "examples"))

Am I right?

>
> > -   I'm not sure if the file where I added it is a good choice.
>
> Same here, we can always move it later…

Yeah, sure.

Thank you very much for your help.

Best,
Ekaitz





reply via email to

[Prev in Thread] Current Thread [Next in Thread]