conda-forge / staged-recipes

A place to submit conda recipes before they become fully fledged conda-forge feedstocks
https://conda-forge.org
BSD 3-Clause "New" or "Revised" License
706 stars 4.92k forks source link

Other low level X.org libraries #7453

Open jakirkham opened 5 years ago

jakirkham commented 5 years ago

We seem to be missing X11 packages for the X.org libraries libxdamage and libxxf86vm. Am not totally sure if these are reasonable for us to package. So am raising here to see if that is the case and if so to figure out what is needed to get that done. Feedback welcome :)

cc @pkgw @epruesse

pkgw commented 5 years ago

I mean, the X libraries that we do package are simply ones that were needed by other packages. If something new needs Xdamage or XF86VM, no reason not to start building them too. I didn't try to package every X library just because there are a whole lot of them.

I think both of these particular libraries are client-side libraries for stuff where the server does all the hard work, so my guess is that these would be very portable, and easy to package using the existing feedstocks as a template — as was recently done for Xinerama.

jakirkham commented 5 years ago

Thanks for the clarification. That makes perfect sense.

Personally get a little fuzzy on where we cross from building portable libraries to building things that are increasingly driver/hardware dependent. So wanted to check first. :)

Thanks for the pointers. Is there another relatively low-level feedstock that would make a good candidate as a template? Any thoughts on naming?

jakirkham commented 5 years ago

Adding libxext to the list as well as I don't seem to be finding it. Though happy to be corrected should I just be looking in the wrong place. :)

Edit: I was. Not sure why xorg-libxext didn't show up for me before. 😆

pkgw commented 5 years ago

I often get bitten by the fact that conda search foo gives different results than conda search '*foo*' ...

The key thing about the X stuff is that, by construction, the hardware-specific bits are generally in the server, and the client libraries just give interfaces to tell the server what to do. That's not always true, but we've already packaged some of the core libraries that involve unusual levels of client smarts. So, most libraries that remain unpackaged are probably actually going to be pretty portable — with the exception of GL stuff.

Anyway, the Xinerama feedstock should make for a fine template, since the library name is going to be very grep-able. Or were you thinking of making a genuine template repo?