Differences between revisions 21 and 22
Revision 21 as of 2011-07-19 08:12:25
Size: 4376
Comment:
Revision 22 as of 2011-07-19 09:05:51
Size: 3359
Comment:
Deletions are marked like this. Additions are marked like this.
Line 24: Line 24:
 * '''Team Documentation''': [[/RubyExtras]]. In particular, see the [[/RubyExtras/JoiningTheTeam|Joining the Team]] page.  * '''Team Documentation''': [[/RubyExtras]]. In particular, see the [[/RubyExtras/JoiningTheTeam|Joining the Team]] page. Note that ome of the docs are outdated, especially after the switch from Svn to Git.
Line 27: Line 27:
 * [[http://git.debian.org/?p=pkg-ruby-extras/pkg-ruby-extras.git;a=summary|Git repository]]  * [[http://git.debian.org/?p=pkg-ruby-extras/pkg-ruby-extras.git;a=summary|Git repository (to be used with mr, see team documentation)]]
Line 30: Line 30:
 * The [[/RubyInWheezy]] page documents the current packaging practices.
Line 33: Line 35:
 * <<Icon(star_on.png)>><<Icon(star_on.png)>> Checkout the SVN repository, and see if you can improve the existing packages. There are many things that can be improved!  * <<Icon(star_on.png)>><<Icon(star_on.png)>> Checkout the Git repository, and see if you can improve the existing packages. There are many things that can be improved!
Line 41: Line 43:
=== Revamp the libraries packaging helper ===
<<Icon(star_on.png)>><<Icon(star_on.png)>><<Icon(star_on.png)>><<Icon(star_on.png)>>
Our current approach is based on cdbs, and duplicates a lot of code between binary packages when we provide both 1.8 and 1.9.X packages. It would be much better if we only had one package when the library works with both.
Also, we need somehow to work with rubygems (this is a bit too hard currently). The approach could be:
 * have a [[/gem2tgz|gem2tgz]] script that generates a clean tarball as a basis for packaging work.
 * have a [[/dh-make-ruby|dh-make-ruby]] script that converts the tarball into a Debian source package, using the gem metadata as a basis
 * have a dh_ruby helper that would handle installing with either a modified setup.rb or a modified extconf.rb, run tests, etc.
Many things need to be well thought, like how to handle dependencies. Which makes this task quite hard to approach.

=== Use the alternatives system ===
<<Icon(star_on.png)>><<Icon(star_on.png)>><<Icon(star_on.png)>>
The alternatives system would allow to easily switch between Ruby 1.8 and Ruby 1.9.X (instead of the current "/usr/bin/ruby is a symlink to ruby1.8" approach). However, this requires rethinking how we package Ruby applications and libraries, to make sure that those that only work with one particular Ruby version will be correctly treated. We cannot just break them all.
=== Finish the transition to gem2deb ===
<<Icon(star_on.png)>>
We are currently transitioning from a cdbs-based packaging tool to gem2deb, a modern dh-based tool. See [[/RubyInWheezy]] for details.

The Debian/Ruby Teams

The Debian/Ruby teams maintain the Ruby interpreters, libraries and applications. There are actually two different Ruby teams in Debian:

  • the pkg-ruby team, which maintains the interpreter
  • the pkg-ruby-extras team, which maintains libraries and applications

Both teams share some infrastructure, and have common members.

Most discussions happen on the debian-ruby mailing list. Discussions specific to pkg-ruby-extras also happen on the pkg-ruby-extras-maintainers list. You should be subscribed to both if you want to follow Ruby in Debian.

We also use IRC (#debian-ruby on irc.debian.org) quite a lot.

pkg-ruby (interpreters)

  • Packages are maintained in git using collab-maint. See PTS pages for ruby1.8 and ruby1.9.1.

How you can help:

  • {*} Subscribe to the pkg-ruby packages (ruby1.8, ruby1.9.1, ruby-defaults) on the Packages Tracking System, and then contribute to the bug mail you get. (It is a good idea to also subscribe to bugmail from Ubuntu, see developers reference for details).

  • {*} Go through bugs, see if you can reproduce them and provide more information. Report them upstream when needed.

  • {*}{*} Checkout the Git repositories, see if you can provide a patch for some issues.

pkg-ruby-extras (libraries and applications)

How you can help:

  • {*} Subscribe to the lists, and start contributing to solving bugs.

  • {*} Use the Packages overview to go through all existing bugs, and see if you can help with solving some of them.

  • {*}{*} Checkout the Git repository, and see if you can improve the existing packages. There are many things that can be improved!

Mid- and Long-term tasks

Backports

{*} Provide backports for the key Ruby packages (interpreter, rubygems) for both Debian and Ubuntu stable releases.

Finish the transition to gem2deb

{*} We are currently transitioning from a cdbs-based packaging tool to gem2deb, a modern dh-based tool. See /RubyInWheezy for details.