[G1 Android Development] numerik:
Just because the OS is open source doesn't mean the applications are free to distribute. Case in point, the Adobe Flash plugin for Linux. Even though Adobe makes it freely available on their website and doesn't charge for it you still can't package it into your own flavor of Linux and distribute it. What most distributions do is package a script that automates downloading and installing the files Adobe makes available on their website.

Another example is theme art. Many artists may make icons or wallpapers available for free. Some may even allow others to distribute them as long as they receive credit. On the other hand some may prefer not to but they have every right not to allow their work to be redistributed by another regardless of the distributor's intentions. If they want control over how their work is made available why is that wrong?

Commercial companies are just as guilty of violating distribution rights too. Do you recall when Linksys was called out for using GPLed software in their routers without making the source available? Linksys was redistributing the work others made freely available but did not honor the licensing agreement of the software which required the availability of the accompanying source and any changes they may have made. Just because the source was free and available did not give them the right to disregard the license agreement that accompanies it.

Let's take an example that hits a little closer to home. Remember when Haykuro's Hero ROM was released without his permission? Let's disregard the legality of the ROM itself and focus on the work that belonged to solely to Haykuro. If I recall, the majority of the members here were in support of Haykuro's right to control distribution of his modified ROM and that the person who released it prematurely was in the wrong. Why is it OK to defend Haykuro's right to decide how he wanted his work distributed but condemn Google for doing the same?

You may try to argue that Android is too dependent on Google's proprietary bits to be considered an open platform. For Google Experience phones that may be somewhat true currently, but you also have to consider that Android is still in its infancy. The Android engineers had to prioritize and to hit the 1.0 release on time they ended up having to rely a lot on Google's internal, proprietary APIs. This makes sense if you think about it; at the time all Android phones being planned were Google Experience phones but they know that can't continue indefinitely. Eventually other manufacturers will want to create non-Google phones and that will be hard to do if it relies on Google services. Regardless of what you may think Google does want Android to succeed and they need to create an incentive for other hardware manufacturers to use it. On the android-platform mailing lists they have already mentioned that they've started decoupling the sync framework from Google's proprietary backend syncing mechanisms. They also mention that Google Maps is available on the Market because it is developed on the public SDK and does not use private APIs. As the platform matures you'll probably start seeing more of this start to happen and when Google is able to make their software independent of the platform they'll be able to distribute it like any other application. The only reason it hasn't happened as fast or as soon as you may want it to is that they have limited resources available to do so.

One last thing before I go back to my hole. You do have the right to make modifications to software on a device you own (provided you conform to FCC regulations, DMCA restrictions, etc) and Google's decision does not change that. However, that right does not automatically give you or a third-party a license to distribute software for which you do not have distribution rights. All this talk that Google is making ROM modifications illegal is nonsense.