This page last modified: Apr 04 2008
title:Linux features and problems keywords:linux,bugs,examples,end,user,desktop,home,non-geek description:My constantly growing list of problems one encounters when running Linux on the desktop. Includes some strenths, but is mostly about opportunities for improvement. Table of contents ----------------- Introduction Linux Features Linux Opportunities Introduction ------------ I love Linux. It is my desktop and work and at home. We have many Linux servers at work, and I've got a few at home. However, Linux is far from perfect, and I am sad to say that I cannot yet recommend Linux as a desktop for your average user. It could be the commercial products such as Novell's SUSE and Linspire are suitable for normal people. See my notes about SUSE below. This document is primarly written from a Fedora-centric point of view, but applies to all distributions (distros) of Linux. Most distros are probably worse than Fedora Core (FC) in nearly every regard. (I don't want to start a flame war. People I've talked to running other distros, and forums I've seen indicate a high incidence of problems in other distros that I've never seen in FC.) This document is frequently updated as I discover other exciting aspects of Linux. This version applies to Linux up through Fedora Core 6 in March 2007. As you will see (below), the list of opportunities (aka problems) is fairly long. The sad irony of the list of opportunities is that some Linux guru (or a guild of gurus) is capable of solving each and every one of these problems. With these problems fixed, and Open Office able to read and write *all* Microsoft Office docs, Linux would rule the world. It is possible to get nearly everything to work on a Linux system, however, implementing a workaround for each problem can take an hour or two (or six). At some point, you'll look at all those wasted hours and wish you had bought an Apple OSX system, or even Windows. As far as I can tell, everything on this list works out of the box with both Win XP and OSX. Granted that OSX and XP have their issues. I cannot for the life of me see how any sane person uses XP as a server. In an enterprise situation, Red Hat (RH) is a good OS (or even FC which is "free", not accounting for total cost of ownership). You pay for the RH licenses, and when there is an issue you phone Red Hat and ask for the answer. Everything should work, and the superior power, security, and general amenability to being administered will make Red Hat Enterprise Linux superior to XP and OSX, even for desktop users. However, as a home user, I'm not going to pay RH $300 per year for their support, although given the time I've wasted searching for and implementing workarounds for FC, it might have been worth it to just give RH their money. It is hard to give RH $300 per year when most of my home computers were only $500 purchased new. Even my desktop server at work was only $2500. Instead, when I wanted a fully functional desktop I bought an Apple OSX machine (Intel Core-Duo no less!). Aside from minor glitches, the Mac Mini and OSX have been a stellar success in my home. I resisted OSX for many years, but in the end, problems with Linux forced me to buy an Apple. (I have not avoided Apple for lack of knowledge about the computers and operating systems. Starting in 1983 was I a Macintosh evangelist. Apple eventually managed to drive me away with horrible bugs, lack of innovation, and outlandish prices. I'm happy to say that OSX has brought me back.) SUSE notes (2008) ----------------- - OpenSUSE downloads are at: http://software.opensuse.org/ - Novell's (software.opensuse.org) server seems fast and as far as I can tell has great bandwidth. At work I was getting around 6MB to 9MB (megabytes) per second. The entire DVD iso downloaded in around 20 minutes. The servers for other Linux distros are often slow. - SUSE has a hardware compatibility guide. http://en.opensuse.org/HCL It seems up-to-date. This is great. When you need a modem, ethernet card, or even a new digital camera consult the guide. Instead of wasting hours Googling or searching newegg.com user reviews for the word "linux", just go to one comprehensive guide. If only Fedora would do this. - The Novell pre-sales phone operators are very nice. And about 95% ignorant about SUSE and Linux. They can answer rudimentary questions which they apparently read from the Novell web site. - Novell doesn't understand Linux or Linux users (or else I don't understand my own needs and those of my Linux peers: it's possible). If you want a Linux that is a desktop with some server abliites like being able to run Apache, you have to use OpenSUSE. The Novell Enterprise Linux options are either server without desktop features (like music players) or desktops with no server abilities. - Depending on how you enter the Novell site, Novell makes you register and login. When you finally get to the OpenSUSE download, it is outside the registration-only area. Novell marketing managers are nitwits trying to gather user information which ends up being meaningless. - You can purchase "installation support" for OpenSUSE for 90 days. Nothing about support for stuff that doesn't work, or that you decide to install after 90 days. - The community support seems a little better than other Linux distributions. However, If Novell would dedicate just a small team to writing howto docs and work arounds, they could rule the Linux world. Many of us who are experienced Linux sysadmins would be *happy* to write docs if we could just get a clear answer from people inside Novell who (we imagine) know everything about SUSE. - It appears that if you want to install OpenSUSE via ftp or http from your local LAN, you'll have to figure that out on your own. This would be the case where you put the install .iso files on a server, then boot the destination machine with a CD, and set up the destination machine to do the install from the ftp or http (or NFS) server. It may not be possible. Novell has a guide for a network install across the *internet*. That would be a nightmare. An install across a 1mbps DSL would take ages. If you don't know, a network install across your own business or home 100mbps network is really, really nice. It is at least as fast as installing from CD and there's no disk swap. I've done this several times with Fedora, and it works great. - Given that I'm happy with Fedora, why try SUSE? The Wacom tablet. After hours of Googling I still can't find a good set of instructions for getting the tablet working. It might work easily with SUSE, and there are some instructions on their community web site. If it doesn't work, I'll pay the $50 for installation support and call them on the phone. Linux Features -------- - The Linux desktop has all kinds of marvelous flexibility for the window and button styles, all configured via a lovely graphical control panel. - yum and rpm repositories are wonderful. This applies mostly to Fedora Core. The repositories are convenient, well mirrored, have auto-failover if a site is down, include all the system software, also include optional "extras", and makes it easy to add important third party repositories such as Livna. Updates work very well. Finding packages is a problem for users who are not advanced, but the solution is easy, if obscure. Also, you must run the updates/installs as root. The solution to finding packages is: su to root, i/o redirect yum --list into a file, then grep (case insensitive) for a package name. Here are typical commands: su -l root yum --list all > yum_list.txt grep -i xmms yum_list.txt - The desktop give you many choices of look at feel. You can have something unique to Linux, or you can have a Win XP clone, or something that looks and works much like the Apple Finder. - Full support for the 3 button mouse, including some convenient copy/paste features. (Sadly, these features are offset to some extent by some un-features, but overall it is good). - Linux is great as a server. It is very stable, easy to administer for the common tasks, secure, regularly updated, and the quality of the software is very high. This includes web servers, database servers, and email servers. Some distributions of Linux/Unix have weaknesses in NFS and Samba, but over all, Linux and/or Unix also make very good file servers. - Linux is secure. The operating system is difficult to attack from outside the machine, and there are many available mechanisms to prevent elevated privilege by users. Fedora Core and some othe distros implement SELinux, created by the Department of Defense and made public with the express intention of creating a very secure operating system. - Linux is good for remote work. Because nearly all aspects of software development can be done on Linux with character based tools, only SSH is required to access a Linux server. No VPN or wacky tunneling. SSH is robust, very secure, and fast. SSH clients exist for all platforms (Linux, Win, OSX, etc.). For users who want a full desktop export, the can use VNC via SSH or X windows via SSH for a secure connection that doesn't require extra software or any extra configuration on routers, ports, or servers. SSH handles tunneling the VNC or X connection between your client and the server. - Linux has the best command line shell (bash). This may sound wacky, but bash is mostly easier and faster to use than a Graphical User Interface (GUI) file interface. There are some small nice features, and one huge feature: tab complete. At the shell, type what you know (which could be nothing) and press tab once or twice. Bash will offer you a list of possible completions. This means that you can change directory to /home/ms3k/public_html/my_web_project with a very small number of keystrokes, and since bash is completing the choice for you, typos are nearly eliminated. I realize that using bash can take some tutorial time, but the same is true of Macintosh OSX's Finder or the Win XP desktop. Try to move a file (not copy) to a different folder on the Mac. I've been using a Macintosh since 1983 and I still can't remember that operation. Here's a better one: on OSX or Windows try to move a file to a different folder and give the file a different name at the same time. Not possible. The learning curve on bash isn't as bad as most Linux apps. Now that I've got tab complete in bash (and in some places on emacs) I keep trying to use it in Firefox on URLs. Of course that doesn't work. I have seen some file dialog boxes that support tab complete (yay!), but most don't. Frustrating. - Linux has world class desktop software for word processing, spreadsheets, presentations, photo retouching and pixel drawing, vector drawing, web browsing, email, instant messaging, and play back of music. - Image manipulation with Gimp is wonderful. Gimp is reasonably easy to use, has a nice web site with tutorials, and is packed with features. - Some of the CD and DVD stuff is pretty cool, even though most of it is pretty obscure and difficult. Joerg Schilling has written CD and DVD software for Linux. We owe him a huge debt of gratitude. - I get to choose my window/control style (not possible with OSX or Win XP). Under KDE I can set windows to not have borders when maximized. KDE does not create new windows off the screen or under the task bar (Apple OSX will gladly create windows partially off screen, and regularly tucks part of a window under the Dock where you can't click.) All my windows are grouped by application in the task bar (apparently not possible on OSX). Alt-tab cycles through all windows (not possible with standard OSX apps; might work with non-Apple extensions). I can configure the clock in my task bar to include the date (apparently not possible with OSX). KDE (and most Linux desktops) have a "Start" button, and it can be configured with whatever items one wishes (OSX has no start button or an equivalent). - Linux has great support for 64 bit and SMP. Directories on the disk can have very large numbers of files (tens of thousands; this probably isn't a good idea, but it works). There are features in bash and other Linux utilities that make it possible to manage these files. From personal experience, large numbers of files in OSX and Win XP cause serious problems. Linux Opportunities ------------- - A fairly simple Perl script written specfically to use large amounts of RAM and CPU can still hang a Linux system. This seems to be a fundamental flaw in the kernel scheduling algorithm. MS Windows is worse, but that's no excuse. In spite of this (apparent) flaw in Linux, my servers still have very high availability (I don't deploy code which attacks my machines.) Nonetheless, this is still odd shortcoming for a modern operating system. - In March 2007 I prepared a Fedora Core 6 install for a friend as a simple desktop. The machine needed Firefox, modem dialing ability, and Flash. Elapsed time to install and configure: 5 hours. The first hour wasted was due to Anaconda (the Red Hat and Fedora installer) crashing due to some problem using the AGP video card. The kernel panic didn't indicate a video problem, seaching Google was not very helpful, and I determined the final agp=off solution mostly via trial and error. Once the install worked, it only took 30 minutes. Anaconda crashed when I checked "Fedora Extras", so I had to re-do the first part of the install. Right after install I had to run an update (as it always the case with any modern OS install). I'm not counting time the computer spent working, just time I spent typing and clicking. Another hour went into setting up the desktop and disabling unused daemons (mostly to save RAM; this machine only has 256Mb of RAM). An hour was used getting games. The yum group "Games and Entertainment" is mostly optional packages. Yum doesn't have a way to automatically install optional packages as a group. I gave up, and hand installed a couple of what seemed to be larger game packages. The next hour was spent an hour trying to get the auto-login to work (KDE desktop with Gnome's window manager; the Gnome login manager has some issues). Another hour was wasted finding out what kind of modem was in the computer, (Conexant chip set) and what solution existed for that modem (linuxant.com). Another hour was spent setting up and testing an ActionTec modem I happened to have laying around unused. I never did use the internal Conexant wintel modem. The ActionTec Dual PC modem is one of the coolest things I've ever seen. - By default KPPP (the modem connection tool) requires the root password. The KPPP documentation being obtuse, addresses the problem of granting access as "Restricting access to KPPP". If you read the section about "restricting" access you find information on "allowing" access. The file /etc/kppp.allow does not exist by default. http://docs.kde.org/stable/en/kdenetwork/kppp/security.html # /etc/kppp.allow # comment lines like this are ignored # as well as empty lines fred karl daisy This process must have been confusing to other people who used alternative methods to solve the problem: http://www.edgy-penguins.org/non-geeks/howtos/rootlesskppp.html - Linux people love to sneer at memory use under Windows. Ha! (sarcastic laughter) My FC6 X Windows process is using 200MB (VSS, only about 45MB of RSS). Just one process. That's really nasty on a machine with only 256MB of RAM. Heaven only knows what X is doing with all the RAM. I changed the screen res to 1024x768. No change. I changed the bit depth to 16. No change. I searched Google for an hour. Most of the X Windows pages are from 5 or 10 years ago. Nice (not). People say, "Rely on the open source community to answer your questions." That's a joke. Have you noticed how many questions in forums have no answer? It is an embarrassment to the Linux world. At least the forum moderators could delete the 5 year old questions with not a single response. X Windows seems to work fine, but my poor machine starts swapping with only a few apps open. I guess I'll waste more hours trying to switch window managers to see if that is the problem. (Switching to XFCE didn't help much. I already had disabled as many KDE "features" as possible. KDE with the extra services disabled -- from the control panel -- is essentially as "slender" as XFCE. Go figure.) - Wintel modems under Linux are nearly impossible to get working. This wouldn't be so bad except that the Linux community has been unable to list the working "normal" modems. It isn't clear if the commercial versions (Red Hat, Suse, Linspire, etc.) supply a full set of drivers including known drivers for Wintel modems. - It is common for a Fedora update to be several hundred megabytes (this is probably true for all distros). In March 2007 I installed FC6, and immediately ran an update: 425 MB. This would be a serious problem for someone on a dial up (phone, modem) line. There doesn't appear to be a way to create a set of "update" CDs (or DVD) for Fedora or any other distro. At a constant 4 Kbytes per second, 425 MB is more than 24 hours of online download time. By the way, this was a fairly minimal FC6 install. If you are on a dial up line, you will want to take your computer to a location (friend, work) with broadband to run you updates. The Linux world has not provided a disk-based update method. - Windows has IE. You pretty much can't get rid of it. Well, KDE and Gnome has Evolution, and you pretty much can't get rid of it. Be my guest: search Google for "fedora uninstall evolution". I tried to get yum to remove it, and yum wanted to take out half my system. I don't use Evolution, and and after a frustrating 30 or 40 minutes of "research" in Google, I discovered killev that will get rid of the danged Evilution (ha! that was a typo, but it's funny!) daemon. But there's a rub: Firefox still wants to launch Evilution everytime I click an email link from one of my accounts (but not from my other account). What's up with that? I've grep'd my dot files/directories for "evolution" (case insensitive, of course). Nada. More wasted time, and no solution found. So I just right click the email links, "copy email address", and go over to Thunderbird and manually create a new email. Not really a big deal, but it is stupid. This could be a reason to go over to XFCE, but I'm not sure that even XFCE can be run without some dependency somewhere for Evilution. - Evolution needs man pages, and needs management tools. Once the evolution daemon gets started, it is very, very difficult to find out how to kill it... because there is no documentation. - Evolution should not be the default email for Gnome. Evolution is too invasive, large, confusing, poorly documented, and totally weird. - The man page for the bonobo-activation-server is a joke. How do I kill it and make sure it never starts again? The answer is pretty simple: KDE - Why is there always seem to be at least one instance of gconfd running even though I use KDE? Can I kill these vestigial instances of gconfd? The gconftool-2 man page is also pretty much of a joke. - KDE has plenty of odd little daemons, but at least there is a way to stop them and make sure they never start again. - There are many programs (especially daemons) that have no man page. - Open Office (aka OpenOffice.org or OOo) does not display and print documents identical to the display and printing in MS Word. Many documents are fine, but I've noticed a greater trend for people to create documents using text block and boxes (by the way, this is a nasty, abhorrent trend). OOo not displaying (and printing) identical to MS Office is a huge show stopper for many people. It is particularly bad with documents that are formatted to be a single page. This may improve when Microsoft and OOo begin to use the same, open, standard, document file format. However, given the Microsoft's track record for breaking standards, and the many issues Linux has with technologies such as fonts, I am pessimistic about the outcome. - Something weird occasionally happens when dragging the mouse to select text. In applications as diverse as Thunderbird, Emacs, and Konsole, the selection starts, but sometimes when the highlighted region reaches the bottom of the window, the selection swiches context and tries to drag the window border. Or sometimes the selection switches to the opposite (it select towards the top of the document instead of towards the bottom where my cursor is placed). This has been going on for years with KDE and Fedora. - There is still no decent wysiwyg HTML editor (web editor) for Linux. All the products I've tried under Linux have one or more very serious, show-stopper category bugs. NVU is a good start on a web page editor, however development has ceased. No web editor for Linux is a showstopper. - Movie editing is so bizarre under Linux that I am unable to understand what to install and what it will do. - One time, a few year ago I tried to capture digitized sound from my sound card. I was even using a fairly new (at that time) SoundBlaster card (as opposed to the on-board sound chip). It was horrible. The sound was low quality and full of drop outs. As usual with Linux, it is not clear what applications will save digitized sound, what these applications are, and how one gets them working. - Support for drawing tablets is weird and partial. It seems possible to get it working, but requires hacking some of the X windows config, and there is more config necessary inside Gimp. I still have not been able to get the Gimp stuff 100% working. FC3 was horrible for the tablet. FC5 is pretty good. There are rumors that "it just works" under FC6, but I have not tried it. - CUPS is still nearly impossible to work with. As of 2007 I can say it is better than before, but "before" is was impossible. I've spent hours pouring over documentation and editing config files and still often could not get printing to work. With CUPS I spend hours and it usually works. The http config built into CUPS is a flaming pile of compost. Sure, it will set up a printer, but loads of the other config simply isn't supported via the web interface. For instance, it doesn't have a setting that allows other machines to browse the queue names. In fact, I can't find such a setting in the KDE CUPS config GUI either. More on CUPS. The morning of March 7, 2007 I need to set up my FC6 machine at work to print. First I try the KDE control center. When scanning the subnet, a dialog box comes up to warn that I'm about to scan a subnet that my machine isn't on, but also kcontrol (whatever that is) also puts up the same warning on top of the dialog box (and you must click in the kcontrol box to make it go away). More stupid Linux tricks. I ignore the dialog box bugs. I select a driver. Then the system tells me it cannot create a temporary printer. So I skip the test, and at the end it says it cannot create the printer. No reasons given. I go over to the CUPS web interface, find logs, and discover that the logs are full of messages about not being able to connect to the "system bus". Dbus is running. Never heard of a "system bus". I Google the error and find one unanswered question in a Linux newsgroup. Instead I add the printer via the CUPS web interface (If you are a Linux sysadmin you will know the URL is http://localhost:631/ ). That works, but the printer URI has to be manually entered. Network TCP printers are socket:// and use port 9100. Finally it works. Even the test pages work. Then I print a test document which happens to be A4. Ever after kpdf thinks that all documents are printed on A4. After that I decide to try to reproduce some of these errors by adding a second printer. This time the KDE printer control says "Unable to load the requested driver: Unable to create the Foomatic driver [HP-LaserJet_4250,Postscript]. Either that driver does not exist, or you don't have the required permissions to perform that operation." Why did it offer my a printer driver that doesn't exist? That's a new bug. I try loading other drivers. Here is another error I got: "Unable to load the requested driver: /usr/share/cups/model/foomatic-db-ppds/HP/mono_laser/hp_LaserJet_4200_Series.ppd.gz(line 1): syntax error, unexpected OPTION". This could be because I'm running the control panel as a normal user, and not as root. Try it as root (administrator mode). Same first error. Try another driver. Similar second error: "Unable to load the requested driver: /usr/share/cups/model/foomatic-db-ppds/HP/mono_laser/HP_LaserJet_4250.ppd.gz(line 2): syntax error, unexpected OPTION, expecting KEYWORD". Linux will not become the desktop of choice if it cannot print. - CUPS print jobs never go away. There is no way to really cancel a failed job. You can get CUPS to stop working on it, but CUPS won't tell the printer to cancel. That is really ugly when the a buggy driver is printing pages of garbage on the printer. Once finished, the cups jobs stay in the GUI view. No way to get rid of them. (Well, I suspect that if you su to root and go hunting in /var/spool you'll find the list. As far as I can tell, this isn't in the docs, and besides who wants to su to root to clean up last year's print jobs?) - What is the minimum requirement on the server and client to run NFS? I've spent hours sifting through documentation and I still don't know. Apparently you should start portmap and the rpc daemons on the client manually (semi manually - chkconfig), even though netfs will start them. The don't necessarily shutdown properly if netfs does the starting. What is netfs anyway? It has a one sentence description if you read its source code (it is a shell script), but that single sentence isn't too helpful. Even worse, try to find out why portmap complains about a lost connection to the server during shutdown, after the network has been turned off. There's nothing in the NFS logs on the client or server, but if one tries to reboot the machine, there will be obscure messages in the NFS server /var/log/messages about lost connections. If one waits a certain amount of time (between one and five minutes) things are fine. The problem went away on FC6 where more daemons are running, and netfs is *not* being used. Solutions to these problems would include: documentation, examples, log files. - Flash is always old and behind the Apple Macintosh OSX and Windows XP versions. This isn't directly the fault of the Linux community, but it is a huge headache. - It is usually a bad idea to upgrade from one version of Fedora Core to another. About half the time the upgrade fails in that the upgraded system either will not boot, or has very serious problems. You should do a fresh install, not an upgrade. Unfortunately, a fresh install requires reformatting your hard drive. - Partitions and /home. Fedora Core wants to completely wipe out any Linux partitions with system software during an upgrade. Unfortunately, the default configuration is to put the home directory partition on the same partition as root. This means that when you upgrade to a new version (about every 12 to 18 months) you will have to restore your home directory from a backup. The solution is somewhat complex for the end user and involves creating a new logical volume on a separate partition. It took me a hour or so to get this working (due to lack of docs and lack of examples). I have not upgraded this particular FC installtion yet, so I'm not sure what will happen. Due to partition issues and other headaches, for my home installation I keep our home directories on an NFS server. However, that isn't useful to non Linux sysadmins due to the complexity of setup and admin. It could be simplified and made robust, but the Linux world doesn't seem to care. - Fedora Core uses the Logical Volume Manager (LVM). This apparently has advantages for managing disks and partitions, but it has a near total lack of useful documentation and examples. The command line admin tools are obscure even by Linux standards. - Disk Druid is use to partition, control LVM and maybe even format disk partitions from Anaconda, the Fedora and Red Hat installer. Disk Druid has some nifty features, however, I am unable to find a stand alone copy of Disk Druid. Apparently it simply doesn't exist, nor does documentation. It looks like Disk Druid would be a nice GUI LVM manager, but alas, one can't find, install, or run it. - One time in ten years I had a corrupt rpm repository database. I don't even know how it happened, but it had something to do with yum. This was a huge problem, and took hours to clean up. - GTKpod claims to support the iPod. There is no documentation, and after 30 minutes of non-function between my machine and GTKpod, I gave up. Part of the problem was that my machine didn't fully connect to the iPod. I was never clear how CDs get ripped and then moved on to the iPod. Since there are no docs, I can't tell if GTKpod rips or requires an external ripper. Solution: buy an Apple Mac Mini (there are additional Linux deficiencies which compelled me to buy the Mac Mini). You are wondering why I have an iPod instead of an Ogg enabled player: it was a gift. Besides, I've looked at the Ogg player market. Totally confusing, just like the Linux world. And prices of Ogg players don't look that compelling. And even if I had an Ogg player, will I just be able to drag my m3u files over? Not likely. I'll have to separately drag over each album's m3u and the directory tree with the album and songs (since paths in m3u are relative to the location of the m3u). Yet another huge mess. - Fedora Core installs a raft of daemons. Daemons are little helper applications that run in the background. They consume little or no CPU, and little memory. However, there are a dozen or or more of these things, and many of them are 100% undocumented. Others are installed even on systems that clearly cannot use them. Fedora Core comes with a very long list of enabled daemons, regardless of what the hardware is capable of. On the WWW you will find out-of-date lists of the daemons (including my list) since new daemons are added constantly. Here are some examples: When I have an AMD processor, why is the Intel microcode daemon installed and running? Irqbalance is always on but can only be used by multi processor systems. Sendmail is always on, but I'm guessing 99% of desktop users don't use it. At least two readahead_* daemons are on, but their utility is unclear, and they are probably a bad idea on systems that don't have huge amounts of ram. Atd is always enabled, but I've never seen a system (server or desktop) that used it. FC6 defaults to Bluetooth enabled, but none of my computers have Bluetooth hardware. Kudzu seems enabled, but for the last few version of FC, Kudzu is either useless or breaks other features. As far as I can tell, there is no end-user GUI for controlling the daemons, so the user must login as root and run chkconfig to set the daemons not to start in the future. A separate step is required to actually stop running instances of the daemons. - Firefox and Thunderbird use GTK, and as a result ignore the font choices of KDE. You must install the GTK engine. This adds a control panel to the KDE Control Center Appearance & Themes. Use the new control panel to tell GTK apps to use KDE's font choices. There are dozens (hundreds?) of issues like this with Linux, and there is no collection of documents listing these issues and the work arounds. - Fonts are a mess. They often render poorly. Not all applications can use all fonts. The sizes are difficult to manage. Heaven help you if you switch from screen resolution 1024x768 to 1280x1024 and want to increase your fonts sizes to be legible. (The font sizes are given in points, and that is an absolute, however, the point size seems to change depending on screen resolution. Higher screen resolution results in the same point size being smaller. Either I'm losing my mind or there is a fundamental flaw in X Windows font management.) System fonts are separate from application specific fonts. There is no central control for fonts (or at least not a central control I can find). All the fonts come in different dot-per-inch (dpi) resolutions, but it isn't clear which one to use. I have managed to get my application fonts to be legible at 1024x760, but some of the dialog boxes simply have no adjustment. Some of the font browsers (applications to view and choose fonts) are nice, and some are really crude and confusing. Many of the font issues are specific to various applications, which are indirectly Linux issues. However, one can deduce that the underlying font system is so nasty that otherwise capable application developers are unable to get fonts working consistently. - Linux sound systems are a snarled disaster. Out of the box FC uses aRTs to run ALSA. With FC6 KMix did not to effect left right balance. My system was running ALSA (so it claimed) and KMix claimed to support ALSA. There was no indication of why balance didn't work. The control moved, but the sound did not change. Tracking down the problem with KMix and the left-right balance was a typical Linux problem solving scenario. Since KMix left-right balance did not work, I checked yum to see if there see if there were other aRTs tools. Sure enough there was artsmixergui in Fedora Extras. I installed and ran it. It defaulted to separate left and right controls (split) for each control. (I recollect that it fixed the balance, but it had other new problems not present in KMix.) I had an "ah ha!" moment. Perhaps KMix has such a feature. Right-clicking on KMix controls revealed that they can be split (to the credit of KMix this feature is mentioned in the handbook). This enabled me to give each channel (via PCM) different balance. It also showed part of the reason the left-right balance did not work: balance changes the strength of the master volume. KMix master volume does not work on my system. Master volume has no effect. I still don't know why, but since I can set the left-right PCM, I don't really care. Time wasted: only one hour. - FC6 ALSA sound won't allow Flash animations in Firefox to have sound if XMMS has been playing music. The Flash movie plays fine, but without sounds. I have seen setups where XMMS and Flash would simultaneously use the sound system without problems, however, I don't know how I managed to get that working. [Resolved: This was a bug in the early release of the Linux Flash player.] - Turning off all KDE sounds was a challenge. This falls under the category of "notifications". I think I chose options such as "visual notification" or "none" and "apply to all applications" until KDE stopped beeping. KDE notifications usually wait until the current application using sounds (XMMS playing music) stops, then the sounds system plays all the pending beeps. That's irritating and useless. - The aRTs (bizarre capitalization) tools are apparently useless. The volume slider doesn't work. None of these tools seem to be used for anything, but these same tools have been included in the default install since early versions of FC. - Sensors are often tricky to get working. If they work at all, generally you only get CPU temperature and maybe CPU fan speed. Motherboard temperature and system temperature are often not available. I'm grateful that Linux has the lm_sensors package, but it is difficult to understand, and appears to be very limited in its capabilities. I have never been able to understand how to get lm_sensors integrated with the KDE sensor and hardware monitor applications. - No MPEG4 support from the standard yum repositories. There used to be support from Livna, but this disappeared around January 2007. - No mp3 support out of the box. Readily available from Livna. Granted that Red Hat can't package up an MP3 library (due to patent restrictions), but the MP3 stub should give URLs for the real thing. - The best music player is XMMS, and it is not installed by default. I've tried the other music players, and mostly they crashed or failed to work. I realize that they are improved all the time, but xmms has always worked. - FC6 xmms has a problem playing mp3 files. First, you have to enable the livna.org yum repository. Install the xmms-mp3 package. In xmms disable the stupid RH mp3 placeholder and enable the xmms-mp3 input. Now you'll discover that mp3 files still don't play if you are using the ALSA output. With aRTs the songs don't play either, but xmms cycles through the song. Apparently, if you choose to use OSS or eSound then the combination of xmms and mp3 will (maybe?) work. However, other things like the Flash player will be broken. There are rumors that the "real" xmms works. You have to remove xmms (via rpm or yum) and get the current xmms from xmms.org (or Sourceforge or where ever xmms currently has it's home). - The X Windows clipboard is a joke (this includes the KDE and Gnome clipboards). I use Clipper with KDE to overcome some issues. It is common for items copied in one application not to be in the paste buffer for other applications, even though Clipper has the item checked as the default paste. Generally, choosing the item again in Clipper makes the item available to all applications. However, sometimes I must paste the item into Firefox or Thunderbird as a workaround to make the clipboard item available to other applications. - Select-direct-to-clipboard may have been a good idea a really long time ago with early, crude X Windows systems, but it is a bad idea with a modern GUI. Select direct makes it impossible to "replace selection by pasting". So, Linux users are forced to copy (item 1), select (item 2 to be replace), delete, go to the clipboard (Clipper) and re-select item 1, return to application, paste. - Some versions of Red Hat and Fedora Core required Gnome to complete the first boot. This was a serious problem if the user had opted to use KDE and not install Gnome. - Gnome with Fedora Core 6 (FC6) locked up. This is yet another episode in the continuing saga of Why I Don't Use Gnome. - Gnome is still the default (as of FC6), in spite of it using more memory and being less stable than KDE. - Automount and HAL seem to conspire together to prevent CDs from being mounted or ejected. I have been unable to eject the CD from Grip or the eject command with most versions of Fedora. Disabling automount/autofs/HAL (or some combination) seems to have helped. - Until FC6, Grip could not rip music CDs with a data track. XCDRoast usually could read the music tracks, and could write these tracks back to a CD which Grip could read. This is odd. I am under the impression that Grip and XCDRoast both rely on cdda2wav for ripping. I really love Grip. The issue with data tracks (and CD eject) have been the only problems I've had with Grip. - DVD burning and copying is almost unsupported. The standard tools with Fedora are either incapable of burning DVDs or the documentation is so horrible that even Linux system administrators (sysadmins) are unable to make it work. - Oddly, I don't think that there is commercial DVD software for Linux. I would gladly pay for something since the alternative is literally dozens of hours of wasted time. - XCDRoast seems to be the only reliable CD/DVD burning software, however, it also is not part of the default FC install. Even XCDRoast requires the cdrecord-ProDVD package that isn't available via yum. - FC5 had a version of cdrecord-ProDVD that didn't work with XCDRoast to read data CDs. On several occasions I put a data CD in the drive, and XCDRoast thought it was a music CD, and refused to read the CD as data. It was not possible to copy the data CD as a music CD (I tried). - I never have been able to find a way to read a .iso file from a data CD. This seems to also be a problem under OSX and Win XP. However, with Linux and FC this is a big problem when I want to copy the installation CDs onto a hard drive and do network installs (which is faster and more reliable). There is an obscure option using dd, I may be able to do something with readcd. This seems like a not uncommon problem. Most of us don't have enough bandwidth at home to download 3 or 4 gigabytes that comprise the FC distro, so we get CDs and bring them home. - The hardware guides need to be updated. PCMCIA in particular has a hardware guide that doesn't match it's own config files. - The Linux world (and the world in general) is full of mailing lists and forums with unanswered questions. I suppose this isn't so much a failing of Linux as a failure of forum/email list moderators. If the open source community wants Linux to succeed, they would help the cause by deleting unanswered questions from email list web pages and forums. - Linux needs a knowledgebase of problems and solutions. Contrary to what open source advocates say, forums are not a substitute for support. All documentation should have both examples, and the steps necessary to verify that something is working. - Every error message needs to be explained somewhere. Fedora needs a unified list of all error mesages, each with a hint how to fix the problem. - KDE and Gnome documentation is (mostly) a joke. I have never, ever seen an error message explained in the documentation. I tried to run a Gnome movie player and it said I needed to install something. Nothing in the documentation hints at what I need to install or where to get it. In fact, the movie player documentation doesn't even hint that anything can be installed. - Here's a small, but typical KDE issue: launch feed back runs for N seconds unless the application launches in less than N seconds. Not much of a problem when things work properly. However, about 5% of the time there's an update, Firefox won't restart. New Firefox chokes on the .prefs of old Firefox. The launch feedback runs for 30 seconds even though Firefox failed to launch in less than 1 second. The launch feedback is sort of just glued on, and not well glued on either. The taskbar is funny too. First the icon shows up, then the icon disappears, the machine grinds away, and finally the application opens the the taskbar icon returns. What's up with that? Wacky. I've resolved to disable launch feedback in lieu of a CPU meter applet. When I launch a big app like Firefox or Thunderbird, the CPU meter is a good indicator that something is happening. You may be wondering "Why does this guy care about launch feedback?" See the next item. - Applications that don't launch don't give any feedback. Sometimes an actual segmentation fault will pop up a dialog box, but I don't think I've ever seen one from Firefox or Thunderbird. After an upgrade I've had missing applications like XMMS. Choosing it from the start menu results in... nothing. Linux is still clearly intended for Linux sys admins who launch a terminal window when there is a problem. - Installing FC6 on a machine with an AGP graphics card crashed the installer very badly. It created a "kernel panic" before the installer even got going. This happened even in text mode. Oddly, the initial FC6 menus were ok. Searching Google with some parts of the kernel panic dump seemed to indicate that kernel parameters were required. This is a non-starter for normal people (yet another sign that Linux is not ready for the "desktop" of non-Linux sysadmins). It turns out that I needed to type this in the installer startup: linux graphical agp=off This was interesting. This solution came frmo obscure hints from the web, and some trial and error. I spent at least 30 minutes looking through Google for documentation of the kernel parameters, and found nothing. I've looked before. Apparently, the kernel parameters are secret, although I've needed them to get about 25% of my Fedora installations working. The kernel panic said something about APIC. Paramters that did not work: noapic, noacpi, noprobe, ide=nodma. When the installer set up grub, it did not include agp=off in the command line. In retrospect, there was probably a place for me to enter this during the install. Even though I got a graphical install, the first screen (media check) was rendered in curses (quasi-graphical text) without mouse support. Tabbing between items, and hitting return is somewhat odd, especially for normal people. - Checking the "Extras" yum repository checkbox in the FC6 installer crashed the installation. That was 15 minutes of lost time since I had to restart the process from scratch. The installer should be more carefully and completely tested. It should never crash, and needs above average error handling. I've never seen a Windows installer crash (although I'm sure it happens). I've seen the Red Hat / Fedora "Anaconda" installer crash on many occasions. - What is "insecure" in /etc/exports? It is mentioned in the man page for exports, and has to do with using low port numbers. The docs fail to mention when or why one would use this. It turns out that Apple OSX needs it when OSX is the client and Linux is the NFS server. Linux needs better documentation and more examples. - Why does the FC6 time default to "System time uses UTC"? Sure, the machine knows your timezone, and will gladly calculate an offset, but if you hit a time server, does the time server know your timezone? Algorithmic time zone data could be incorrect if the US Congress messes with the daylight savings time dates. - The GNU people are some of the most rabid Linux supporters. They have created amazing software. They have also created huge amounts of documentation. Sadly, most of the documentation is horrible. It alludes to some features without giving necessary details. Some features are not mentioned. The docs are not searchable (except via Google, but that doesn't work too well.) GNU rants about Linux and open source, but without good docs and examples open source software just is not going to fly. - When Emacs is run in windowing (graphical) mode, it has a menu to use Mule (the Multi-lingual environment) to select a font or a fontset. However, there is no built-in way to save that setting for a future session. The documentation doesn't address this problem. Don't be fooled by the "Save Options" menu which says "Save options set from the menu above." Mule options are not included. See my docs http://defindit.com/readme_files/emacs_font.html - Emacs key binding is interesting. There are maybe thousands of pages of documentation, and some is quite good, but none of it mentions that although control-shift-underscore is bound somewhere internally, you can't bind control-shift-n. I would really like to know why control-shift-underscore works in X Windows (X) and non X, but other control-shift bindings only work with X. Much of the blame for this lies with X Windows and/or the console drivers. Download my .emacs file for some examples, and just be aware that you should probably test all your bindings in "emacs -nw" if you want them to be portable. Also there are separate key maps, and you have have to change a binding in a different key map. You'll have to guess at the names of the maps because describe-bindings prints the key map names in some human readable form, not the exact form they must be used in your .emacs file. - Fedora 6, sound works fine, but only in one application at a time. If XMMS was the first to use sound, then Firefox won't make sound (no message). Noatun give this message when it starts: "Connecting/starting aRts soundserver failed. Make sure that artsd is configured properly." If Firefox starts first, then XMMS says:"Couldn't open audio" and a suggestion that I check to see if my sound card is configured properly. This is amusing since Firefox is playing sound in another window. You can imagine that spending an hour searching the www will turn up the answer to this problem. As far as I can tell, my system is using ARTS for sound. XMMS and the KDE Sound System config will both work simultaneously (mixing sounds together). However, Firefox (Flashplayer) and Noatun seem determined to have exclusive sound access. I have seen Fedora installations where the sound behaves well in mutiple applications, but I don't know what the secret is. (Installing flash-plugin.i386 0:126.96.36.199-release seems to have fixed the Firefox/Flash sound issues. I installed alsa-oss, but I didn't configure or enable any oss features, so I'm guessing that installing alsa-oss didn't have any effect. I found some instructions that said to install alsa-oss then run alsaconfig, but there is no such application. Noatun now doesn't even bother to put a window on the screen.) - The media player Totem as installed by Fedora says this about wmv files: "Totem could not play 'file:///home/mst3k/yadayada.wmv'. You do not have a decoder installed to handle this file. You might need to install the necessary plugins." There are no hints about where to get these "plugins". The Totem documention doesn't mention plugins. It probably means that you should install mplayer and all the mplayers codecs. After that you might be able to play movies with Totem, although using mplayer would make more sense.