As someone has already mentioned it's the price of hardware that will drive people toward Linux as their desktop. The cheapest Mac is ~600 and you need to spend at least that much to get a box that Vista won't grind to a halt. Considering that all most people want to do is email, surf the web, play media, light weight photo manipulation, write letters, maybe a simple budget spread sheet, and printing, a $200-$300 box is plenty (and could probably still be done for less). Once configured Linux does all of that really well. The hang up there is in the "once configured".
Here are the hurdles I see to your average computer illiterate user being happy enough with their Linux box to go brag to their friends about the great deal they got.
1) Linux is not a "free version of Windows" it's another OS. No one should expect a Linux box to behave like a PC any more than they would expect a Mac to behave like a PC (thank God!). If you are used to another OS there will be a leaning curve. If people know this going in they will be less upset when they find it to be so.
2) Multimedia support. Yes Linux does do a great job in supporting all kinds of media. I've yet to run across anything I can't play (something neither windows or OS X can claim) , but I had to spend some time on the web figuring out how to get this to work. Someone needs to figure out how to get around the legal hurdles for bundling standard media CODECs into the pre-installed commercial Linux boxes. If this has been done mea culpa. I build my own boxes and do my own installs. I did once pay for a commercial copy of Suse thinking it would come with multimedia support and save me time. It didn't so I'm assuming the preinstalled boxes don't either.
3) Kernel updates screw up many drivers compiled against the kernel. On several occasions I have installed a "security" update to the kernel only to have it kill my X server. Fortunately I keep a copy of Nvidia's shell script in my home dir and can rerun it from the command line. I've also had kernel security updates kill my LIRC controlled remote, and reak havoc with VM player's ability to see USB devices. I'm used to this and now know not to install kernel updates (or "security patches") when I won't have a few hours to get things straightened out afterwards. But I shudder to think of the vapor lock it would cause the average Joe.
4) It is still way too dependent on the command line and hand editing *.conf files. Now we're starting to approach the power user (hence this is at the bottom of the list), but it's one of my biggest gripes. It seams like every time I want to start doing something out of the box (like say a home network), every solution I find starts out with "open a command line and type sudo vi /some/ conf/file". First, stop telling people to use vi. Anyone who didn't grow up with it is just going to get frustrated with it. Second, there should be a GUI for that. Also each distro should bundle all of those GUIs into a single administration application. Suse does a reasonable job with YaST, but then there's still the KDE admin console (both of which I use for SAMBA along with a third independent app smb4k and I sill find my self occasionally hand editing smb.conf and fstab to get things set up and mounted.
I don't see any of this as insurmountable, but I'm not sure if it will happen in time to make 2008 "The year of the Linux desktop"
Krishna Srikanth
The different Linux distros (at least the main ones) all offer different looks and feels but roughly the same functionality in terms of available applications. Find one you like and stick with it a while I'd recommend openSuse or Ubuntu.
Your software installation problems sound like dependency issues. You generally shouldn't be grabbing and installing individual packages. You should use a package manager pointed toward full repositories of RPMs to get your software. The manager will see the other required packages and fetch them from the repository. »
wcn
getting multimedia playback support on Suse is actually fairly easy.
I've been using the Jem Report's mtd since 10.0.
http://www.softwareinreview.com/cms/content/view/84/
Opensuse-community.org also has this set up for 10.3's new one click install
http://opensuse-community.org/Restricted_Formats/10.3
Joe thanks for the tip on Kino I'll have to give it a second try. »
Don Wilson pretty much hit the nail on the head. The biggest problem I see with Linux becoming a viable option for the masses (and I don't mean those with personal tech support, i.e. you setting up Great Aunt Tilly's box for her) is that it's still being developed by people who still use vi. You should be able to fully configure and run Linux without ever knowing that the command line exists. Ditto for hand editing *.conf files. Build simple to understand, elegant GUI's for everything. If that's too onerous then fine, but please realize that taking that stance will eternally regulate Linux to power geeks and masochists like myself who are willing to waste hours on bulletin boards trying figure out how to do something as simple as auto mount a network share.
Linux desktop developers should be required to spend at least a month using nothing but a Mac to get the idea. (If I could run OS X on a white box, or Apple had a better selection of hardware, I'd leave Linux in a heart beat, though I'd miss the configurability of the desktop)
Another mindset issue I see is that even as Linux talks about a desktop community it seems to still be focused entirely on businesses. Point in case there was no option in the survey for using Linux in the home. I'm also guessing this is also why the switch to cifs for mounting Samba shares has required multiple headaches for my home network. By requiring static IPs and domain names to auto mount a share. Rather than just sniffing the local network for the share name.
All that being said, once configured I find that Linux is definitely easier and more reliable to operate than Windows. At least until you inadvertently install a new kernel while loading what you thought were "security updates".
The reasons I still boot into my windows partition (I'd love to access it as a VM but all attempts to set up either VMware or Parallels to access my windows partition have failed) are as follows:
Printing photos: While I've gotten fairly accustomed to GIMP (I still feel more comfortable in Photoshop), the driver support for my firewire connected EPSON R1800 is severely lacking and there are no ICC profiles for Linux (They adjust what I see on the screen to look exactly like what will come out of the printer).
Editing home movies: Kino actually works? I installed it but could never get it to work.
Visual Studio: I'm a PHP/MySQL developer but I'm occasionally called on to integrate data stored in MySQL with M$ Office apps. »
OK so the link posted above
http://www.advicesource.org/ubuntu/Run_Existing_Windows_Instalation_On_Ubuntu_With_Vmware_player.html
has much easier to follow instructions on editing the windows.vmdk file, but neither that link no the litany of Jason's links at the end of this discuss how to actually get VM Server running. I made windows.vmx executable and tried running it as me, sudo and su - all with no luck. I just got a long list of "command not found" errors. I went to vmware's site grabbed an RPM of VM server installed that with YaSt and tried again; same issue, I looked around for an icon to launch VMWare server nothing and I've seen no instructions anywhere for running it from the command line. What am I missing? »
"Edit the second RW line and the lines with sectors, heads, and cylinders, replacing the values in the file with the values you determined from the gparted session earlier. Save the file and exit."
Would you please clarify perhaps with examples?
Do you need to put in data for all drives, just the one containing the windows partition, or just the windows partition? Where do you get the "sectors" and "heads" information from the GNU parted output you posted? Also, where is the best place for those up us already set up to dual boot to obtain this data? »