I'm now dual-booting Ubuntu and Windows7, so I'm really trying to pick up Linux knowledge. heh. But that's off-topic to my post: I notice that the Ubuntu (Canonical) repo has Windows 110.0.1-3, with two addons, one of which is pak128.Britain of all things (which is a good one, but... I'd expect pak128 first. heh).
Is that something we control, or something they grab from us?
You happened to ask this question as I was wrapping my brain around this very issue.
kierongreen is 100% correct that the path to Ubuntu runs through Debian.
111.0-1 is in the next release of Ubuntu, 12.04, which will be released on April 26, 2012.
Ansgar, a member of this forum, is a member of the Debian Games Team, and the package maintainer of Simutrans in Debian. kierongreen is also correct that he's one key player in this.
The current path runs like this:
12 MAR 2011: 110.0.1 was released by the Simutrans Team (
http://forum.simutrans.com/index.php?topic=7025.0 )
12 MAR 2011 (same day): Ansgar packaged it and uploaded it to Debian Unstable (
http://packages.qa.debian.org/s/simutrans.html )
14 MAR 2011: Ansgar packaged it a second time (bug, patch, whatever), and re-uploaded it as -2 to Debian Unstable.
25 MAR 2011: The -2 package was accepted from Debian Unstable to Debian Testing. This generally happens when no high-priority bugs are found.
28 APR 2011: Ubuntu 11.04 was released. To be in this release, packages needed to be imported from Debian no later than 30 DEC 2010. New repositories for the 11.10 release were created.
05 MAY 2011: Ansgar packaged it a third time, and re-uploaded it as -3 to Debian Unstable.
17 MAY 2011: The -3 package was accepted into Debian Testing.
Sometime before 30 JUN 2011: The -3 package was imported into to the Ubuntu 11.10 repositories. 30 JUN was Debian Import Freeze for the 11.10 cycle (see
https://wiki.ubuntu.com/OneiricReleaseSchedule )
13 OCT 2013: Ubuntu 11.10 was released.
02 NOV 2011: The next release, 111.0, was released by the Simutrans Team
Takeaways:
Ubuntu releases twice yearly: April and October.
Ubuntu's deadline for Debian packages is about four months before release - usually around 20 JUN and 20 DEC.
Plan on two weeks for the Debian package to migrate from Unstable to Testing.
So the *best case* for a Simutrans release to get picked up by Ubuntu is a 05 JUN Release that shows up in Ubuntu 20 OCT, and a 05 DEC release that shows up in Ubuntu 20 APR. Any Simutrans release after that shows up six months later. (dates are approximate, of course)
Now here some ways the community can avoid the lag and get up-to-date versions:
1) Debian Import Freeze Exception
2) Stable Release Update (SRU)
3) Backport
4) Ubuntu PPA (personal package archive)
5) Simutrans-hosted third-party repository
6) Simutrans-hosted .deb file
I recommend against a DIF Exception. It's not really intended for minor improvement releases, and it's a one-time use policy exception. There would be some understandable pushback if a DIF got requested every cycle. Somebody with permission would still need to do that actual import...which nobody here has. And it would only shift the calendar 30 days; it wouldn't address the problem of updates that need to occur after release.
I recommend against a Stable Release Update (SRU). According to
https://wiki.ubuntu.com/StableReleaseUpdates , SRUs are intended to patch high-impact bugs in the current release. A new release doesn't qualify for an SRU.
Ubuntu has a whole repository for backports, newly-released software tested to work with the current and past releases of Ubuntu. This is close to the Simutrans use case. A simutrans community member needs to join the Ubuntu Backports Team (
https://help.ubuntu.com/community/UbuntuBackports ) to gain upload permissions...or at least to meet the right person to ping for upload review and approval. If the user has the Backports repository enabled, the new version floats right in during the next daily/weekly/monthly update. Unfortunately the Backports repo is not enabled by default so the Simutrans Wiki must include a "How do I get the latest version on Ubuntu" instruction to enable the repo. Also, if the new version breaks backward compatibility with old saved games or old settings, the user won't be warned!
Backports have a version limit - you can only backport something that's in the pre-release repos. So if Simutrans A is in the current release, and B is in the pre-release, then you can backport B but not C. You'll see why this is important when I talk about PPAs in a moment.
Launchpad.net hosts package repositories (PPAs - personal package archives) for Ubuntu developers and users, and lots of newly-released software gets trial-packaged in PPAs for testing. A PPA is a full repository - updates and installs will download from it just like the regular Ubuntu repos. There is no permission needed to upload to a PPA (unlike Backporting). PPAs must be manually added to the user's Software Sources control panel - a deliberate hurdle to prevent unskilled users from breaking their systems with experimental packages. PPAs can be globally downloaded (if public), but only one user can upload.
There's also the possibility of causing a package-management error for users. For example, a user may add the repo to upgrade from A to C, then removes the repo, then (two months later) tries to upgrade from Ubuntu X.04 (with Simutrans A) to X.10 (with Simutrans B). The system may try to downgrade from C to B, or may try to retain C...unless there's a dependency conflict that the user must then manually fix. What a mess.
Another variation on a repository is a third-party-run repository, instead of submitting to an Ubuntu-run repository or Debian-run archive. A Simutrans-run repo can set it's own multiple-user upload permissions...but then must administer the repo across updates and new releases of Ubuntu. It's also subject to the same versioning conflicts as PPAs.
Finally, there's ditching all the repo-based headache and simply posting the .deb file. Nothing to maintain. A user can double-click on the deb file and it will install properly. As a mostly Windows-based game, you might think this is a great idea. And maybe it is. But it's not perfect, and it's not an msi. The dependencies (like libsdl-mixer1.2) are not included, and the install will error if the dependencies are not present or are too old.
The community must figure out some combination. No single solution will work well for Ubuntu users, since Ubuntu is not intended to be the latest-and-greatest. It's intended to be the most usable.
For example, one volunteer who works Ubuntu backports will take Simutrans from 10-12 months behind release to 3-6 months behind. Then that backports version limitation then kicks in - only the version in the pre-release repo can be backported, and that repo freezes 4 months before release. The remaining lag can be addressed by a .deb file or PPA *if* it's built with current-release version dependencies instead of bleeding-edge dependencies. In fact, building such a PPA is part of the testing in the backporting process.
I suppose as I learn more I'll probably wind up as that backporter....