Distro version migration nastiness
While preparing the 8.2.0 release (including the Fedora 9 rebase), we found ourselves having to re-include dirty OLPC-specific package changes from the older Fedora 7 releases. In fact, a number of the F9-induced bugs were caused simply from accidently losing the OLPC-specific changes we applied to packages in F7.
Due to time constraints we find ourselves having to reinclude those changes in the F9 packages and hence will probably see the same issues when rebasing in future. So we decided to create this page which documents those changes, hopefully making it easier to rebase in future.
It is also important for us to work towards making this list as small as it possibly can be, so that rebasing in future is not as difficult as it is now.
 9.1.0 nastiness
- Forked SDL_mixer to drop PersonalCopy-Lite-patches requirement. hopefully will fix this for F11
 8.2.0 nastiness
- ticket #7294: we are including an ov7670 kernel camera driver patch before it is merged upstream (plus I don't know that it is correct). The other option is to modify gstreamer like we did for F7. I'm not entirely sure which option is correct and V4L upstream have so far been unresponsive to my 2 emails.
- ticket #7319: We are forking an OLPC-3 branch of telepathy-salut so that we can include 2 patches needed for collaboration to work with rainbow. Upstream have rejected those patches. We should come up with an upstream-acceptable solution for future releases.
- ticket #7252: The ov7670 driver shipped upstream exhibits an occasional hang-on-boot condition. In the OLPC kernel we reverted the upstream commit and have applied a "sledgehammer"-style workaround to avoid initialization delays at boot/resume.
- gnash: Tomeu created an OLPC-3 branch in order to avoid building a load of unneeded stuff which had extra dependencies (Qt plugin, etc). This kind of thing should probably be pushed into Fedora as a whole. gnash 0.8.3-1.olpc3.2 continues to be forked in joyride-2379.
- ticket #7353: forked a number of packages to remove unneeded dependencies. totem is the worst (removing gnome-desktop), but we'll also want slimmed down ntp and mtd-utils to remove perl dependency, removing PersonalCopyLite midi patches from SDL_mixer, etc.
- Network manager: Our F7 0.6.5 package has various OLPC specific patches for the msh interface which were not applied (accepted?) upstream. NM 0.7 has changed significantly and the patches do not apply...
- xulrunner is forked with some OLPC-specific patches, and adjusted compilation options to exclude libgnome and gnomevfs dependencies.
- xorg-x11-server forked to remove Fedora's patch which disables evdev for keyboards (we need evdev)
- ntp forked to split ntpdate into its own package, removing the perl dependency. upstream have addressed this for F10.
- totem-pl-parser has an evil dependency chain through its use of libcamel. forked it with a hacky patch to remove the dependency (affected functionality is of no use to us). upstream may consider a proper solution if someone steps up to do the work
- xorg-x11-utils forked to remove xdriinfo and it's mesa dependencies. upstream have fixed this for F10.
- forked gstreamer-plugins-base to remove cdparanoia plugin and gst-visualize (which requires perl) (fixed upstream for F10]
- ticket #7615: forked poppler since our sugar-evince package requires an old poppler version. effort should be made to update our sugar-evince package and get our changes upstream.
- ticket #1286: forked pygame to upgrade to newer version and drop dependency on numeric. fixed in latest F9 updates.
- forked pygtk2 to use numpy instead of numeric (see redhat bug)
- gstreamer, gstreamer-plugins-base, gstreamer-plugins-good, and gstreamer-python all forked to revert to update1 versions to avoid ticket #7887, ticket #7609, ticket #7452. A gstreamer developer (Josep Torra) is interested in fixing up gstreamer & Record for our needs, so this will hopefully be fixed for the 9.1 timeframe. He has applied for an XO through the developer program.
- ticket #7603: forked hal and hal-info to stop HAL polling the battery all the time (causes audio skips). and upstream has now approved patch; will get into F10 with hal 0.5.12 release
- ticket #8395: forked yum to fix performance regression; should be fixed in next upstream yum
- bugs.freedesktop.org #17551: forked dbus-python to eliminate memory leak (marco)
- ticket #8431: forked numpy 1.1.1-1.olpc3.1, python 2.5.1-26.olpc3.1, python-libs 2.5.1-26.olpc3.1 to fix problems with -OO. Should be in upstream python 2.5.2 and numpy 1.2.0.
- ticket #8433: forked fedora-release 9-5.transition.1 to add OLPC-specific release information.
- ticket #7426: forked xapian-core-libs 1.0.7-1.fc9.1 for f7/f9 compatibility patch.
- ticket #7997: forked pygame 1.8.0-1.olpc3.3 to add SDL_Pango dependency
 See also
- F11 for 1.5 discusses the changes to Fedora 11 and later Fedora releases that are required to make a release for the XO 1.5 hardware.
- Enabling XO features on other distributions for the changes in OLPC OS images that take advantage of the XO hardware.
- In 2009, much work involved in minimizing the OLPC-specific changes to Fedora 11 is being discussed on the fedora-olpc mailing list.