2011-07-26

Review: Kongoni 2011 "Firefly"


Main Screen + Kickoff Menu
This is another review that I've wanted to do for a while now. That said, until recently, the last new version of Kongoni came out quite a while ago, so I figured that I should sit tight and wait for the new version. I did, and it's here, so I'm reviewing it now.

So what is Kongoni? It's a Slackware-based Linux distribution that uses KDE. Though it claims to also be relatively easy-to-use, its priority number one is to be a fully free software distribution, akin to Ubuntu-based Trisquel, which I have reviewed before. It also has a couple pieces of software to help it achieve the other goal of being easier to use.

I tested Kongoni through a live USB setup made with MultiSystem. I tested the installation in VirtualBox in a Pinguy OS 11.04 Mini live USB session with 1024 MB of RAM allocated to the guest OS. Follow the jump to see what it's like. (In response to a comment asking for this information, I'll try to include this from now on: my laptop is an ASUS U30Jc, whose specs you can easily find online.)

After getting past the boot menu, I saw a scrolling wall of text, and then...nothing. The system just hung there, and I couldn't even press CTRL+ALT+F1 to get to a CLI environment. That was frustrating. I didn't really know how to proceed, so I tried searching the Kongoni website for answers. Unfortunately, the Kongoni website is relatively sparse, there's no forum, and all the wiki's pages are empty. I decided to wait a day or two and try again. After a day or two, I went back to the website, and this time I found a news item saying that the Kongoni ISO images were created improperly resulting in them not working as live USB systems; bravo to the Kongoni developers for quickly finding and fixing this issue. I redownloaded the ISO file, made the live USB setup again with MultiSystem, eventually got past the boot menu, and everything seemed OK after that. (Thankfully, I didn't need to enter extra GRUB parameters.) The boot process wasn't terribly slow, but it wasn't the fastest I have seen either. After that, I was greeted by a customized Plymouth-like KDE splash, featuring the Kongoni logo and name and a background image with a savannah in the foreground and a mountain in the background, befitting Kongoni's African roots. That quickly gave way to the desktop.

YouTube on GNU IceCat + KWrite
The desktop is a lightly customized KDE 4.6.5 desktop, with the default KWin and icon themes and with a soothing blue wallpaper and a dark blue Plasma theme reminiscent of KDE 4.2. There's a Desktop View Plasma widget containing shortcuts to various applications, whose icons are colorful and shiny and make the desktop even more of a pleasure to look at. The panel is a standard KDE panel, except for two minor changes: the KDE menu's KDE logo has been replaced with the Kongoni logo, while the standard KDE task switcher has been replaced with the Smooth Tasks Plasmoid, which makes the task switcher act a little like that of Microsoft Windows 7. I wonder if this is becoming the new norm, considering I saw it in PCLinuxOS 2011.6 KDE as well (though that distribution used it even in the 2010.X releases). Overall, the desktop is a pleasure to see and use.

GNU IceCat, the GNU/FSF-certified free software version of Mozilla Firefox (because the Mozilla and Firefox trademarks seem to violate certain principles of free software, or something like that), is the default browser at version 5.0. All free software codecs are included out-of-the-box, including Gnash, the free software equivalent to Adobe Flash. Previously, I've had some trouble with Gnash playing things like YouTube videos, but this time, YouTube was able to play videos fine, which was a pleasant surprise, so I must congratulate the Gnash developers on these improvements. This also confirmed that my laptop's sound card and volume keyboard shortcuts were recognized properly out-of-the-box, though strangely the sound was much louder than in other distributions (for a given volume setting). Unfortunately, sites like Hulu didn't work, meaning I would need to download and install the proprietary Adobe Flash plugin.

KISS + PIG (seriously)
There is no productivity suite included, and in fact the default application selection is fairly sparse, though that makes sense considering that the ISO file is under 700 MB (and can thus fit onto a CD, which is important in the places Kongoni is targeting where the Internet connection is poor at best and people aren't able to download 2 GB ISO files on a whim). This is where I started up the Ports Installation GUI, or PIG, which is essentially Kongoni's package manager; do note that as Kongoni aims to be a fully free software distribution, PIG only shows free software packages. The first thing I did was synchronize it to the repositories, which, while successful, took quite a long time to do. After that, I refreshed the package lists, just to be sure. After that was done, I searched for LibreOffice and clicked to install it. This took an even longer time, but ultimately, it was successful and uneventful. Just to confirm that it worked, I was able to find it in the menu and start and use it successfully.
PIG is one of the special pieces of software included in Kongoni. The other one, aside from the installer, is the Kongoni Instant Setup System, or KISS. (Were they really asking someone to KISS a PIG with these acronyms? I mean, I know some developers have weird senses of humor, but this is just...ewwwww!) KISS aims to be a GUI tool to do a lot of things that would otherwise be done through the CLI, such as changing the time zone and changing the computer hostname. Though I do appreciate such a tool, some of the things are labeled as external setup tools (such as printer configuration) through the KDE System Settings program, and I'm pretty sure that configuring the time zone and network can also be done through the KDE System Settings program. That said, KISS works well in what it's meant to do.

LibreOffice Impress + Dolphin + Desktop Cube
After that, I tried installing Skype. I know that Kongoni is supposed to be purely a free software distribution, but that doesn't prevent me from installing proprietary software from third parties, and I use Skype a lot, so it's important that it work if I am going to use Kongoni on a regular basis anytime in the future. Getting Skype to work was surprisingly easy; I just went to the website, downloaded and extracted the static TBZ2 package, and double-clicked on the Skype executable file in the extracted folder to start it. Skype recognized my laptop's webcam and mic fine, though there were a few weird things: when I made the test call to "Echo", I could hear the automated voice fine, but I could barely hear the ringing before the call started, and the sound captured from my mic was unusually soft, even when I was screaming and even when the volume for capture devices in KMix was set to the maximum. To be clear, the mic did work, and I was able to hear myself (softly), but this suggests that Kongoni had a little bit of trouble with my laptop's integrated mic.

After that, I tried installing the Google Talk plugin, because I use that a lot too, and it'll become even more important if and when Microsoft drops Skype support for Linux. This was considerably more difficult than installing and using Skype, but the fact that I got it to work (sort of) in the end made it actually feel quite rewarding. I'll start from the beginning.
There is no official source package for the Google Talk plugin; the only official packages are the DEBs and RPMs. Thankfully, a brave and gracious person (Willy Sudiarto Raharjo, a Slackware user from Indonesia) had created a SlackBuild package for this plugin; because many programs for Slackware need to be compiled from source before they can be installed, a SlackBuild package has a script that automates that compilation and installation. I looked up how to install a SlackBuild package and followed those directions in the terminal; the terminal output complained about the lack of the associated Google Talk plugin DEB package. I downloaded the DEB package and put it in the correct folder, and this time it worked OK. But I wasn't done, because when I restarted GNU IceCat and tried to configure the settings for voice/video chat, Gmail claimed the plugin wasn't present at all. I tried restarting the browser and trying again, as suggested in a forum, which didn't work either. I then tried reinstalling the SlackBuild package with the same directions as before, and while the results were the same, this time I noticed a TGZ package created in the /tmp folder.
I went to the /tmp folder and tried to open it with Ark (which resulted in Ark crashing, but that was eventually resolved and I was able to use Ark), and I found a whole bunch of directories present, two of which (/opt and /usr) corresponded to folders in the root directory. I figured this meant I needed to extract the contents of the package and copy those contents to the corresponding folders in the root directory, so I did that, and tried again; it still didn't work. Then I noticed there were a few files with the extension '.so', which is the same extension as that of a Mozilla Firefox plugin, so I copied those files over to /usr/lib/mozilla/plugins, and then tried again. Finally, it worked. It recognized the webcam fine, and sound worked fine, but the mic was again problematic, as the bar representing mic volume barely went up even as I screamed at the mic. That said, I don't know if that is particularly meaningful because I wasn't able to call anyone at the time.

Desktop effects worked well. In general, aside from the package management stuff, Kongoni felt quite fast and light too.

KSI
At this point, I started the installation in the VM. The installer, called the Kongoni System Installer (KSI), looks a lot like the Ncurses-based Slackware installer, but I feel like it's subtly different. Anyway, the first step is partitioning, where KSI launches the KDE Partition Manager, which is good for clarity and advanced use but could potentially confuse newbies. After that comes formatting partitions, which could be redundant if partitioning has been done in the KDE Partition Manager already. Then again, that step can optionally be skipped. After that comes setting up mount points, which I think could be explained a little better for the benefit of new users; after that comes time zone and locale setup. Following that is the actual installation procedure. The installation itself took about 15 minutes. After that came user and root setup, followed by GRUB. (Yes, surprisingly, Kongoni uses GRUB as opposed to LILO, despite its Slackware roots.) This proceeded relatively quickly, and after that, I rebooted the system. Aside from the visible presence of KDM, the lack of a KSI button, and the inability of the VM to detect my laptop's webcam and mic, the installed session was identical to the live session, which was a good sign. Even better, at first boot, PIG decided to synchronize with the repositories and update the package list, removing a lot of the hassle from the user, and while it took a good bit of time, I felt like it didn't take as long as in the live session, which is also great. Anyway, after playing around with the VM a little more, that's where my time with Kongoni ended.

The majority of things I encountered were consistent with Kongoni's secondary aim to be easy to use. (Of course, everything I encountered from Kongoni itself was consistent with its primary aim to be a fully free software distribution.) Even things like installing Kongoni on the hard drive and using Skype, aside from some minor terminology issues, seemed pretty darn easy. The one big roadblock preventing me from recommending this to total newbies (though I will say that I don't know whether Kongoni is actually targeting total newbies to Linux per se, because Kongoni aims to be "easy to use", which can be stretched and interpreted in different ways) was the ordeal with the Google Talk plugin; while I was eventually able to get it to work and I found it rewarding, it took quite a lot of work, and I don't think any sane person could reasonably expect a newbie to be willing to do that sort of thing just to use Google Talk, a VOIP program that I would say rivals Skype in popularity and will become more important to the Linux community if and when Linux users can no longer use Skype. So no, I can't recommend it to total newbies, because of that issue and because some manual configuration of the proprietary Adobe Flash plugin is required for things like Hulu to work. I can recommend it to people who want to learn a bit more about how things are done in Slackware but without having to configure everything manually as in Slackware, as well as for people who want a stable, solid system who know how to do this sort of stuff or are willing to learn and have the time and patience to do so. I would think that revising the stated target audience to refer to such people (as opposed to either explicitly or implicitly targeting newbies), along with expanding the website and points for getting help, would greatly increase Kongoni's appeal. Please understand that I'm not trying to belittle Kongoni; I actually liked it quite a bit. I just couldn't give it to an otherwise computer-illiterate relative in good conscience, and I feel like I would experience enough problems down the road to test my patience with it.
You can get Kongoni here.