Port cook.sh to Rust with Ion recipes
The cook build system (cook.sh
in the cookbook
repo) should be ported to Rust, with individual recipes as Ion scripts.
Advantages
- This can integrate better with both the pkgutils code and with the installer, since they are all in Rust
- Naturally Redox should prefer our own Ion shell over Bash; if it is worse in some way, let's fix that
- Using Ion also avoid a dependency on Bash when running under Redox (though of course, a lot of C software will still require a bourne shell to compile)
- Ion can be embedded in the program as a library
Other considerations
This involves rewriting cook.sh
and all the recipes, so it is a good time to consider other improvements to the way to cookbook works. I think it would be better to not include functions for compiling Rust code by default, but instead have a way to explicitly importing the "template" for Rust recipes. This means an extra line of boilerplate for Rust recipes, but then the C recipes will not need the boilerplate empty functions for test/update just to disable the Rust versions.
Code
I have started this, though there's still much to do: https://github.com/ids1024/pkgutils/tree/cook/src