-
-
Notifications
You must be signed in to change notification settings - Fork 9.9k
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
Cross-platform all
bottles: shebangs
#11227
Comments
If I remember well, Apple plans to drop all scripting languages (like ruby, Python, ...). Don't know what is the fate of system perl. On the other hand they started providing Python 3 through the CLT, so their way of doing things is not super consistent. |
Yeah they do plan to do something, albeit it's not very clear exactly what. They say "future versions of macOS won’t include scripting language runtimes by default, and might require you to install additional packages." "Additional packages" might refer to the CLT, but this would indeed still be a concern for us since we do support the no-devtools case. |
👍🏻 How/why does this happen, is it just
They've announced it but I wouldn't bet on it happening for a good while. While we still have system libraries/languages: let's use them. That's kinda why Homebrew originally came into creation. |
Pretty much yes.
|
Ah, this is pretty much only a thing because of |
Perl's |
Gotcha. Makes sense to me to do it for Python/Perl, then 👍🏻. Thanks @Bo98! |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
This was addressed in #11286. |
Provide a detailed description of the proposed feature
One key difference between macOS and Linux is how we use system Perl (and other scripting languages) on macOS but use brewed Perl on Linux.
This leads to different shebangs in some cases, with macOS pointing to
/usr/bin/perl
and Linux pointing toHOMEBREW_PREFIX/opt/perl/bin/perl
.In order to achieve cross-platform bottles, we could use keg-relocation logic to replace the shebangs with
@@HOMEBREW_PERL@@
which can be replaced with the correct shebang at pour time.What is the motivation for the feature?
Achieving cross-platform
all
bottles where possible.How will the feature be relevant to at least 90% of Homebrew users?
Formulae which have
all
bottles can be installed on any platform without having to build from source - rather than be limited to just what we run CI on.What alternatives to the feature have been considered?
An alternative is to stop using system Perl and use brewed Perl universally.
The text was updated successfully, but these errors were encountered: