Monday, June 9, 2008

The year of Linux on Desktop? Nah, not this time...

Every year I hear freetards proclaiming that year is the year of linux on desktop, when Windows' reign will be overturned. Every year another distribution is "the one" to have, going from RedHat to Suse to Debian to Fedora to Ubuntu to etc, etc...

So I thought I should take a closer look at this much praised Ubuntu.

Back in college days I used to play a lot with Slakware and RedHat, so I'm not entirely a newbie to linux. However, since I got a real job the free time became scarce. I stopped using linux about 5 years ago, when I realized I was spending more time fixing things than doing something productive with it.

I decided to install Ubuntu 8.04 "Hardy Heron" (latest available) on my laptop, a HP Pavilion tx1320Us.

Someone deciding to download a distribution should do it from multiple places, otherwise he might miss important notices. For instance, Hardy is plagued with a critical bug in SSL handling. Only some of the download sites warned me about this, and advised to check immediately for updates and patch the install (-)

From the beginning I liked the idea of the "Live CD". It allowed me to get a feeling of what the final experience will be (+).

Selecting the partition to install was confusing (-). I had no free space on the drive, and I had no idea what changes was the installer going to make if I were to select an existing Windows partition. Eventually I booted Vista, resized the partition from there, then restarted the Linux install on the free space. I considered using the manual partitioning, but eventually I decided to let Ubuntu installer do the partitioning. Again I would have liked more information what the automated partitioning was about to do to the drive...

The rest of the install process was easy and with no further problems (+).

Selecting the computer time is incorrect and confusing (-). For some reason, the automated install picked a wrong time for the machine, a couple of hours shifted from the reality. I have no idea why that happened, the time in BIOS was correct... Anyway, I chose to set the time manually. Selecting a timezone is done by selecting a city. The list of available options is limited (e.g. Seattle is not listed, the closer on US Pacific coast are Vancouver and L.A., so I chose the former). The timezone was shown as PDT=GMT-7, when in reality it should have been PDT=GMT-8 and using DST. There was no option for daylight saving time.

Anyway, I was amazed to see things working. A couple of years ago I wouldn't even have dream about installing linux on a laptop for lack of drivers. Now, almost everything was working out of the box: bluetooth, touchpad, sound keys, etc. (+). Only the WiFi was not working (but more on that later)

First thing I updated the computer. It downloaded "only" 125MB of updates. (Windows bashers compain about the size of initial updates; I guess linux is no different; anyway, that's ok, the security of the system is more important)

I found out that Vista bashers that complain about UAC are idiots that only used antiquated systems or that live in the Mac fantasy world. Linux is no different than Vista - for almost everything I had to deal with "Cancel or Allow" prompts (editing configuration files in /etc, changing system time, launching administrative programs, etc). In fact, here the prompts are for the user's password - much like in Vista if you're logged on with a user that's not admin.

Where Linux lacks is usability (-) and in hardware support (-). If you get lucky and all works out of the box then you have a system that's quite good. Otherwise, you're screwed. My wife or an average Joe installing Ubuntu will not be able to deal with the problems I've encountered.

Here are some usability examples:

- in Display properties, the VisualEffects were set to None, and I cound not enable them (not even Normal). Eventually by running application I stumbled upon System/HardWareDrivers and there was an accelerated NVidia driver was available and installing it allowed enabling these effects. The driver is unsupported and required restart. Why DisplayProperties doesn't ask to install the appropriate driver I don't know...

- some menu items (like the Synaptic Update Manager) were not doing anything when invoked. There was no message to tell me what's wrong. ("sudo synaptic" from command line worked)

- setting up the printer was hard. I tried to connect to a printer shared by my domain controller. The printer dialog has an option to Browse network printers, but that was only listing the computers, not the shares; my guess is that Windows domain denied enumerating printers and shares from a computer not in a domain, and there was no option to specify domain user/password(-). I had to go to the Window machine, figure out the exact share name, type the share name manually in linux using smb://computer/printer_share and the domain user and password, after that all worked fine. I finally got my printer working, but I can't see my wife or my father doing the same thing...

- if you're using TsClient to connect to a Windows machine in full screen you'll find there is no obvious way to return to the linux desktop. It can only be done with a series of key combinations, and figuring that out is not easy (more on that on another post)

The Update Manager worked the first time. After a while it discovered new packages requiring updates, and it was prompting to download and install them. I agreed with the prompts, but the result was that UpdateManager was hanging (-).

Out of the box, Media Player does not play mp3, wma, mpg, files (-). It pointed me to download a codec (with an unintelligible copyright warning message), but when I agreed to download it, it hanged, too (-).

When these application hung, I could try to close them from the system menu using the Close command, or I could click the X button in the title bar, but the applications refused to close. (-). They had to be killed from Task Manager.

After a while, I noticed I had accumulated a number of "gsu" processes running. I suspected them to be related with the hangs, and I searched the Internet. It turns out the hangs were due to a known bug. Somehow, the Ubuntu configuration tools saved in the /etc/hosts file the computer name with a domain attached ( instead of the computer name (Mars). This caused "sudo" in command line to display an error "Mars not found" and it was preventing applications to display automatically the window where I was supposed to enter credentials to allow those applications to perform maintenance tasks (installing new software). As soon as I modified manually the /etc/hosts file, things got back to normal...

Linux was using APM for power saving, but waking the computer after 40 minutes was not working. The screen remained black no matter whether I was typing something on keyboard or using the mouse (-). I remembered back in the days I was using Ctrl-Alt-Backspace to restart X: it worked as workaround, but I wonder how many newbies are going to figure it out...

The wireless network was not working(-): the wireless card was not detected and not present in Network Manager. The help pages were useless. (-)

HP Pavilion tx1000 has a Broadcom 4321AG wireless card. On a Vista machine I turned to the community to find the solution... I already had a bcm43xx driver installed but not working (I found later it didn't supported my network card anyway). This driver was retired being replaced by b43 driver; I had this one, too, but this failed to load with missing dependencies. The solution described in was to use a Windows driver :-) from Dell support (I have HP!). You have to install ndiswrapper, run a couple of commands you have no idea what they are doing (and hope they do the right thing). After all this, the wireless interface showed in NetworkManager. You're not done yet... There you have to configure the WiFi access point (name, WAP password, etc). All in all, you get familiar with commands like ifup, ifdown, ndiswrapper, ifconfig, iwconfig, iwscan, etc. Too many things I didn't care about... I just wanted my wifi to work...

So, I got it to work, but on next reboot it stopped working (-). The WiFi was working, but failed to get an IP address from the DHCP server. To make things confusing, a new interface "wlan0:avahi" was present, that I didn't have before. After more hours of searching the net, it turned out this is a known issue that's been there for at least 2 versions of Ubuntu; other distributions are affected, too. I was not able to find a good solution (what I found was not working for me, or were recommending to modify files that I didn't have - they were for other linux distributions). I gave up eventually and I'll keep doing "sudo ifdown wlan0", "sudo ifup wlan0" whenever I'll need WiFi...

Btw, if you're like me and thought the WiFi configuration tool in Windows sucks, wait until you see the one in linux. It looks like evertytime one switch the wifi network he's connecting to, he will need to mess up with the access point settings. Using the laptop at home and at work with Wifi will be a pain. (Yeah, yeah, I can write my own scripts that switches configurations, restart the network, etc, but why does it have to be this way?)


All in all, this was an interesting experience. Linux has definitely advances since last time I looked at it, and is definitely usable on desktop if you find it pre-configured with everything already working and you only do basic tasks (browsing, editing, etc.). However, I wouldn't recommend using it if you're not a computer geek. There are still a lot of usability problems, and bugs that will make you spend hours searching the net for a solution. Sooner or later you'll try to connect a new device, printer, etc and will run into more problems - be prepared to deal with them. Wifi is the biggest offender for configuration and usability.

This is not the year of the linux on desktop, and by the looks of it, it won't be very soon either.
Until everything will "just work" without quirks and usability problems, I'm staying with Windows.


Digital Hobbit said...

Servus, gand la gand cu bucurie. Nu am la fel de multa expertiza "medicala" dar ieri mi-am petrecut si eu seara reinstaland Ubuntu 8.04 LTS, datorita unei prostii pe care o comisesem in Kubuntu [alegerea mea initiala, se misca mult, mult mai repede pe calculatorul meu P4/1G], Amarock-ul nu vedea mp3, chiar si dupa ce am rasucit Apt-ul in stanga si in dreapta. Am sa incerc sa nu ma intind mult.
In ceea ce priveste partitionarea eram avertizat din instructiunile de instalare sa aleg manual, asta dupa ce partitionasemm spatiul liber in doua partitii ext3 si swap. Nu am avut nici o problema cu data si ora corecta, am selectat bucuresti si a mers OK. Configuratia mea de acasa nu este foarte complicata, am doar un router, pe care l-a vazut imediat, clientul de torrent a mers OK, etc. Singura problema pe care o am este Compiz Fusion-ul, nu ca as fi innebunit dupa efecte, dar imi facusem un caz de orgoliu din prostia aia. Doar ca in continuare placa mea Ati Radeon 9600 este incompatibila se pare. Dupa ce am instalat Envy, puteam sa vad efectele dar nu mai puteam sa setez rezolutia. L-am dezinstalat, si l-am busit iarasi cu succes. Nu am mai incercat sa ii dau recover, facusem si un backup, vad astazi ce se intampla. Doar ca eu din lene instalez de pe un Feisty Fawn.
Nu sunt ceea ce s-ar numi un freetard, dar nu pot sa nu observ ca Ubuntu ar fi un plus in scolile din Romania, care din pacate duc lipsa de soft-uri si bani, nu neaparat in ordinea asta. Cat despre utilitatea Ubuntu, acasa nu fac decat sa citesc mailuri, sa navighez pe net, sa ascult muzica, vad filme ... si cam atat. Prin urmare, cred ca mi-ar ajunge. Sper ca n-am plictisit prea mult cu comentariul acesta foarte lung. O zi cat mai buna.

E-nigma said...

m-as fi mirat sa aud ca Ubuntu e OK cand salariul tau creste cu numarul de luseri care NU-l folosesc. intamplator, Ubuntu 7, si apoi adus la 8 pe un Dell D420 merge foarte bine, de la BT, si display la touchpad SI wifi. dar Linux nici n-a fost creat pt cei care iubesc Display properties! daca HP alege sa infiga Vista pe gatul cumparatorilor si producatorii de placi wifi NU ofera acces liber la drivere, e vina Ubuntu?! am mai invatat un termen nou azi, freetard. ma intreb cum o suna opusul.

Alin Constantin said...

@Enigma: te inseli daca crezi ca salariul meu depinde de numarul de useri care folosesc sau nu linux or windows. Depinde de de fac pentru grupul la care lucrez (Visual Studio).

Ma bucur ca tie Ubuntu iti merge bine - daca macar merge in anumite configuratii, nu toate sperantele sunt pierdute :)

Indiferent pe cine linux appologetics vor arunca vina la momentul curent (MS care e monopolist si impune restrictii vendorilor, hardware manufacturers care nu vor sa faca drivere free sau sa dea specificatii, MS care nu da specificatii de inteoperabilitate, useri inadaptati care nu sacrifica zile de stat/cautat pe forumuri sa rezolve probleme elementare, samd, samd), concluzia mea ramine aceeasi: nu, nici anul asta nu va fi "the year of linux on desktop" (chestie pe care o aud anual de vreo 7-8 ani)

Btw, cuvintul pe care il cauti e probabil "borg" sau "maclot" (read my other posts ;-))