Hi all, I'm planning to have a go at packaging scala. This is my first time packaging software of any kind, let alone for Guix, so guidance is appreciated!
I'm brand-new to scala, but it appears that building it from source involves circular dependencies. Here's the situation: - scala 2.12.1 is the latest version. To build it from source, a tool called "sbt" (scala build tool) is required. - sbt 0.13 is the latest version. To build it from source requires a prior version of sbt. - I was able to find older versions[1] of sbt which can be built with only scala. - scala 2.9.2 appears to be the last version that can be built with ant. So, to untangle this knot to achieve reproducibility, I was planning on first packaging scala 2.9.2, then the latest version of sbt that could be built with scala, then sbt 0.13 (which would be useful in its own right as a package), and then finally scala 2.12.1. The build for scala 2.9.2 attempts to pull some libraries from a remote source, so I'm assuming I'll need to also package those? For a new contributor, this is a pile of work, but I don't mind too much since my need drives me, and I'll be learning more about Guix in the process :) I do, however, want to confirm that this is a sane plan before I set out on this journey. It would be easier if I could just do a binary package to bootstrap the toolchain and back-fill when I have more experience, but I wasn't sure if that is acceptable. [1] - https://github.com/sbt/sbt-zero-seven -- Katherine