a-shell
a-shell copied to clipboard
Package manager
This would be nice to have a Homebrew like package manager.
As much as homebrew would be really neat, it only supports x86 & x86_64 at present. While there is a TigerBrew fork that includes PPC support, there does not appear to be an ARM variant at present.
There are however multiple other package sources that include aarch64 packages, as well as those that are source based.
Any news on that?
The AppStore rules are that all binaries must be present when the app is submitted for approval. That makes it (currently) incompatible with any kind of homebrew-like package manager.
There is a workaround with WebAssembly because wasm files are (technically...) not binaries but text files, and also because the execution is done by Apple's own wasm JIT compiler (so it's their security). Unfortunately, WebAssembly is still quite limited, and most packages cannot be compiled (anything that uses exceptions, or setjmp()/longjmp(), or threads, or forks... cannot be compiled to WebAssembly for now).
So the answer remains: not yet, but I keep trying regularly.
Does a-shell have compiling capabilities ?
Yes: there is clang, clang++ and make. You can compile packages to WebAssembly, and they will be executed (just type "a.out" at the prompt, a-Shell will recognize it's a WebAssembly file and run it).
But, and that's a very big but:
- no shell means no way to run "./configure", which means most of the existing packages won't compile.
- even if you get past this, many packages won't compile to WebAssembly. Most GNU packages assume that you have tons of GNU libraries available, which we don't. And many of these libraries use setjmp()/longjmp(), which won't work in WebAssembly.
So: compiling your own projects, yes. Compiling existing packages distributions... mostly no.