upgraded to a dual flush and the outlet valve can be repaired if you have instructions. Most recently the inlet valve was leaking, wasting water and making an annoying noise. A replacement toilet fill valve is around $15, but I only needed the $4 Ballcock Replacement Seal.
Apart from saving some money, replacing a seal or washer, rather than the whole unit, results in less material thrown away. However, it can be difficult to work out exacly what needs replacing, how to remove it and what to get. I found Graeme Hawkins video "How to replace a ballcock washer in a toilet cistern" very useful (complete with New Zealand accent). But for hardware stores to stock large numbers of seals and replacement parts is a problem
Perhaps a 3D printer could be used to manufacture these parts on demand. University of Washington students are reported to have 3D printed a whole toilet.
ps: The Canberra "Make, Hack, Void" is holding a free conference to show off some of their work (including 3D printing). MHV MakerConf 2013 is 2 February 2013 at the Australian National University in Canberra, in conjunction with LCA2013.