The current model doesn't work... unless you only want freedom for nerds and the independently wealthy.
Edit: wanted to throw in one more point on usability:
Lets say my time is billed at about $50/month, which is low for a software engineer. Now lets say a Linux desktop/laptop requires 5 hours of system admin time per month to troubleshoot drivers, upgrades, etc. That means a Linux desktop/laptop costs $250/month. For that price I could buy a new Mac every 10-12 months. I have a Mac right now and spend less than 30 minutes per month futzing around with it, so it's far cheaper.
A lot of the people who don't get this are young people who are middle class or above (in the developed world) and who therefore have an abundance of free time. Telling busier, poorer, or older people with families they should set up their own servers or run their own Linux systems is sort of a "why do they not eat cake?" attitude.
This neglects the structural profession elitism here-- that only people who know how to admin Unix-type systems should have freedom or privacy.