Differences between revisions 36 and 37
Revision 36 as of 2006-11-25 16:40:55
Size: 6090
Comment:
Revision 37 as of 2007-05-17 19:02:14
Size: 6698
Comment:
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
== The plan for official Debian packages == == Breaking news (17/05/2007): ROOT accepted for experimental ==

See end of bug [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=325306 325306].

You will be able to use your favorite "experimental" mirror to download and install the packages. Just put
{{{
deb ftp://ftp.NN.debian.org/debian/ ../project/experimental main contrib
}}}
where '''NN''' is your mirror country code, into your ''/etc/apt/sources.list'' or ''/etc/apt/sources.list.d/experimental.list''.
 
== Future plans ==
 * The intent is to upload ROOT "development" versions '''5.''odd''.''xx'' ''' only to "experimental", and ROOT "production" versions '''5.''even''.00''' to "unstable", allowing the production versions to propagate into testing and stable over time.
 * Unfortunately the next production release of ROOT, '''5.16.00''', is not expected until post-Etch, but we intend to upload ROOT 5.16 to [http://backports.org backports.org] for Etch users once it is in unstable.
 * Next production release of ROOT ('''5.16.00''') is planed for June 27, 2007. We will make packages of that, and upload to "unstable".

== History ==
Line 15: Line 30:
   * The intent is to upload ROOT "development" versions '''5.''odd''.''xx'' ''' only to "experimental", and ROOT "production" versions '''5.''even''.00''' to "unstable", allowing the production versions to propagate into testing and stable over time.
   * Unfortunately the next production release of ROOT, '''5.14.00''', is not expected until post-Etch, but we intend to upload ROOT 5.14 to [http://backports.org backports.org] for Etch users once it is in unstable.

1. ROOT for DebianScience

Obsolete text formerly on this page has been archived at ["DebianScienceROOT/Obsolete"].

1.1. Breaking news (17/05/2007): ROOT accepted for experimental

See end of bug [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=325306 325306].

You will be able to use your favorite "experimental" mirror to download and install the packages. Just put

deb ftp://ftp.NN.debian.org/debian/ ../project/experimental main contrib

where NN is your mirror country code, into your /etc/apt/sources.list or /etc/apt/sources.list.d/experimental.list.

1.2. Future plans

  • The intent is to upload ROOT "development" versions 5.odd.xx only to "experimental", and ROOT "production" versions 5.even.00 to "unstable", allowing the production versions to propagate into testing and stable over time.

  • Unfortunately the next production release of ROOT, 5.16.00, is not expected until post-Etch, but we intend to upload ROOT 5.16 to [http://backports.org backports.org] for Etch users once it is in unstable.

  • Next production release of ROOT (5.16.00) is planed for June 27, 2007. We will make packages of that, and upload to "unstable".

1.3. History

  • [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=325306 ITP] submitted by ChristianHolm.

    • Packages uploaded to [http://ftp-master.debian.org/new.html NEW] queue on April 27, 2006, by KevinMcCarty and ChristianHolm. These were targeted for "experimental".

    • FTPmaster rejected these packages on the grounds of licensing issues. In the mean time, these issues have been worked out with the upstream authors and 3rd party developers.
    • Since then, the debian/copyright file has been greatly expanded, and the copyright holders of the non-free material were contacted and agreed to relicense it under LGPL. New ROOT packages targeted at "experimental" were uploaded to the NEW queue on November 3, 2006.
    • These packages were unfortunately rejected due to "too generic name". We (KevinMcCarty and ChristianHolm) have asked the FTP masters for input on names that would be acceptable, but so far we have had no response.

    • To use the experimental archive, add the following to your "/etc/apt/sources.list", where "NN" is your favorite mirror (say, us, no, fi, jp, or dk), and run "apt-get update":

        deb ftp://ftp.NN.debian.org/debian/ ../project/experimental main

1.4. The current unofficial repository

1.5. Technical issues for packaging

The approach is that the ROOT source tree contains [http://root.cern.ch/viewcvs/build/package/lib/ scripts] and [http://root.cern.ch/viewcvs/build/package/common templates] to deal with packaging in general (that is for Debian and RPM), as well as some [http://root.cern.ch/viewcvs/build/package/debian Debian] and [http://root.cern.ch/viewcvs/build/package/redhat RPM] specific templates.

The debian packaging directory is then build by running the script [http://root.cern.ch/viewcvs/build/package/lib/makedebdir.sh makedebdir.sh], followed by fakeroot debian/rules debian/control. The packaging scripts will try to build as many packages as possible on the build host. Note, that that sometimes means that you can get packages that wouldn't be possible on a pristine build system.

Note, that this scheme does not change the way the packages are built. It merely changes how the debian directory is prepared. After the debian directory is made, the developer can still tweak it to fit the system. Of course, such tweaks should eventually be propegated back to the packaging scripts in ROOT itself, to assure consistency.

In the eventual "official" Debian packages to come, the package maintainer would presumably run these two commands himself before dpkg-buildpackage, and the results of the commands (for instance the debian/ directory) would therefore enter into the diff.gz of the source package. Thus the source package uploaded to Debian would always be buildable with the normal steps of dpkg-buildpackage -rfakeroot.

If an end-user does apt-get source root and then re-runs the makedebdir script, it will overwrite the existing debian directory with information about the dependencies installed on the end-user's system. Hence an end-user may recompile Debian packages of ROOT building with support for unofficial (non-DFSG-free) libraries.

It is important that the maintainer ensure that he has all the needed "official" build-depends installed on his system when running the makedebdir.sh script, and none of the "unofficial" non-DFSG-free libraries (e.g. Pythia) installed, perhaps by building on a pristine machine or in a pristine chroot. That is, use pbuilder :-). In any case, official packages are not allowed to munge debian/control in such a way that their Build-Depends change during the dpkg-buildpackage step!

1.6. Licensing

1.7. Thanks