Software Modding For Everyone

An article on LWN (do subscribe; it’s totally worth it) contained the following quote:

Skateboarding started with proto-skaters modifying surfboards and scooters, and today, “extreme” sports vendors bring customer’s modifications in-house and base products on them.

This got me thinking: how can we make people modding their software as common and as well-understood for everyday people as modding their skateboard, bicycle or console?

Some of the pieces are in place. It’s possible on Debian to download and compile the source for a package, and use your version in place of the shipped version, with a reasonable amount of ease. Projects like Project Awesome Opportunity are working on making that even easier, and doable without a command line.

However, unlike a skateboard, operating systems are regularly upgraded.

How cool would it be if your Linux distribution remembered that you were using a modded version of a package and, when you started a distribution upgrade, first downloaded the new source, tried to merge it in in a newly-created branch in your local copy, and let you know if there was a conflict so you could fix it before running the upgrade? If it merged fine, or after you fixed the conflicts, it would then rebuild the package on top of the newer source, with your mods, and install it as part of the upgrade. The end result would be an upgraded system which retained your changes.

3 thoughts on “Software Modding For Everyone

  1. It would definitely be cool. But wouldn’t it reduce the pressure on people to get their patches merged so they can benefit others?

  2. How feasible it would be would, I think, depend on the nature of both the “nonstandard patch” and the software to which it is applied, and, of course, the more complex the software and the patch, the riskier it would be. Here are a couple of examples of both kinds:

    OT1H, I don’t count the number of patches to every single Mozilla-family software product (not by me, I don’t write them) which, with passing time, had been afflicted with bit-rot requiring a complete overhaul by a skilled developer.

    OTOH, I compile my own version of the Vim editor (a much “smaller” product, admittedly, than most Mozilla ones), with exactly one non-standard patch, namely “additional float functions” by Bill McCarthy. Since the day I applied that patch, some hundreds of additional “official patches” have been published, with no problems whatsoever beyond a warning by the patch program, saying that hunk number so-many had been successfully applied with an offset of so-many lines.