For everyone who is interested in the topic: Initial packaging for v6.24.02 is
now on Salsa [1]. Let me know if you have issues with building.

The following things still need to be done, orderd after importance:
- write a DEP-5 copyright
- remove builtins from the source tarball
- split the package sanely
- understand linking of libRInside.so
- package UNU.RAN [2]
- package VDT [3]
- package VecGeom [4]
- update Pythia8 [5, 6]

Some notes: the usual library splitting is basically impossible for ROOT.
There are several reasons for this, one being the insane amount of libraries, 142 to be precise. Some of them also have very general names like "libGui.so".
The other reason is that ROOT works less like boost, which also has a lot of
libraries, and more like one interwoven network of libraries where you want to
have all (or at least most) of them.
For these two reasons, libraries are installed to lib/multi-arch-triplet/root instead of lib/multi-arch-triplet, and a config for ld.so is added to pick the
libraries up. This isn't ideal of course, but better than the alternative.
Splitting thus will be more centered around additional dependencies, like for
example the Python interface of ROOT. But I haven't started with that yet.

The most important and still missing work is the DEP-5 copyright file. ROOT
has tons of files, and looking through them will take a significant amount of time. ROOT also includes some thirdparty dependencies which we don't want and need to remove from the source tarball. Since I'm wiriting my Bachelor thesis
at the moment, I don't have time for this anytime soon. If someone wants to
help with that, I would appreciate it.

Besides this, I'll still have to figure out how to properly link against the R library, one mail to the R team is probably enough but I haven't done it yet.

All important dependencies are already packaged in Debian, but there are some features that require additional dependencies. UNU.RAN can be used for random
number generation, but I haven't looked at the code yet at all. VDT can be
used for fast vectorized function, but the CMake build file require some heavy modification to be actually usable. VecGeom is relatively straight forward to
package and I will probably upload it in the near future, it is used for
vectorized geometry. Pythia8 is a Monte-Carlo event generator, the package is
in Debian, but completely outdated and unmaintained.

- Stephan

[1] https://salsa.debian.org/science-team/root
[2] http://statistik.wu-wien.ac.at/unuran/
[3] https://github.com/dpiparo/vdt
[4] https://bugs.debian.org/988526
[5] https://tracker.debian.org/pkg/pythia8
[6] https://pythia.org/

Reply via email to