Closed b1ek closed 1 week ago
i feel like we shouldn't optimize for portability. it will obviously be nice to have, but not with bash's limitations. as well as we just don't have enough brain power to work around every possible aspect in bash.
we are going to need to either build our own runtime binary library thingy or depend on a hell lot of shit (like jq
and bc
)
I had the same issue as @b1ek .
If I were to add a question, it would be the following:
sh
instead of just bash
?Personally, I think it's better to reduce the dependency on external commands as much as possible and simplify Amber. I think it would be better to enrich the ecosystem for writing scripts with Amber.
In addition to that, we could prepare a separate Amber extension library.
For example, by specifying a Git repository with import
, it can be incorporated into the generated shell script.
The dependency on each extension library can be determined by the user individually.
If we make such an assumption, I think it would be possible to maintain compatibility with sh
.
download
function we should have some fallbacks for the various commands
sed
has some different parameters)sh
.@b1ek @arapower @Mte90
sh
and only rely on the runtime... which would be really cool and more future proof. For a stable release I think that we should go this route. amber
should be treated like the full package. I think that we have to iterate a bit to see whether we need to pivot and build something external i.e. "the manager"To be honest I don't see Amber to work at all with a ton of dependency commands. We need to build a one runtime that can work with Amber. The only problem will be to handle permissions and where to store the runtimes. Perhaps we will build the runtime installer into an Amber script that will ask the questions if the person wants to download the Amber runtime installer and where shall it be stored.
We'd also have to answer this question:
This should be a discussion instead of an issue. Converting.
we should figure out what amber is, and/or wants to be.
there have been already a few problems because there isn't a clear definition of exactly what goals does amber has, mainly about runtime dependencies.
so, there are a few questions that need answering so that we could actually know what it is that we are building:
cargo
orclang
?cargo
, that would mean we would be adding a lot of CLI arguments and then some higher level program will wrap it nicely in a config file or somethingi have probably missed a few more important questions, so either edit the post to add them or comment them down