The Mono 2.0 transition [Phase 1 complete: core stack]

Jo Shields directhex at apebox.org
Fri Nov 28 00:17:40 GMT 2008


Dear all,

1 week after my initial message, phase 1 of the Mono 2.0 transition, the
core stack, is now complete (or near enough, anyway). Many thanks to the
Debian pkg-mono team, Mirco Bauer & David Paleino for their work; many
thanks to Colin Watson and Martin Pitt for their responsive help with
sponsorship and uploads for Jaunty.

Now begins the community effort.

By now, anyone building remotely Mono-related packages for Jaunty will
have noticed a FTBFS problem - and "remotely" means not only headline
Mono apps like Tomboy, but also seemingly tangential things like
kde4bindings. That's to be expected - the transition is not opt-in, it's
necessary for the promised space savings to happen.

I'm going to quote myself here, since this is the stage we're currently
at, and it's worth updating and clarifying earlier points:

> == So how can I help? ==
> 
> It is unlikely that you can help with phase 1 - that'll be between me,
> ubuntu-main-sponsors, and a couple of other people such as Mirco Bauer
> and David Paleino, who are preparing the core packages in SVN.

Done!

> Stages 2 and 3 are where Ubuntu can show off what a team like the MOTUs
> can achieve - the prediction I've been given for doing this work
> independently is 1-2 months, I reckon Ubuntu can get it done in a
> fraction of the time.

About 40 applications form part of phase 2. The sooner it's done, the
sooner we make Jaunty more slim & slender!

> I've written instructions for packagers, following an example package.
> These are detailed on
> http://wiki.debian.org/Teams/DebianMonoGroup/Mono20Transition#head-67c13a005dab7f510b0fd1ee8db7a30689e89669 but I'll repeat the basics here:
> 1) Change your build-dependencies and replace all mono-{g}mcs,
> mono-X-devel and mono-gac dependencies with: "mono-devel"
> 2) Bludgeon the build system into using 'csc' as a compiler, instead of
> 'mcs' or 'gmcs'. The wiki page gives a patching example, and a
> debian/rules environment variable example

This is in best-case, pretty simple to achieve. Follow the two steps
above, run a test compile, and double-check your build log and your
package dependencies for any unwanted signs that the transition isn't
doing its job. Signs that you've got a 'problem case' are:

* Binary dependencies on packages with '1.0-cil' in the name (this may
be correct for some cases. If in doubt ask!)
* Mention of 'mcs' or 'gmcs' the the build log (we've found a couple of
apps now where ./configure takes the name of the compiler, and the
makefiles have it hardcoded anyway)

Problem cases can be solved! If you would like help, then IRC is your
best bet (see the end of this message).

> == So I just make a Xubuntu1 package? ==
> 
> Yes, but there are a few guidelines which will really help with the
> Ubuntu-Debian relationship:
> 
> * If you need to make a change to something in a package's debian/
> folder, please send a .diff to pkg-mono-devel at lists.alioth.debian.org
> with that change

This generally means changes to debian/rules and debian/control (i.e.
hopefully the majority of cases)

> * If you need to make a change to something outside a package's debian/
> folder, please send a .dpatch to pkg-mono-devel at lists.alioth.debian.org

This generally means changes to Makefiles or configure scripts, due to a
broken upstream which ignores your compiler settings

> * If you need to make a change to something outside a package's debian/
> folder, and the package does not already build-depend on dpatch, then
> please integrate dpatch into the build process, create a .dpatch with
> the change you wanted to make, and send a .diff of the processed package
> (both adding dpatch, and the dpatch file itself, in the same diff) to
> pkg-mono-devel at lists.alioth.debian.org

If one of the pkg-mono teams (shown in green on the wiki page below) is
the maintainer, then we're happy to accept Quilt now too as an
alternative to dpatch

> * If the package in question is not really a Mono package, but has a
> version in Debian Experimental (OOo, I'm looking at you), then please CC
> them any patches (as the migration will affect them too soon) via their
> preferred contact mechanism

I spent the last couple of days working on a patch for this, which is in
the hands of both Debian and Ubuntu packagers - the other example of
this kind of package right now is kde4bindings, which I haven't looked
at

> * If you notice a package is team-maintained by pkg-mono, but hasn't
> seen any love in a while, consider making an upstream version update,
> and telling us about it. Perhaps you could even take over that package
> in our SVN repository, benefiting both distributions now & later?

This is an excellent alternative to Ubuntu-only updates via Universe -
significantly more distributions benefit from your work, and we'll
gladly accept help from people wanting to give some extra love to a
package that needs it

> * If you notice a package is not team-maintained by pkg-mono, but hasn't
> seen any love in a while, consider making an upstream version update,
> and telling us about it. Perhaps you could even take over that package
> in our SVN repository, benefiting both distributions now & later?

Again, a great option for a package whose maintainer is too busy on
other things these days. At the very least, consider speaking with the
maintainer to see how they feel about letting you take over - if you
want to, of course

> * If you're not sure what to do, contact us (see below)

> == It's all broken. Do we get support on this? ==
> 
> Yes. If you want interactive support, please join #debian-mono on OFTC.
> For mail-based support, please contact
> pkg-mono-devel at lists.alioth.debian.org
> 
> I should set up a wiki.debian.org page for collaboration (or at least so
> people can register what they're working on), but it's pretty late and I
> doubt I'll get time tonight.

This Wiki page is now set up, here:
http://wiki.debian.org/Teams/DebianMonoGroup/Mono20TransitionTODO

To avoid duplicated work, it's important to assign yourself a package if
you're working on it. If you don't have a Debian Wiki account, then
they're easy to get (and very useful for collaboration with Debian
teams).

Again, any help, just ask via mail or IRC - and we look forward to your
assistance with this transition!

--Jo Shields, pkg-mono team
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/ubuntu-devel/attachments/20081128/8768a1fa/attachment-0001.pgp 


More information about the ubuntu-devel mailing list