Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.


To implement this type of system would be easiest by using some/ the same code from the "Translate this Application" button which links to Rosetta, but have it modified. First have it display "Donate to this Application," instead of "Translate this Application" and second have it link to a Launchpad page which allows secure credit card, PayPal, Google Money, etc. transactions that would be distributed to the right people instead of the Rosetta page. Also what would be part of this system is a small cmd scrip called "donate". From Synaptic, the Add-Remove program, and apt-get there would be the ability to donate to that upstream project.

Release Note

Now Ubuntu users can easily donate to their favorite Open Source/ Free Software project.


With Ubuntu's increased popularity, more pressure has been exerted on the developers of the programs included by default, and in the repositories, to produce more stable, more feature complete, and all around better programs. Yet, most projects have not seen an influx of developers to solve all these problems. Many developers of Open Source projects work at full time jobs and spend their free working on their project. But if they could make even a reasonable amount of money from donations they could spend more, or convince their partners, that they should spend more time working out the kinks in their programs. This specification provides a way for an end user to donate to program's foundation/developers in order to see its continued growth, which can help solve Bug #1!

Use Cases

Dick wants to donate to The GIMP to speed up development, he opens up The Gimp find the "Donate to the Application" button to donate to the GIMP developers to accelerated its development through the Launchpad Donation website.

Mary likes Ubuntu over all, she opens up Synaptic right clicks on the "ubuntu-desktop" package and chooses "Donate to the Application" option, then she donates $100 dollars through the Launchpad Donation website..

Luke likes ucf for his firewall, on the command line he uses the "donate ucf" command to open up the lynx browser to donate to ucf through the Launchpad Donation website.

Nathan likes a feature suggested in Brainstorm or Blueprints. He clicks on the "Donate to this idea" link, and donates some money which is distributed among those who help it to fruition (or returned if the idea is rejected).

Ian hates a bug in Launchpad. He clicks on "Donate to fix this", and donates some money which is distributed when the bug is closed as fixed (or returned if the bug is closed as invalid).


Many users will find this functionality useful.

Targeted incentives can improve donation rates, and encourage user need driven design.

Incentives which require no developer interaction encourage those who are already doing good work, instead of bounty hunters.


The scrip "donate" would be created, its syntax would be in the form "donate name-of-binary-here" it would use the database made by the Command-Not-Found program to find the package name, it would then make a URL linking to the Launchpad Donation website base on the package name (ie. The GUI would be built on top of the scrip, as well, the Synaptic integration would be too. In the case were there is more then one package for a particular program, the first one in the database would be used. (ie zsh, with the packages zsh and zsh-beta.)

Website design

Hooks for regular donation on all project pages. Hooks on Bugs, Brainstorms, Blueprints, Translations, and Answers to allow users to add incentives to specific improvements.


It will be implemented throughout as much as the desktop as possible first, later in command line programs, and last through package installation programs.

UI Changes

All applications in Main and possibly in Universe that have a toolbar would have an additional button added to their UI under the Help menu which links to the Launchpad Donation website.

Code Changes

Need to talk to a programer about this. The majority of the code will be in the website design.


There should be no migration necessary.

Test/Demo Plan

We will add this spec into the desktop as early into the intrepid release cycle as possible in order for there to be more testing.

Outstanding Issues

Canonical need to support this idea.

BoF agenda and discussion

Was not discussed in a BoF meeting.

CategorySpec CategorySpec

DonationSystemSpecification (last edited 2008-09-01 08:28:13 by ip72-219-163-106)