What's behind all those Icons,
and what really makes it all go?


What this rant is.


This rant, like any other is a collection of hopefully short concise thoughts about a huge subject, in this case Linux, and Open Source Software.  I try not to explain the whole while attempting to cover one thought, that said, sometimes they just seem to get away from me, and I go off about things that have nothing to do with anything.  I therefore apologize in advance, and chalk it up to the fact that this site, like every other responsible living growing site on the net, is still unfinished.

In this rant I assume you are not at all familiar with Linux, and are in need of a treatise on it, and Open Source Software generally.  So what I provide here is an unsorted series of mostly single paragraphs, that illuminate some hopefully interesting facet of this impossibly large subject.  You are therefore instructed to take what you need from this rant, skip anything you already know, skim the rest, and move on to the active tutorials. These are often characterized by the word "Things" or "HowTo" in the HTML file. 

In order to use the active tutorials you will need an internet connected computer that you have just installed Linux onto.  From there you will navigate your way back to this site, and tryout some of my handywork, some of which may even work :-)  The important thing to remember here is that the machine you experiment on, MUST NOT be worth anything to you, this should be a machine culled from the closet, or harvested during your last Dumpster dive  YOU ARE NOT HERE TO DO ANY REAL WORK!  You are here to learn, nothing more.  After you learn Linux well enough to climb out of the traps, and pitfalls, without loosing data, you probably have a pretty good feel for what kind of hardware to buy, and more importantly, WHAT NOT TO BUY!  Buying hardware that works flawlessly with Linux, means that you do your homework first, carefully choosing each and every item, and in some cases you can't even rely on make and model number, because some unscrupulous manufacturers LIE to trick you into buying their broken products.  I hope to give you several strategies to deal with this issue, and avoid wasting money.  Generally speaking solutions in Linux and Open Source are not about spending money, nor are they fleeting.  Under Linux you mostly spend time to find a solution, whereas with Closed Source Proprietary Lockin hardware solutions, the accepted strategy is to throw money at the problem until you buy it into submission, solutions via this approach come at a high cost though, for one thing it tends to encourage hardware manufacturers to employ the process of Orphanization of their own hardware.  It works like this, the next Micro$oft forced upgrade, they simply refuse to write a new driver for the old hardware device, your only choice is to buy a new device, what ever that device is, or how expensive it is to replace it.  It doesn't stop there, let's say it was a printer, whose cartridge is refillable, now the new one, only accepts Genuine XYZ brand toner, and ink refills, special paper that costs a bundle and all new fonts that license for only a limited period of time.  What if you had the Source Code to the driver, and all you had to do was recompile it into the next Kernel, it would be pretty hard for them to say we can't justify the outlay to rewrite the driver.  The Linux and Open Source way of doing things, by its very nature, provides solutions that tend to be permanent, and yours to keep, providing you make the effort to backup your work, and archive the source code files you've spent all that time and effort to find.  As a result when you find yourself in the loss leader isle, looking at a card that is a "good deal" price wise and is known to be exceptionally Linux compatible, or you have proven it to be so by buying one and throughly testing it, you return to that same store and buy enough of that same card to fill your needs for the forseeable future.  Your time in testing it is thus spent Once!  You find yourself reusing that card in other machines, using the same drivers, and the settings are all the same, for that type of card, on all of your machines, if something in the   /etc/   directory gets overwritten you have a model of how this card is supposed to be set up on other machines on your LAN (Local Area Network), you can access their files remotely without ever leaving your seat.  There is a lot to be said about the time savings that arising out of being able to do that.

Why open source?


If you think Linux is a low cost substitute for Windows, and that is your only motivation for buying into using it, please do yourself a favor, and hear what I have to say, and go back to Windows.  While it is true that many Windows based programs will run under Wine, on Linux, the degree to which they fit, will disappoint you.  Unless you are truly committed to finding native Linux software replacements for the software you are now using, there is little to be gained by simply finding an alternative platform to run the same old tired programs you are presently running under Windows.  Wine often called the WIN-dows E-mulator will run a quite few Windows programs but the buttons do unexpected things, there are often font problems, and generally Windows software is not held to the same high standards that the Open Source Community tends to hold itself to, so even running Windows programs in the Linux environment is tantamount to amplifying things like memory leaks, and disfunctional advisory locks that tie up system resources long after the program has exited, or worse yet outright crashed.  The very reason Windows temp files tend to proliferate in the first place is that these poorly written programs fail to properly clean up after themselves when they crash.  Under Linux you can write programs so that even if they do crash, a cleanup thread wakes up as a result of the program nolonger responding, just to tidy up the mess they made.  Not that Windows lacks such a mechanism, but Linux stays up for years, not days, as Windows does.  From a developers point of view, it's hard to justify the extra programmer man-hours required to make a really solidly designed application program, when the underlying operating system is as unstable as Windows is.  Furthermore you will find that while Wine will run many Windows software programs, the one thing it almost never does is install Windows application programs on a Linux box to begin with.  All of this is not to say the Wine project isn't a good project, what they have accomplished in the face of adversity is miraculous.  They had to reverse engineer every step of the way.  Often finding out that much of the Windows API call documentation lies about key functionality.  It ain't the Wine project's fault, they've done an impossible job, and done it well, Bravo!  The truth is Windows users are happy with their operating system, bugs and all.  If you are an average Windows user, and I charge  that Windows crashes X times  a day, you'll stand there and agree, because you've experienced it first hand.  But truth be known, Windows power users don't put Spyware on their machine, they also have a testbed machine to try out new programs for a few months before they trust their valuable data to them, and you know what; They don't have near the crashes that the average user has.  Therefore my advice to you, is that if you're happy with being a slave to your machine, doing its bidding to get your work done Bill Gates' way, stay with Windows.  Bill has worked very hard to turn computing into an appliance process that requires practically no knowledge of computers to do your work.  I am a Linux advocate but even I recognize Windows has a role to play, and it would be counterproductive to encourage people to switch to Linux, and Open Source for the wrong reason.  I'll probably be excommunicated from the church of the Flaming Penguin for saying this, but they've gotten it all wrong, Unix, and by extension Linux, is not for laid back desktop users, who lack any spark of curiosity as to why the computer did what it just, did and in the way it did it.  You've all seen that other type, they press the space bar at certain times, while editing a simple document, and three floors below them, a gigantic machine rumbles to life dimming the lights, gauge after gauge lights up, menacingly threatening to annihilate all life by its mere autonomous functionality, and then seemingly, for no apparent reason, all is quiet again.  A typical Windows user would ignore all the clatter, but this guy/gal, just has to know why.  He/she won't rest until they know why the machine did that, hours later a simulator has been constructed just to analyze the event, and days later, weak from sleep deprivation, and lack of nutrition they have the answer, not that anyone else in the room can understand it, but they know WHY.  Bill G's miracle bristles at anyone who would dare to look under the hood of his baby, so this tiny minority of simply brilliant computer science minds, leave Windows, for more friendly territory.  But they are not the only people who use Linux, the other major user is those same folks who use Windows all day long, you see a Windows box wouldn't do all that much if it weren't for the monster machines out on the internet, if you doubt me, bear in mind that much of the serious work Google does on any given day, is done by Open Source Software, could you imagine going through a day without using Google?

The real reason for open source software:


One Word...  Trust! You should be able to trust your computer to do what you want it to do, and know that it will carry out your orders, and not be doing things for some unseen spook.  If you have any reason to believe that someone else is secretly running your computer You won't trust it with the data it needs to carry out your wishes, and act as your agent, buying, and selling things on your behalf, negotiating contracts for you in your absents, and the like.  The machines sitting on our desktops nowadays, 2007 AD, are at least as intelligent as a Monkey, as early as July of 1998, a Linux system running on a Pentium 200MMX with 32Meg of ram and two videophone cameras, drove an experimental car, at speeds averaging in the high 80kph range, over roads throughout the Italian countryside, in all kinds of weather, day, and night, often better than the human who was there to take over if needed.  At one point the car under direction of the computer, turned straight into the Sun, low on the horizon, leaving the human effectively blind, he looked down at the instrumentation panel, which revealed the computer was having no difficulty determining where edges of the Road, and lanes were, it was now driving the vehicle, and the poor helpless human dared not take control of the wheel, talk about a tense moment! The Linux Journal carried this story, and you can still get a technical abstract of the March 1999 article.  But remember that word Trust, tell me would you get into a car piloted by proprietary closed source code, that does sneaky things to keep you from going to the competition, and because the bottom line, the life blood of industry, drives closed source code, to release early and often, they release it before it's really ready, so it tends to crash frequently, with little or no provocation.  Suddenly the term crash is a double entendre.  Having access to every scrap of Source code that makes your computer run, is how you keep your computer honest, there simply is no other way.  The penalty is that you have to be willing to learn, at-least a little bit about how to read Open Source code, every day, or at least every week that passes. It means reading the security bulletins posted by experts, because there is no such thing as an impenetrable system, only systems that are less penetrable than others.  Could you imagine people trusting closed source electronic voting machines, especially machines that lack any printed record of votes tabulated before a crash, or allegations of vote tampering, well several states like California resorted to suing Diebold for false claims.  If the source code had been open, from the beginning, nothing hidden from view, there wouldn't have been any false claims to make.  At worst you'd have two camps of experts arguing the finer points of how serious various security holes were, but at least the people would be talking about them, with Closed Source, the company tends to try to hide their incompetence until the pressure builds to the point that overwhelming evidence of criminal cover up raises eyebrows.  Once you can truely trust your computer, many things become possible.  If you can trust it to not divulge private personal information, probably due in part to the careful use of encryption, you can have your automobile track your every move, without worry that it will ever allow that info to fall into the hands of those you would rather not have access to it.  As soon as you get home, it ties in to your home network, or if you stop near enough to a WiFi Library or Coffee Shop, an encrypted VPN performs the same function.  An automobile can take pictures, Mpeg sound sources, think of your car as a kind of internet recording studio on wheels.  Get in a wreck, and you have black box recordings of events that can prove you weren't at fault, but only if you want to use the data, remember you must provide the encyrption key to unlock any or all of this information.  The key here to making all of this a reality, comes down to trust.  There are crypto systems in which if say for instance some goon threatens to kill you, unless you turn over the crypto-key that you can give them a key that unlocks either misleading or unimportant information, and yet that same data set, if acted on by a different key, yeilds deeply personal data.  This process can work for hundreds of streams of data for every stripe in between, from public knowledge to top secret, and the system itself can be filled with so much random noise that there is no way to prove that more info is buried in the stream of crypto data.  So the goon asks for a key, you feign an attempt to withold the key, and then under a more serious threat, you give in, and give them a key of little, or negative value, and they cannot prove that there are more keys to the same data.  In short technological cleverness can protect you, as long as the Source Code is out in the light of day, where everyone can read it, and to keep it out there for everyone to be able to read and share with others, is a clever method to use the worlds Copyright laws against the very interests that are presently subverting them for their own private protection racket.  The general name of such a tactic falls under the term CopyLeft.  One such stratagem, the darling of the Open Source community, is a License written by Richard M Stallman. that was first deployed in the early 1990's.  in Linus Torvalds' Linux operating system.  Its elegant simplicity caught software moguls who usurp generous authors works for their own profit, completely off guard.  It is called the GNU General Public License, or GPL for short.  The Open Source Community asks of any such generous author that they Copyright their work, and then turn around and license it under the GPL to effect the giving part of the bargain.  The GPL forbids licensees from making it available under any other license, and requires them to make the source code available as well if they choose to distribute it in its present form.  What this does in effect is make it impossible for these evil moguls to legally pilfer a piece of GPL'd software, for subsequent re-badging under a name designed to fool the public into thinking that the moguls product is the only game in town.  Further the GPL licensee has a duty to notify the downstream recipients of the software that they, among other things, have the right to modify, and redistribute it with their modifications, as long as they take credit for those modifications, and show where the original can be found.  This pretty much prevents any commercialization of GPL licensed code.  I've only skimmed the surface of the things the GPL does to protect the rights of real live human beings, at the expense of greedy faceless mega-corporations.  I detail more on this later.  Even with the restrictions on stealing GPL programs, or derivatives thereof, there is still plenty of room to make money on Open Source software, otherwise all those for profit companies just wouldn't be in business.  One major profit center is providing tech support, another is building services around Open Source as Google has, others build hardware that incorporate Open Source, and if they are honest, they don't hide the firmware, they flaunt it, people like knowing that a Linux Phone has no hidden secrets, and that if you compile a program for it, and load it onto the phone it will do some new cool thing that none of their peers phones will do, and that my friend sells phones!  Even frompy looking green ones. 

What does open source mean to an end user?


You may think you have no need of the Source Code, those human readable, computer directives that instruct your computer to build for you a binary executable program, because if you have the program, all you are ever likely as a normal user to do with it is run it, as it was designed, and intended to work.  However this is untrue for even the most casual of computer users, because sooner or later they, You, wish for a tiny little modification, that even you would at some point, have the expertise required to make, assuming you had the source code.  For every program of any significance, there are thousands of trained people who, if for no other reason than to sharpen their own programming skills, read the source code of many programs to get ideas on how to accomplish some odd subtask, that a working program's source code will provide.  If they were to see some nasty trick being performed, against the wishes of an end user, do you really think they'd remain silent? Noooo... They'd shoot their mouths off, that they had discovered some Evil Trap hidden inside application xyz! And what of the author of application xyz's reputation as an upright and honest programmer? Once the code is out on the internet, if it has "Evil Inside" TM it's like trying to unring the proverbial bell, once someone points out exactly where the "Evil" is.  This is what we call The thousand eyes effect So it matters, even if you as an end user have no intrest in learning anything more than how to run a Word-Processor.  Aside from that, Posix based installs use the source code to automatically build a custom version of the application for your machine.  The simple act of installing software under Linux is not some Windowsesque Wizard driven copying operation under the hood, but is infact a rich automated interrogation of your computer system, to assess what hardware, and software, are in your system already, to help the process of making exactly what's needed in a binary executable, that you will run. Generally when you get a program tarball, tar is an acronym for Tape-Archive your first step is to "un-tar" the tarball, this separates from a compressed file, all the Source Code components, into a directory hierarchy.  The second step is to run one of the Source Code components, the   ./configure   script, which creates a custom   Makefile   and all that is needed to finish the job is to run   make   which reads the custom Makefile to build the whole application.  For quite a long time these three simple steps are all you will ever do to install your application programs, that did NOT come with your distro, eg. you downloaded them from somewhere on the internet.  But sooner or later you'll find out about the command   ./configure --help   and be quite awestruck with the power of the command line.  The author of these application programs writes a general purpose install, that unless you know about the special features, they all go into the mix, in some vanilla fashion.  However some, and nowadays many application programs have a compile switch to allow the Posix build to produce a single large executable file, called a statically linked executable, that has all the library modules built in.  If you're an old Mac user you are already familliar with these, as long as hardware issues are kept in check, you can copy one of these executables to a floppy diskette take it to a friends house, pop it in the drive, and it will run, regardless what libraries he/she has installed on their machine.  At this point you're starting to tickle the tip of a very large Ice Berg, and from there you begin to slide ever deeper into the world of computer programming. The reason this happens in the Open Source world, and almost never in the Closed Source world of lockin software, is that Linux, and Open Source tend to invite you in, they lead you right under the hood, tell you not to touch the hot manifold, and give you a grease wipe, to clean your hands, to use a well traveled metaphor.  Whereas, continuing on with the comparison in the metaphor, the Closed Source world of lockin software, doesn't trust you to begin with, so they weld the hood shut, and tell you it's greasy and grimy in there, that you'll poke your eye out just to peek in at the machines innerworkings.  This is why Closed Source lockin software, is so inundated, and undermined by malware, (viruses, trojans, and worms) which is now so sophisticated that an average user is unable to remove it. So it stays there, just waiting to spring into action upon command.  Many users are reluctant to remove files from their machine, even if they suspect they are part of a malware system, for fear of loosing what limited functionality they still have left.  The trouble is, these people, and more to the point, their computers, are now part of a vast Bot Net headquartered in Russia, or China, run by members of organized crime syndicates. As I said Open Source tends to invite you in, it is rare that even mildly seasoned Linux users don't know which files are system files and which are not.  So even if you think you have no need of the Source Code you do need it, and if you make the plunge into Open Source just having it will open up possibilities so numerous that if I wrote them all down, by the time you read it all, in disbelief, if you'd simply let the way in which Open Source tends to change your life, run its inevitable course, you would find yourself telling others about something computer related that you have never had personal experience with, but simply because you have an understanding of the underlying mechanisms, that all computing systems use, you have an intuitive advantage that you yourself would have some difficulty quantifying, or explaining to someone lacking it.  This also explains the modern day folklore, supposed experts saying silly things, that are dead wrong often parroting things they'd been told, but never really giving any thought to the idiocy of the idea.



What is a distro?


Ignoring issues like Ring minus N, Linux is composed of a Kernel, the central core, think of those cut-aways you've seen of the Earth showing the hot core, the mantle around it, and the magma around that, and finally the crust, well the Linux Kernel is the central core, around that are helper subroutines, called Kernel modules.

The Kernel has grown so large that it simply won't fit in the one megabyte of legacy memory available at boot time so a workaround was to devise a modular Kernel.  When you compile your Kernel you must place all of the subroutines necessary to start the system up, into the Kernel proper, a file called vmlinuz.  It must be no larger than one megabyte or it won't fit in bootable memory.  Once the basic system comes to life, it has the disk, and filesystem drivers necessary to load in all the rest of the Kernel helper subroutines, and virtual memory management insures that the the CPU has been switched to a mode that can support more memory than one megabyte.  But wait a minute...  Do we really want to load them all? I mean some of them may never be used at all, so there is this grand orchestrater called kerneld, that automatically calls needed modules as the need arises, and similarly, frees their memory when they are nolonger needed.

In other words, most of a modern Linux kernel lives on the hard drive, as a dynamic system, loading, and, unloading as necessary.

OK that's just fine, now how about some kind of a user interface? Well we've got that one sure, infact we've got lots of them, there's sh, ash, ksh, csh to name a few, but the one that most everyone uses in day-to-day living is bash, (Bourne Again SHell) so part of the startup system functions always make sure the system has a user interface.  There are graphical ones as well Xfre86, X.org, or simply X coupled with a window manager, Gnome, KDE, each of which has a potpourri of things to dress them up, abd you have most of a working Linux system.  Add the million or so utility programs, and as quick as you can say Shzam, you've got Linux.

What's lacking is the ever important bureaucracy of Linux... The distro!



  • The two freedoms
  • The core of Linux, its Kernel/modules and utilities have for the most part been written, and given freely to anyone by their author, and, are licensed under the GPL,(General Public License) which is a document filled with very carefully chosen legalese, which prevents someone else relabeling it as their own software, and selling it for a profit, or worse yet removing the source code, so that you can't see exactly what your operating system does on the inside, more on this later. The GPL guarantee that you'll always have the freedom to both read the source code, and rewrite it, so long as you include it, that is make it available to anyone who uses your revision, or your program, is oft referred to as the free speech face of the GPL, the fact that you cannot charge money for that which you wrote, if it was derived from other GPL'd works, beyond recovering costs of making copies, things like media, shipping, and the like, is oft referred to as the Free Beer aspect of the GPL.


  • The distro!


  • Remember those million utility programs? Lot's of them, even very useful ones have problems, some are security holes just waiting for an unwary user, some are flat out illegal in some parts of the world, still others interfere with software already running on the system, then there's the licencing issue, it's almost as if everyone writing an application program isn't truly satisfied with one or more clauses of the GPL, or LGPL or artist license, take your pick, but you get what I mean here.  The Linux Distro house has to shepherd all these incompatible forces, into a single installable, legal, whole, that doesn't crash due to incompatibility problems, and above all, doesn't get the Distro House sued by a law firm in a country that has extradition treaties with the country the Distro House was headquartered in.

    Obviously very little of this is in the users interests, in addition, the for profit public Linux companies have investors to please, I saw it as a sad day when RedHat's IPO went through, because at that time RedHat was working well for me, not anymore.  The next release of RedHat was missing many of the programs I used so the first thing, me and many others do if they loaded RedHat, now Fedora, is to load MP3 players that RedHat refuses to put in their Distro.  As soon as they do that, can it truly be called RedHat? It runs a lot deeper than even that, everything you do to customize your system removes you from the Distro House Paradigm, in fact at about the point you get about half way there in your quest for the perfect set of customizations, if you begin to feel like the left over fragments of the distro you started with are starting to really get in your way, and you feel like they are doing more harm than good, you can gut them out of your system, and see if it still runs.  I did just that and found it runs much much better, in fact I couldn't get X to run at all under FC2 until I did just that.  So as soon as they do that, can it truly be called Fedora?

    Get yourself an older copy of Slackware, and look at all the stuff that's missing in the /etc/ tree.  Slackware runs OK, with what appears to be an Anencephalic Brain, so what's going on here? Truth be known, RedHat, and their tightly controled progeny Fedora, are a U.S. based, very much for profit, suable firm, so they must, and have over the years, striped out any offending programs that don't directly address their one and only profit center, namely, computer/server security, and in that they are a shining becon in the blackness of night.  They are very political, they lobby congress, the senate, major corporations, and other govenments, to see to it that laws are not erected against things like encryption, without which RedHat would be as naked as Micro$oft.

    Back to my question, after you modify what ever fill in the blank Distro you've chosen, just whose Distro is it? Linux is born of the GPL,(General Public License) and if you use it the way its inventors envisioned it has the flexibility to become YOUR Distro.

    If on the other hand you bought RedHat, because you needed all that security you'll find their support staff takes a dim view of folks who modify the underlying machinery that RedHat wants in there, when the time comes for their support staff to attempt to help you out with a problem, and you've gutted their tools.  It's only fair, they need a system setup in a known configuration to be able to serve you, otherwise you're wasting their time.  On the other hand, when a Closed Source company does this we, or atleast some of us in the Open Source community, cry foul, we say just whose computer do you think this machine sitting on my desktop is?  This slippery slope problem has recently been taken to a whole new level, as some companies are now using the Anti-reverse engineering clauses of the DMCA (Digital Millennium Copyright Act) to effectively transfer the ownership of your computer to them if you run their software.  You no longer have any of the rights of ownership to such devices.  Using technical locking mechanisms, they can force you to purchase only service providers they see fit to allow you to use.  They can kill your machine because they thought you were attempting to use it to say unkind things about them, and get this, you have no legal recourse what so ever! The solution is simple enough, don't run non-GPLd software.  But the larger point is being lost in all of this, folks seem to be asking for lawmakers to put a stop to this, when the whole reason we started down this slippery slope to begin with, was too many lazy people didn't feel motivated to learn enough about their computer to handle security issues on their own, so now in the name of Protecting Us these companies are running our computers for us, and getting legislation like the DMCA passed to make it impossible for us to use our computers in any way that these companies haven't given their blessing to.  Folks you don't have very long to learn computer science, soon all devices will lock you out in ways like this.  The Open Source community will have paved a small but navigable road, using computers that run software that protects end users freedom to use computers in any fashion they please, but here's the kicker, every single one of these efforts are focused on users who are knowledgeable to begin with, and willing to learn to build on that knowledge.  The rest of the Linux crowd, is turning Linux into some kind of a WinBox that suffers from all the ills Windows does. And the biggest ill of all, is that users are not encouraged to learn anything, you just click the mouse and get out your credit card, problem solved...  At least until you go to do something that needs yet another driver, one that they knew you'd need tomorrow. The truth is you don't need tech support at all. I suppose it's nice to have, but under Linux, the GPL insists on making every single nuance, and subtlety of the software available to you.  I hear folks all the time chanting that stupid refrain, "Lifes too short" we don't have time to learn all of that, just to be able to run our word-processors and spread-sheets.  If that's all you ever expect a computer to do for you, I would be the first to agree with you, but dog gone it that's not the half of it, and you know it ain't, you can let your computer take over the burden of your life, if a Linux based computer can safely drive a car all over Italy, using ten year old CPU technology, it sure as heck ought to be able to serve you as your agent, and run your business for you, with all the whizziness of todays multi-gigahertz multi-core CPUs and subsystems. Back to tech support, you don't really need to read every line of code ya know, but when you have a problem to solve, you search the source code itself in an organized manner that only comes from experience of using every resource available to you.  When you have a problem it's unthinkably rare that several hundred other somebodys out there on the net haven't had the same problem, and dropped a note to the guy who wrote the program to begin with, along with any viable workaround they found.  Workaround?  That's solution ready made, for you Use It! 

    If we've establish nothing else, we've established that Linux, at least at the command line, abhors being labeled, anything other than Linux. The GUI Graphical user interface is a different matter, things found there are very often deeply woven into the fabric of what ever distro it is. But the GUI is, at least under Linux, just another program, somewhat larger perhaps, but a program just the same, you can load up Linux without it and then later download the the GUI programs, X Gnome or what ever, some window manager, and a bunch of GUI apps. Now even X is tamed.

    Debian has this program kind of buried under all those automated install programs, that if you don't install with X you can install, or build it later. The build dohicky is kind of amusing when it comes to fonts, it first goes out to some site on the internet, and downloads a script to get fonts, checks the script for validity, and then compiles a program, that has the ability to extract the font information out of a Micro$oft Truetype font file, and convert it to a Linux Freetype file. Next it goes out on the internet with wget, standard fare for Linux/Unix tool sets, and starts downloading Micro$oft Truetype font files, once that has been completed, it uses this newly created program, to convert the fonts to Freetype and then it erases the originals.

    If you think that's weird, try GenToo Linux, better have a good Internet connection, read that high bandwidth, you download the one CD iso image, burn it to a CD, and start the install, except most/all of it comes from the Internet, as source files, that are compiled locally on your machine! The whole thing is compiled from source. Can you really call it a distro? I soppose, in some narrow sense of the word.

    Trouble is, I get all these folks asking me which distro is right for them, could they see the future, I see, they'd appreciate why I get this frustrated look on my face, dog gone it there just isn't any good answer for such a question, and even if there were it will be quite pointless once they become acclimated.

    If you were one of these people, I would tell you this about the different distros.




    License Violation Inside:

  • Fedora Linux
  • At least Fedora is open source, both in name, GPL General Public License, and spirit.  Mind you I haven't tested any recent versions of Fedora.  Also Debian up to and including Sarge, is free of proprietary code, but not all Linux distros are pure in the GPL sense of the word.  Many ship with builtin GPL violations, some right inside the Kernel!


  • SuSE Linux
  • SuSE Linux is partially closed source, what this means among other things is that they have released a distro with a "Tainted Kernel" and normally the kernel has code in it to detect this condition, and simply alerts the user to the fact that he, or she, is running code in the Kernel itself that is not open and then continues on as normal. These messages probably generated enough support headaches for SuSE, that in their next release of the product, there were rumors that SuSE somehow lobotomized the reporting of "Tainted Kernels". Actually lobotomized is perhaps too strong a word, and apparently inaccurate as well, according to what I've managed to turn up SuSE simply followed in the footsteps of Linuxant, who used a trick now known as the NULL Attack Here is an excerpt of an article by LWN.net explaining it.



    Many voices in the greater Linux community felt this action crossed some ethical line, some asked SuSE to stop. Actually "asked" is not a strong enough word, there were all sorts of readings of the GPL, as to whither what SuSE did was even legal? Linus said: Playing games such as the "NUL attack" makes it pretty clear to everybody that any infringement was done wilfully, and they should be talking to their lawyers about things like that. SuSE didn't even have to alter the Kernel to do any of this, nor is it even a new idea, the so called NUL attack, works by presenting only part of a licensing string to the software, by knowing a bit of how a program goes about reading that licensing string of character codes.  In the case of the "NUL attack" they placed human readable legalese that seemed to negate the meaning of the portion of the string that the string reading finction in the language 'C' will never read because of a clever placement of an ASCII NULL character, thus totally reversing the action the macro MODULE_LICENSE() takes to inform the system what license they are written under.  Almost two decades prior this same scenario was played out in the high stakes game of Cloning an IBM BIOS.  A new part legal, part technical, invention called  Software Clean Room Design Methodology had all but cleaned IBM's clock In desperation IBM pulled a sneaky stunt, what in software circles is called a Cheap Parlor Trick, the operating system IBM PC DOS, the BASIC Interpreter, and several of the flagship application programs were all revised to check to see if the character string "IBM Copyright" was nestled in the ROM BIOS that the machine was running under.  If that check failed the application software errped out a message informing the user that this program requires a genuine IBM PC to run properly.  Well the Phoenix says to itself, there's only one thing to do, and we got to do it because it's standing between us and millions of dollars, they put that message in their ROM's binary!  Now what ever you think about how tacky such a move is, you'd have to wonder if in fact it's legal to place the term "IBM Copyright" inside their BIOS.  Well this is a story about a modern day version of the same thing, so you probably know what they did, if IBM programs

    read   from   here   to   here
                  \ /         \ /
                   |           |
    This is not an IBM Copyright
    

    Phoenix simply blasted code into their Clone ROM to contain the phrase "This is not an IBM Copyright" simple as that, even IBM's own software would run flawlessly, on a Clone ROM BIOS!  There are thousands of stories such as this, that have a colorful culture that I often refer to as the Electronic Campfire and maybe someday I'll get around to writing some of it down, to share with you all.  But this one bit me bad enough to leave lasting mental scars, and now I am reluctant to do anything with Closed Source, and I do consider SuSE a Closed Source distro.  The LinuxAnt driver made it into the SuSE distro. and that was the one that made a splash online, but I only found out about this only after I discovered it for myself, when I went to compile the SuSE Kernel.  The Open source GPL'd Linux Kernel, the one that lacks the proprietary drivers, that SuSE shipped with, and suddenly the AC97 sound drivers reverted back to the tired old GPL version of the AC97 sound drivers, I.E no Midi, no Input, and a Lame mixer, where as the drivers that came with the stock SuSE drivers, did all those things. I took the time to verify all these things, by booting up the old Kernel.  So why couldn't they at least have included the header files, so that a new re-compile of the Kernel could link in the old binary Kernel modules? The answer, they were proprietary, SuSE obviously wasn't allowed to share them. So the WinModem is bypassing the tainted Kernel messages, my own experience tells me something is afoot with the sound driver, and my next thought is just how wide, and deep does this stuff run? With that I left SuSE for good. Later open source community leaders fell short of making the charge that it amounted to an out and out license violation, so the request fell on deaf ears. SuSE at that time was already a commercial enterprise.  Since then they've been swallowed up by Novel, who at first told them they could keep their policies, and their name.  Novel has reneged on the policy issue, and it looks like Novel has set a date by which SuSE will loose it's name as well.

    I wouldn't say so much about this, if it wasn't for the fact that it really impacts the end user.  In some ways SuSE is far better than true open source Linux, at least for the new user, but it's a real nasty trap.  I'll elaborate, many vendors of I/O cards, motherboards, and the like are used to the old Micro$oft ways of doing things, which included keeping the source code for the drivers that ran their hardware concealed from the public.  To lure them out into the open, the open source community has stated, you don't have to even write your drivers, we'll do it for you, all you have to do is make the register information available, and open to everyone, and someone, some interested someone, will write a driver out of necessity, if nothing else.  This move was partly effective, but it left the new, small, upstarts, and some old hangers on, still unwilling to open their register sets. Some of them had good reason, 802.11x devices for example amount to software controled radio transmitters, some military organizations, of very conservative countries have been led to believe in the FUD,(Fear Uncertanty, and Doubt) spread by Micro$oft, that hiding your source code, guarantees secrecy.  They are worried that a virus could copy itself onto millions of machines in their country, and then launch a radio jamming offensive, or provide a wireless conduit from inside the citadels of their command and control, directly into the hands of the enemy, the reality is that if that was planned by an opposing force, closing their source code is only a minor set back to such a project.  Be that as it may, treaties have been erected to assist in compliance with laws restricting cross border trade in drivers that make these software controled radio transmitters, operate, as well as requiring vendors to ship only closed source binary. Other reasons may exist, some printer makers like to prevent people refilling their own ink and toner cartridges, if they open the register information, some models might allow a user to bypass the test of whither an ink cartridge has been refilled and thus opening the register set, could spawn a Re-Inking industry.

    SuSE by placing closed source code in the Kernel, code that is licensed, written, and owned by hardware vendors, is a double edged sword, on one hand SuSE will correctly work with, what up till now, had been Micro$oft only hardware, and even use hardware features under SuSE that were never supported by Micro$oft, particularly wireless, other distros are forced to use reverse engineered drivers, that often fail to support all the modes of operation, such as no color printing on a color printer, making SuSE outstandingly hardware compatible.  On the other hand, there's the User Trap I told you about, lets say you need to recompile your Kernel, and don't kid yourself, sooner or later, you will need some functionality that the distro house didn't put into your Kernel, as it turns out, SuSE does indeed have the Kernel development package, complete with Kernel source. The trouble is that entire Kernel source tree, is one hundred percent pure open source.  No propritary drivers of any kind, SuSE is not allowed to slip even one of the closed drivers in.  So what does this mean to you?  Well let's say for example you have a problematic motherboard, that has an AC97 sound chip, this is not unusual at all, AC97 chips are in a large number of motherboards, they are very popular, using the standard closed binary SuSE Kernel, the AC97 driver is fully functional, MIDI fully supported, Sound In, and Out, all supported, however, if you recompile the Kernel, using the Kernel source shipped with SuSE, you'll find that the AC97 drivers are not as well endowed, the only thing that is supported is Sound Output, no MIDI, no Input.

    SuSE with an open Kernel is of course a lot more than just some sound chip not fully working, video, USB peripherals, PCMCIA/CARDBUS, you're probably better off without the benefit the of closed source components of SuSE. If you had started into Linux, as intended, true Open Source, you would have learned not to buy Win-printers, Win-only modems, Cameras that only work with Micro$oft drivers, and the like. It's a little more work at purchase time to get Linux compatible hardware, not to mention the cheapest most rebate driven hardware, is often hardware that lacks the internal CPU muscle to do many tasks on its own, rather than relying on the host operating system to do it for them, slowing down the system as a whole.  Getting hardware that runs under Linux using Open Source driver code generally means that either one of two things are true, either the open source community has "cracked" the register set, or the vendor was friendly to the open source community, in as far as they worked with them.  To be a user of Open Source technology, is to be a member of the Open Source Community, this implies responsibility to them when purchasing hardware.  If we as a community are ever going to convince hardware manufacturers to play ball with us, and share their register set information, we can't do it if we allow ourselves to become marginalized as an insignificant group of customers they, the hardware manufacturers can simply write off, as not worth the bother.  People who buy hardware that will work using the NDIS driver, coupled with some of the Windows code that came with the Windows driver CD are not helping at all to bring this paradigm of sharing register set info with the Open Source Community into the consciousness and conscience of hardware manufacturers.  Those folks are practically turncoats spending their money on the evil Closed Source world's product.  Some people I run into seem to think there's something wrong with having to restrict purchases in this way, even after I have explained the reasons to avoid this inferior hardware they, blame Linux for not being Windows compatible, to those I will ask this: Would you expect a Win-modem to work on a Mac? Of course not! Lastly remember the Thousand Eyes Effect I spoke of earlier, what if one of those vendor supplied drivers, had something in it that rendered security ineffective, you are reduced to trusting a single entity's due diligence, namely SuSE, to screen out such nonsense.

    So in conclusion, SuSE is likely the most compatible distro on the planet, but the price you pay for using it long enough to become dependant on it, is probably too great.  One more point before I go on to Fedora, the very next section.  Being a closed Linux gives them certain freedoms to use code that nobody else on the planet can use.  When I cover the Xfree86 fiasco in Fedora everyone of the distros were forced to either go with the old licensed version 4.3 Xfree86, or X.org inspite of having poor driver support, due to having to maintain adherence to the GPL.  SuSE however was in the unique position to actually use version 4.4, with all of it's new features, making SuSE uniquely superior. But did they? The answer is kind of.  SuSE from the beginning set out to be perhaps the only distro that worked as if it were a closed software shop, they have worked hard to distance themselves from absolute adherance to the letter of the GPL, and the choice they made with respect to XFree86  version 4.4 proves it.  Next they were gobbled up by Novell, and under that umbrella, by none other than Micro$oft, remember the Patent Immunity deal.


  • Fedora Linux
  • RedHat makes no bones about what Fedora is, it is a proving ground for new technologies that may someday be adopted by RedHat's commercial division. By releasing the bleeding edge technologies they, RedHat, are developing; two purposes are served, RedHat maintains a persona of good stewardship of Linux in the open source community, and they get all their debugging done for free by all those folks who use it. If you spend money for RedHat after running Fedora, you might be a little disappointed by how far behind the curve RedHat is, compared to Fedora, it's that much better. Where Fedora seems to fall short is device driver coverage, especially for things that involve new underlying technology. When one well meaning individual in the Xfree86 developer group, decided to give credit to some deserving individuals, he inadvertently altered the license for Xfree86, and because it was done piece meal, and the changes were rather subtle, no one quite noticed it, until it was too late. The license tampering was serious enough to prevent legal inclusion of Xfree86 in most distros, including Fedora, and once credit had been given to these individuals, they couldn't very well take it away again, leaving Xfree86 on a fast-track to nowhere. The distros, all of them, not just RedHat/Fedora, were left with two terrible choices, either stay with the old version 4.3 Xfree86, that still had acceptable licensing language, or start all over from scratch, rewriting every single byte of huge the X window system code base.

    As it turned out, there was a derelict fork of the X window system that was composed partly by the true inventers of the  X window system.  It originally had it's roots as early as 1984, later called the MIT X Window Consortium, then simply The X Consortium, in 1988, later reformed to allow greater input from the public, X.org in 1998, then retitled the X.org Foundation formed early in 2004 specifically to deal with the problem of Xfree86 changing their license to something incompatible with the GPL, almost immediately they were the new darling of the open source world, embraced by RedHat/Fedora, HP, and TrollTech, for starters, and within a year pretty much every distro of any importance, save one, SuSE

    David A. Wheeler wrote an Article on the GPL, and in it he covers the Xfree86 story much better than I would be likely to, I offer an excerpt below, but when you have the time, I feel it is Required Reading for anyone user or programmer involved in Open Source, because in reality user and programmer in Linux are one and the same, Linux invites users to try their hand at programming:



    RedHat, in the days before Xfree86 rose to prominence, called X.org that was lying fallow, as a derelict project that suddenly, due to its acceptable license, found new life, as distro after distro decided to adopt X.org, you see as they do this, their expertise and in some cases money, are funneled into X.org the other distros, that stuck with Xfree86, eventually came around to X.org anyway, but Fedora was one of the first adopters. The effect this had, was to jump "Forward into the past" and boy did it show. If you had a relatively new video card, X.org was so new at that time that Fedora simply wouldn't work. Ditto for laptops, most of them! The drivers did come of course, as code bases all over the place relicensed, dual licensed or what ever, understand you can't take Xfree86 code, and just use it, but if Xfree86 didn't write it to begin with, and in any large body of code much of it comes from outside an organization anyway, and the world knows about the whole fiasco, assuming you are friendly with the original author, (not Xfree86, but possibly a hardware vendor) maybe they will cut you a deal. That and the fact that X.org already had a ready-made code base Xfree86 version 4.4RC2 was still under the old acceptable license added to the speed with which new drivers were written. From the view of anyone outside of the loop it was astonishing how quickly the baton was passed to X.org, from Xfree86. 

    So why mention all of this... Well remember my saying that Fedora is the test bed for future RedHat technology, and that if you run Fedora you are or will be if you use it, a kind of Guinea Pig for unproven technology. This is not necessarily a bad thing, you are in the unique position to ride the best of the bleeding edge best. All that said I would caution you to always keep that fact foremost in mind, especially when unexplained problems come up. It might be useful to have some other distro handy to determine if it's Fedora specific.


    Back to Me and Linux Next

    The large print Giveth, and the small print Taketh away

    CopyLeft License
    Copyright © 2000 Jim Phillips

    Know then: You have certain rights to the source data,
    and distribution there of, under a CopyLeft License