You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently sandbox shell is hardcoded to be /bin/sh. This is problematic since it can wildly vary how it works. If system has bash as primary shell, which is common, then /bin/sh will be a very much extended version of POSIX shell so many scripts written with it will not be compatible with eg dash. On the other hand, it is also not full bash. Many projects like freedesktop-sdk expect to be able to write bash syntax in command so it would really be ideal that sandbox grows a variable shell with default value set to /bin/sh for backwards compatibility. When set to eg /bin/dash or /bin/bash, then that entrypoint will be used inside build sandbox.
The text was updated successfully, but these errors were encountered:
I am not proposing using SHELL variable for this. It would be a surprising change since users might be setting something there assuming it takes effect on interactive shell but not build shell. For some reason BuildStream is setting that by default. At least make is actively ignoring on Linux SHELL environment variable.
Currently sandbox shell is hardcoded to be /bin/sh. This is problematic since it can wildly vary how it works. If system has bash as primary shell, which is common, then /bin/sh will be a very much extended version of POSIX shell so many scripts written with it will not be compatible with eg dash. On the other hand, it is also not full bash. Many projects like freedesktop-sdk expect to be able to write bash syntax in command so it would really be ideal that sandbox grows a variable
shell
with default value set to/bin/sh
for backwards compatibility. When set to eg/bin/dash
or/bin/bash
, then that entrypoint will be used inside build sandbox.The text was updated successfully, but these errors were encountered: