-
Notifications
You must be signed in to change notification settings - Fork 519
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
Make Updater.sh shell agnostic #1855
Comments
Not all bash scripts are compatible with Shell: https://www.gnu.org/software/bash/manual/html_node/Shell-Compatibility-Mode.html Therefore all script file should tested before run other interpreters. But ash is a shell implementation. Most of OS put /bin/sh to reference to default interpreter (which in your case /bin/ash). So for temporary solution on your local machine you try to change first line: https://github.com/arkenfox/user.js/blob/master/updater.sh#L1 as:
or
And run the script directly from your terminal. Then you can tell us the results please :) You will be the first tester :) |
The current scripts uses a lot more bash extensions than supported by busybox ash. You check that with shellcheck 0.10.0+ quit easily: Compatibility with more shells would only work when using a simpler standard like POSIX shell. |
@yusufdaglioglu when i put
|
|
@MagicalDrizzle Most of the fixes are trivial, I've got it down to five blocks of code that need a bit more thinking, |
@9ao9ai9ar I would be willing to be a tester for BusyBox. (plus the windows port and dash too for good measure) |
@MagicalDrizzle If it's a throwaway machine or VM you could start testing it already, though I've not run it a single time yet. There are a lot of options and a lot of platforms to test for, and since I'm still refactoring the code, just a simple smoke test to make sure I haven't done anything stupid and for me to collect knowledge on the capabilities and structures of lesser-known OSes is enough. Please report any issues to the linked pull request and include detailed info so I can diagnose them faster. Many thanks! |
My distros use busybox ash and the Updater.sh is using bash to work. I think making shell agnostic is better for just works in all systems.
Wha i expect is it just run as normal and i get this instead.
env: can't execute 'bash': No such file or directory
The text was updated successfully, but these errors were encountered: