Community Blogs

On FUD Toward Free Software Projects

Today's rant was provoked by yet another overheard discussion in Identica about Mono and Moonlight.

People are repeating FUD about Mono and switching from the GNOME desktop, which uses Mono in a few places, to KDE, which doesn't use Mono at all. I don't know who started it, and I don't care. It needs to stop.

For the uninitiated, Mono is an implementation of Microsoft's .Net framework, licensed under GPLv2, LGPLv2, and MIT licenses. It is meant to comply with the ECMA standard. Moonlight is similarly an implementation (a clone, really) of Microsoft's Silverlight framework, licensed under LGPLv2 and built atop Mono. FUD stands for Fear, Uncertainty, Doubt, and refers to unsubstantiated rumors used to scare people away from a competitor.

Microsoft is the scourge of the Free Software world for a number of resons, most of them quite valid. They have a number of patents on their .Net implementation, as well as patents on technologies build on top of .Net, including ASP.Net and Windows Forms. Silverlight is often referred to as Microsoft's "Flash killer" (referring to Adobe's propriatery Flash technology) and is quite propriatery as well. When Microsoft gets involved in free software, the community is skeptical and almost always rightly so. 

The fear is that Microsoft will use its patent portfolio to threaten the Mono and Moonlight projects. The uncertainty comes from Microsoft's patent pact with Novel. Microsoft and Novel formed a mutual nonagression agreement with regard to either party's patent collection, giving users of each immunity from patent lawsuits from the other. Novell owns Suse Linux and is the driving force behind the openSuse distribution. Other Linux distributions, as well as BSD, OS X and (open)Solaris are not under this pact and may be vulnerable to patent lawsuits. If one distribution is safe, one wonders whether the rest are safe. Many Free Software users doubt the safety of Mono and its derivatives, and are avoiding Mono like the Plague.

This is stupid.

As I mentioned at the beginning, the source code is released under a number of prominent free software licenses. The Mono C# compiler source code is available under both GPLv2 and the MIT X11 licenses, and the C# tools are also GPLv2. The runtime libraries are LGPLv2. The class libraries are released under the MIT license.
(Mono (software) License)

What really burns me is the people switching to KDE because the GNOME project is using Mono code in some applications. I wouldn't be surprised if these are the same people who switched from KDE to GNOME over the QPL licensing back around Qt 2 (a long time ago). QPL was a free software license, but incompatible with GPL according to the FSF. In 2000, Trolltech released Qt/Unix under both QPL and GPL. Years later, there was still a strong myth that KDE wasn't really free software. FUD doesn't go away quickly, and if people don't do the research it won't go away at all.

I've been a KDE user for years, and used GNOME before that. Both have their merits, and KDE fits me better. A lot of people have told me to switch back because "KDE isn't really free" and I kept telling them "I looked up the licenses, it IS free." I want to feel good about the reversal of roles, but I can't. It's wrong.

There are many reasons to switch to KDE. It's a major Free Software project with a long history. It's very configurable an flexible. It has a complete set of applications written with the same libraries. It's intuitive to use. It looks as flashy or as bland as you want. It has a cooler logo than GNOME. These are all good reasons to switch.

FUD is not a good reason to switch. FUD is not a good reason to do anything. And I would prefer it if you didn't bring your FUD into my community.



Mono (software)

Qt (toolkit) History

KDE Origins


WGet and Downloading an entire remote directory

Sometimes you need to retrieve a remote url (directory) with everything inside it, when you miss a live presentation or a forum you often find material published on the web in a certain site; you'd like to get the entire presentation (usually several html pages and links) or read it online.

When no "download all" button is available or when you don't have spare time to read it immediately you wish to grab all the directory content and read it offline later, I usually download material for my personal digital library, I always think: "maybe I don't need that tip now but in the future it will help.."

Everybody knows wget and how to use it, it's one of my favorite tools expecially when I need to download an ISO or a single file, using wget with recurse on an entire site is not a big problem but when you need to download only a specified directory it could cause headaches when dealing with different options

Here's what I do when I need to download a specific directory located on a remote site (an html presentation for example)

wget -r --level=0 -E --ignore-length -x -k -p -erobots=off -np -N

Here are the options:

-r : Recursive retrieving (important)
--level=0: Specify recursion maximum depth level (0 for no limit), very important
-E: append ".html" extension to every document declared as "application/html"
useful when you deal with dirs (that are not dirs but index.html files)
--ignore-lenght: Ignore "Content-length" http headers, sometimes useful when dealing with bugged CGI programs
-x: Force dirs, create an hierarchy of directories even if one would not been created otherwise
-k: here's one of the most useful options, it converts remote links to local for best viewing
-p: download ll the files that are necessary for proper display of the page
(not so reliable when dealing with JS code but useful)
-erobots=off: turn off http robots.txt usage
-np: no parent, do not ascend to parent dir when retrieving recursively,
one of the most useful function I've seen

Please keep in mind this is focused on downloading only a specific dir and for html presentations or materials you can even view offline, when dealing with flash or other kind of contents it could be a mess, for my basic needs I've just created a script and I pass the url to it

Here's what I do, suggestions or improvements are welcomed

Andrea Ben Benini


Linux gaining mainstream support to reach critical mass.

Guys, surely most of you know and realize Linux is a great OS. The problem is no one uses it and no commercial apps work with it. (generalizing here sure a few things work)

What can we do to help Linux reach higher levels?

My proposals are

1. Focus on polish and ease of use.

a. to install an app there should be a universal way. Users dont care about how they want it done. When a user clicks on install they want an install to happen.

b. More commercial apps. Focus on games. Surely there is a sharp group out there that could get with some of these companies to work to help port some apps to Linux. In this economy people want cheaper products and Microsoft isnt cheap. With more linux netbooks and phones etc coming out it is gaining some recognition. If you could show a business how they could make money with Linux apps I think they would be more apt to accept it than ever before.

c. come up with a unified linux. I know I know this is a sin but come on guys, surely we could have a standard vendors or customers could choose that defaulted to a certain look and functionality. Most people dont need 10000 apps or 12 apps that do the same thing. And besides you could setup this standard to only apply if selected?

 d. Be heard. We need more communication on the benefits of linux. Hands on demos at the stores, blogs, some type of marketing from the big Linux companies, etc.

e. better hardware support. This has come a long ways. I still here "its Company XYZ's drivers that suck", well that may be, but surely something can be done about this.


I know this probably isnt 100% the way to do it and I will probably be flamed but I really would like to see Linux have its day.


Things I like about KDE4.

       There's been quite a bit of hubub about the KDE project ever since the 4.0 release last year. Critics have slammed the 4.0 series repeatedly, citing the mentality of "Well, it's not good enough to be a full release.". Between the poor publicity, the crashes in Plasma, and the still-developing early features, KDE was definitely not having a good time. Developer blogs were plastered with hateful comments, and one of my favorite devs Aaron Seigo had to temporarily shut down his blog.

       However, for all the bad rap that the 4.0 series received, KDE has grown wonderfully. With the upcoming releases of KDE 4.3, Plasma has become a rock-solid desktop environment. Sites such as have dozens of Plasmoids and Plasma themes ready for desktop user consumption. Major headway is being done on theming, as new community artists continue to contribute new variations of the existing theme engines. (This user in particular is using the "Introducing KDE4" Bespin configuration theme)

       With all said and done, I would like to bullet-point a few things that I really love about KDE. After tinkering around with the system and setting up a build environment (mainly for building Plasmoid binaries), I have this to say:

 -Plasma gets the job done nowadays.  It's not the crashy, spiteful desktop of the 4.0 days. Also, many of the themes and plasmoids that have come out are just incredible. As of writing this, I'm using the Daisy plasmoid for Window management with an Xbar on a panel up top. All with a Glassified theme. Looks spiffy!

 -Cmake, the build system for KDE applications, is a fantastc piece of work. I've always had trouble with the build-essentials packages when compiling Gnome apps. I have to hand it to Gnome packaging teams, that stuff can be a real pain in the rear if you don't know the dependencies! At the very least, Cmake is great about letting me know about a missing dependency, or an error in the CMakelists.txt, or etc. It's becoming a real joy just to find the most obscure experimental apps on, and build them to see what they do. 

-Kwin is nice and snappy. I've loved the simple effects that ship with it, but it's a real lifesaver for when something goes awry when  I build experimental Plasmoids that crash Plasma. You can just flick to a running terminal. Better yet, you can just run Yakuake and make things even easier. 

 -The KDEArtwork package gets better with every subsequent release. Oxygen becomes more and more beautiful and polished, and the user-submitted wallpapers that make it into the release package are top-notch. While I usually end up just switching to the wallpapers I've always used, the KDE wallpapers anymore look better than a lot of professional pictures done for those Other operating systems.

-The Developers are so in touch with the community. One of my favorite things is moseying over to Planet KDE and reading the latest experiments the devs are up to. There's always a fascinating screenshot or mockup to explain a concept. 

-KRunner is a superb app for quickly launching anything you need to. It really reminds me of QuickSilver, which was one of my favorite OSX addons ever.

 -The Folder View/Desktop view merged paradigm blows me away. I like having my Desktop function like an actual desktop, but I love using a folder view to check files in my documents. With the simplicity of dragging and dropping, Plasma has really gotten intuitive.

-Phonon's graphical configuration frontend is much more comprehensible to me than Pulse Audio Device Chooser's numerous dialogs. Out of the box, it just works with my music player, web browser, games, etc.

-As a final note, I really appreciate that the Rekonq Project has finally been officially integrated in the KDE Project. For those of you who don't know, Rekonq is built off of Trolltech's Qt Webkit example browser. It sports a clean interface, and the webkit engine is not only ridiculously fast, it renders things properly! I've always had problems with Konqueror, even with the Webkit Kpart. Hopefully, this will open up more options for KDE-compatible browsers.


Tweak your GTK app fonts to look as good as KDE apps

I don't know how many times I've had to install 100's (ok it seemed that way) of gnome apps just to tweak the font's in GTK apps  so that they looked decent.  The KDE apps have always looked good.  But the GTK ones lacked, well, everything.  

Then I ran across this little article on how to do it.  All I had to do was run this command in a term window.

#> sudo ln -s /etc/fonts/conf.avail/10-autohint.conf /etc/fonts/conf.d/

 Then I restarted the X server, and the fonts on GTK apps (Like Firefox) began to pop like their KDE brethren. HTH



Compiz on Radeon Xpress 200M

 My Laptop Toshiba dynabook TX/860LS


Section "Device"
    Identifier  "Card0"
    Driver      "radeon"
    VendorName  "ATI Technologies Inc"
    BoardName   "RC410 [Radeon Xpress 200M]"
    BusID       "PCI:1:5:0"
        Option      "AccelMethod" "EXA"
        Option      "XAANoOffscreenPixmaps" "true"
        Option      "AGPMode" "16"
        Option      "SubPixelOrder" "RGB"
        Option      "DynamicClocks" "on"


GRUB Custom Splash Screen

Here's the short tip for this morning, this is a very easy config. As you know you can have a graphical image as a background for your GRUB startup screen, here's a three steps howto for setting it up

  1. Create or use your favorite image. Open your favorite graphical image program (Gimp for me) and adapt your favorite logo/image/photo to 640x480, no matter about color depth, the must important thing is the image type, you must save your favorite image as an .XPM file (example: myfavoritelogo.xpm)
  2. gzip your new .xpm file, following my example my file wil be named myfavoritelogo.xpm.gz (command: gzip myfavoritelogo.xpm), copy your image to /boot/grub
  3. Modify your grub menu (mostly named /boot/grub/menu.lst) to add the following line:


where hd0,0 is the first partition (for me /boot as boot partition) on the first hard disk, change your filename according to your system (myfavoritelogo.xpm.gz of the example)

And that's it, you've done everything.

Now just reboot to see your graphical logo as grub background, take a look at my picture gallery to see some grub splash screen samples


quick 'n' easy post, hope it helps




Eye Candy: A Love Story

I'm what you'd call a Linux Veteran.  One who's been using Linux since long before it was considered "cool" or "pretty".  In fact, I recently reminisced  with a friend at being around when the advent of ISO releases was considered new.  I remember installing Slackware 4.0 from a handful of floppy disks on an old 486 DX.  "What's a floppy disk and what's a 486 DX?" you ask.  Wikipedia is your friend, my friend.

Aside from relic grade hardware and floppy disks that can't hold even a fraction of what a cheap flash jump drive can hold today, I do remember early desktop Linux.  Trust me, it wasn't pretty.

With the release of Ubuntu and its countless derivatives, the Linux community has grown exponentially.  People accustomed to modern GNOME, KDE and XFCE releases need to take a look at the ghost of desktop Linux past.  Windows and Mac OS aren't the only ones with a checkered past of ugly (but plenty useful) desktops and GUIs.  Along with being around when Slackware 4.0 was a new release, I was also around when major leaps forward in OSS took place.  I remember when KDE 2.0 was released, I remember when GNOME 2.0 was released and when anti-aliased fonts were considered eye candy.  Also at this time, there was no such thing as XFCE.

As a Linux old timer, I feel that my perception of eye candy in Linux is much more conservative than the  average desktop Linux user of today.  I use Linux as the only operating system on a few of my systems and prefer a near cherry GNOME as my desktop environment.  Things like Compiz do nothing for production in my opinion.  The rotating cube when switching between workspaces and wobbly windows look nice in screenshots and desktop screencasts but I fail to see what this brings to productivity.  Maybe I'm just an old timer but I'll gladly settle for my rather boring composite enabled Metacity and Avant Window Navigator.


Config NIS Server/Client on CentOS 5

I created two VMs via VirtualBox, named CentOS_Srv and CentOS_Cli with the IPs and, networking type is bridged.

 1. ENV

OS: CentOS 5.3

Software: ypserv, yp-tools, ypbind, etc

NIS Server:

NIS Client:

2.  Steps

1) Config NFS in the NFS server (use the NIS Server here)

[root@glynnsrv]vi /etc/exports, add the following line:

/home  *(rw,sync)

this allow  all host to mount /home as writable.

2)Make effective

[root@glynnsrv] exportfs -a

3)Start NFS server

[root@glynnsrv]service nfs start

4)Let nfs start when boot

[root@glynnsrv]chkconfig nfs on

 5)Config the firewall


select firewall settings and add NFS service.

6)Config the NFS client

[root@glynn]mv /home /home.bak

[root@glynn]mkdir /home

[root@glynn]vi /etc/hosts localhost localhost glynn glynnsrv

[root@glynn]mount -t nfs glynnsrv:/home /home

Let autofs mount the nfs at boot time:

[root@glynn]vi /etc/auto.master # add the following line:

 /home      /etc/auto.home  --timeout 600

[root@glynn]vi /etc/auto.home # add the following line:

  *    -fstype=nfs,r2

 [root@glynn]chkconfig autofs on

 7) Config NIS Server

a) install needed softwares:

[root@glynnsrv] yum -y install ypserv ypbind yp-tools

b)vi /etc/sysconfig/network




Mutt like evolution keybindings

Date: May 20th 2009
Full Entry: Mutt like keybindings for Evolution

In preparation for connecting to (im guessing here) an Exchange server at my new job I am switching from my beloved Mutt to Evolution. The absolute first thing I noticed about Evolution that I disliked was the keybindings for things like deleting messages, replying to messages and creating a new message. After some digging in the UI I could not find any place to change them. Some more sleuthing turned up some XML files down in /usr/share/evolution/$VERSION/ui. (more…)


Dual Boot Setup Headache and Warning

December 6, 2008 was an important date in my life. That evening we had a launch party in New York for the start up I'd been working with since September. More significantly, it was my last day with a Windows computer in my home. In reality, I was supposed to be getting doing a dual boot installation so my family could continue to use the Windows software they were accustomed to, and I could play around in Linux world. All on the same computer. It seemed so simple.

The directions were in front of me, printed out from the Internet several days before. I hardly needed them, though, as I had read through them again and again as I struggled to work up the nerve to do the installation. The whole process took less than half and hour, but as I rebooted a problem appeared.

When a standard PC boots up you see BIOS working.  What was supposed to happen was that I would see an option to log into Windows or go ahead and boot into Ubuntu, which was the new default. That option appeared, but no amount of key-tapping would make it change. Time and again I rebooted, only to be sent -- after a brief wait -- into Ubuntu.

Scouring the Internet and trying different tricks got me nowhere. Folks on the Ubuntu forums were very kind and tried to be helpful, but this was a no-go.

My wife managed to pull me away from the computer to get ready for the launch party. We had a very good time, but the computer problem at home gnawed at me.

We got home late, and I stayed up even later. By the time 2:30am rolled around I had accepted the inevitable and we had a full Ubuntu installation on our computer. I was glad I'd backed up our personal folders of documents and pictures.

It took a few days to realize completely what had happened, but now it is crystal clear. Our computer does not have any PS2 ports. Instead, the keyboard and pretty much everything else uses UBS connections. The version of BIOS on this desktop doesn't recognize USB ports, so the keyboard fails to be identified and cannot be used in BIOS. Since the average user would never have any reason to be poking around in BIOS, this normally wouldn't be a problem. Neither Windows XP nor Ubuntu 8.10 have any problem with USB keyboards.

So, if you are thinking about setting up your computer for dual boot Windows/Ubuntu use, take a closer look at your hardware and at BIOS. If you have USB ports only for the keyboard and if you see the magic words "keyboard failure" anywhere as your computer boots up, don't try a dual boot install.

That said, now that I've learned my way around Linux to some extent, I wouldn't want to go back. I've done maintenance on friends' Windows computers since switching to Ubuntu and have been shocked at how shoddy Windows looks in comparison.

Note: This post originally appeared on my blog, Igneous Quill.  Some minor editing to the text was made for this post.

Page 9 of 11

Upcoming Linux Foundation Courses

  1. LFD312 Developing Applications For Linux
    05 Jan » 09 Jan - Virtual
  2. LFS220 Linux System Administration
    05 Jan » 08 Jan - Virtual
  3. LFD331 Developing Linux Device Drivers
    12 Jan » 16 Jan - Virtual

View All Upcoming Courses

Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Join / Linux Training / Board