Open cap10morgan opened 2 years ago
If we go the tools.deps pre-install route, we would need to copy / symlink the clojure-tools-[version].jar
file into $HOME/.deps.clj/[version]/ClojureTools/
.
Or... just invoking bb clojure
in the image build should do it for us.
Would love a bb
variant.
Or would it be better to build these on top of the existing tools-deps images (so they already have the latest version of that pre-installed)?
I think that's better. The size benefit of omitting it should hardly be noticeable and it's useful to have both imo (e.g. for tooling that depends on it).
Adding in some more context as one of the maintainers of babashka and an actual need for this:
Docker recently introduced a fee of 9$/member for teams and removed free teams. We currently push our images to https://hub.docker.com/r/babashka/babashka and this is affected by this. One solution to this is pushing bb flavoured images as part of this.
We think that this is a good reason to consider this and should bring the standard clojure and the bb variants closer and be more coherent.
Slack thread: https://clojurians.slack.com/archives/CLX41ASCS/p1678813448403629
cc @Quantisan
If this is something that is worth considering, I am volunteering to maintain and keep it upto date and implement the CI automation for this too.
Big +1 for adding Babashka into all image variants. The task runner greatly improves the developer experience for tools.deps projects. It would be great to be able to invoke our tasks in CI to build and deploy.
Babashka is a pretty nifty little tool that can pretty much replace a direct installation of tools.deps with its
bb clojure
invocation (it will install the latest / desired version of tools.deps on demand).It might be nice to provide clojure image variants with only babashka installed as the build-tool. Or would it be better to build these on top of the existing tools-deps images (so they already have the latest version of that pre-installed)?