Hi Thomas, Am 08.02.19 um 03:54 schrieb Thomas Finneid: [...] > I have been trying to read some of the documentation on package > mainteneance, especially "Debian New Maintainers' Guide" and the newer > "Guide for Debian Maintainers". > I havent been able to find yet, any documentation that describes the > entire build system, from package editing to building and publishing to > repositories. Is there a chapter or document that contains the entire > description? First of all thank you for your interest in helping us to improve Scala in Debian. Unfortunately none of the active team members is a Scala developer (yet), so any help is certainly welcome. IMO the best link for starters is https://mentors.debian.net/intro-maintainers Don't get overwhelmed with all the information. If you already know Debian a little, then I recommend to set up an unstable environment on your computer. You can either use schroot [1], a virtual machine, a dedicated partition (dual boot system) or use a spare computer and upgrade to Debian Sid. Then install all essential build tools. $ apt install build-essential devscripts Download all build-dependencies for scala and sbt $ apt build-dep scala sbt Download the source for scala and sbt and get familiar with the current packaging. Then find out how it can be improved. apt source scala sbt [...] > One question comes to mind, does building the debian package require the > upstream scala source or could one use the binary release of scala and > sbt (bearing in mind "binary release" means jvm bytecode)? The major challenge is that we can't rely on an external binary release unless we can build it from source ourselves. No prebuilt jar files and no downloads of external resources at build time. We want to fix https://bugs.debian.org/845113, upgrading to a newer version of scala, but we need to solve all open RC bugs in sbt first. https://bugs.debian.org/cgi-bin/pkgreport.cgi?repeatmerged=no&src=sbt We already have a version of sbt in Debian. I don't know if that can help with the boostrapping problem of newer versions. If that is not possible we need to find another way to build sbt from source without sbt itself. Ant will probably come to the rescue and someone has to write a build script. Hopefully this will solve the chicken and egg problem. > Thinking of it, not using the relase binaries, would make the resulting > compilation unsafe, as the CI system the scala team uses, contains an > integrity test part, which bootstraps the entire build. I dont knwo how > to set that up, if possible at all for anyone but the scala developers. If they have a CI system that bootstraps the entire build then there may be some clues for us how to achieve that in Debian too. We only have to do the boostrapping once. If you can build the latest version of sbt from source, the next upload could then use Debian's binary package of sbt to build sbt. Given the importance of sbt for newer scala versions, I suggest to concentrate on that first. Regards, Markus [1] https://wiki.debian.org/Schroot
Attachment:
signature.asc
Description: OpenPGP digital signature