mindstrm you misunderstand the ramifications
Ok, to start off your completely correct in what you wrote. However that law changes everything. Right now if you buy software that is defective or isn't what it says it is you can take it back. When/if the law comes in, if you buy defective or software that isn't what it says it is, or it just blatently lies about everything in the package you can't return it, you can't get your money back, you lose. This law takes all responsibility for their products and just throws it out the window.
Thank god I'm a Canadian and the kind of legal crap they are pulling is simply illegal.
Beer and Linux
The comparision between beer and linux is a interesting one they hold quite a few things in common but there are a few differences, and it's the differences that have slowed the adoption of linux.
If you take it from the perspective that linux is like beer then you can easily say that linux is not fragmented and the vast diveristy is good for linux.
If you take it from a opposing view that beer is linux software and you are linux, then you run into the problems of only being able to drink specific kinds of beer because the other 90% of brands don't work well with you. Of the remaining 10% you can only drink 1% easily because the other 9% don't have bottle caps you can easily take off.
Simply diversity is good it fosters invention and advancement. Fragmentation is bad as it limits adoption and ease of use. There is a grey middle ground that can be found, sadingly quite a few people will disagree on what that is. As it is quite a few people hate control but if you have the right controls you can both foster the good things while limiting the fragmentation. Standardization is good, one governing body for standards are good, controling everything is bad.
Examples of good standardization are things like: OpenGL, it has a standard implementation yet still evolves. Java. x86 hardware specifications, etc..
Now I do not agree with or advocate telling people that you must use xyz window manager or install software stictly to this place if it is this kind of application, or that you must include only these things in a distribution. But when someone like myself (a application developer) must struggle with a bunch of different packaging tools and different linux(s) distributions so I can get my product used it isn't fair to me, or the users.
Right now the costs incurred with the diversity of linux is just too high, there are far too few standards. Linux(s) must find a middle ground, it would be nice if they were mostly compatible with each other. A nice place to start would be with a Unified Package Manager, and before you think that package manager xyz is good just compare it to the installation/removal facility in windows. It runs under a obviously inferior OS but it's a hell of a lot better than anything I've seen on linux.