[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: old version of scala



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


Reply to: