Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce SAGE_OPTIONAL_PACKAGES_ASSUME_INSTALLED env variable #36005

Closed

Conversation

antonio-rojas
Copy link
Contributor

Currently, the code in pkgs/sagemath-standard/setup.py that decides whether or not to build optional extensions relies on the is_package_installed_and_updated function, which is specific to sage-the-distro. Therefore, downstream distros need to patch this if they want to build optional extensions.

This PR introduces a SAGE_OPTIONAL_PACKAGES_ASSUME_INSTALLED env variable that distros can use to specify which optional extensions to build, regardless of the is_package_installed_and_updated output.

Eventually this code should be ported away from is_package_installed_and_updated and use pkgconfig to detect optional libraries instead, but in the meantime this will save distros some patching.

@mkoeppe
Copy link
Member

mkoeppe commented Jul 30, 2023

This code in pkgs/sagemath-standard/setup.py is only there for legacy monolithic installs (./configure --disable-editable --disable-wheels), and intended to be removed soon:

I'd strongly recommend that downstream use the new distributions sagemath-bliss etc. added in #35661 to build the optional packages.

@github-actions
Copy link

Documentation preview for this PR (built with commit bd096a2; changes) is ready! 🎉

@kiwifb
Copy link
Member

kiwifb commented Jul 30, 2023

It is neater than my own work around. But I pretty much drank the split package kool aid. I am quite happy that #35661 is merged because now, I will not have to treat develop and volker's branch differently from what I do the release. The downside is that I have more package to maintain.

I do not feel particularly inclined to review this positively given that the whole thing is finally going and I will not miss it. Splitting those optional things is much better than the half backed detection historical code. The fact that we had to tiptoe around sage packaging system and that now we do not need to anymore is welcome news to me.

@antonio-rojas
Copy link
Contributor Author

Alright, I'm happy as long as I can keep building everything from github.

@antonio-rojas antonio-rojas deleted the assume-installed branch July 30, 2023 22:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants