Sep 122009
 
No Gravatar

It’s been quite a ride starting the work on Kongoni 2.13.0 and this is our first newsletter detailing what has been happening.

The first important bit is that the votes are in, and the alpha release has been named. The first alpha of Kongoni 2.13.0 will be called: Cicero, named after the great Roman philosopher who gave us the quote “All generalizations are false”. Other proposals had included Kant, but as one developer put it “there is just no way I can say that guy’s name with a straight face”. The reasons for this comment is left as an excercise for the reader.

Of course, Nietzsche is not dead with the work on Cicero starting, updates and expansion continue. This week saw updates to our versions of digikam, KDE and icecat. New ports in the tree include UFRaw, Rawstudio and gsynaptics to name just a few. While Nietzsche will be aging from now on as it’s upstream distro is effectively frozen, it remains a stable platform and we will release updates and expand it continously for as long as we can, and certainly well into the stable cycle for 2.13.0

Our work on 2.13.0 started with updates to portpkg, earlier (during Nietszche’s cycle already) portpkg was expanded (based on work from Kongoni) to include support for slackware’s new txz format as well as a number of small updates to the rest of the system – now came the time to make the portpkg in current synchronize to slackware 13. This change was quite easy on the 32-bit platform and we have already had reports of current-testers successfully running a system after synchronizing with current. The only major hiccup was a bug in the metaport for sharutils which we fixed with our own source-port for sharutils.

The 64-bit platform is trickier as there are a number of things to address. The first challenge was allowing the system to upgrade to the new FHS-compliant directory layout from slackware64 as we are moving away from bluewhite64 as upstream. To this end a new port was created known as kongoni_upgrade_prepare. This port is available in both the current and Nietszche trees, but as it changes your target platform to current, it should not be installed on Nietzsche unless that is your intention (and current is far from stable yet – particularly on 64-bit). This port will remain a core functionality in the future of Kongoni, allowing us to script any fundamental changes to the system that needs to happen prior to an upgrade.

Thus the process to upgrade from Nietzsche to current its: synchronize your ports with Nietzsche, install kongoni_upgrade_prepare, synchronize again (now you will synchronise with slackware 13 and kongoni-current) then upgrade all packages. I would like to extend a personal note of thanks to Eric Hameleers for explaining the steps this port needs to do on 64-bit.

Please note that the kongoni_current ports are, at present, broken for 64-bit – basically all of them. The upgrade_prepare port will let you synchronize to slackware-13 but this is an intermediary step we had to finish first. However, the kongoni_current ports all still use the lib and /usr/lib as directory targets and this could cause issues with running them (I believe they won’t be severe issues and most should work – but be advised that this very risky).

Our next major task will be to hack virtually all the ports in the tree to make them FHS compliant on both platforms which will resolve this issue. We are planning a hackfest sometime in the next two weeks to sit and simply work through them all – one-by-one, and fix them. This will be a face-to-face session with the developers in Cape Town and surrounds. If there is enough outside interest, we’ll extend it over IRC, if you are interested in joining in – please mail me directly and we’ll get a discussion going on location and methodologies to use. The work is quite easy (really easy in fact) there is just a lot of it.

Once that task is completed, we will proceed with our real Cicero innovation stage, this means finalizing the new version of PIG and the enhancements to the installer we are working on. At this stage I don’t want to give an estimation on when Cicero will be released, but I don’t think we’re talking many months.

Finally, some great news: the FSF has officially added Kongoni to their list of fully free GNU/Linux distributions. That means it is now publicly recognized as a fully-free system by the people who define what “fully free system” means.

Jul 222009
 
No Gravatar

So Nietszche had a change that I knew I would get some comment on. The switch to the linux-libre kernel which in turn would mean that non-free firmware no longer works. About 99% of the real impact of this would be exclusively on wireless cards. Sure some motherboard extensions would lose features but these are power-user features anyway and wouldn’t really be noticed by desktop users. Very few other drivers have this problem, and again, most of them are not really noticeable by end-users in the first place.

But what about the wifi cards ? Right now the list of supported cards if you use a free distro is really not huge, though it’s interesting to see it’s growth compared to just a short period ago. This growth can be largely credited to the free distros’ refusal to include their non-free firmware, and since a large part of the market for wifi is embedded Linux* devices (like ADSL routers) having linux support without issues is a big market opportunity, this is one set of hardware manufacturers for whom Linux support is crucial.
It’s not so much an issue for the card manufacturers – from their point of view, we’re still a tiny minority, but the chipset makers sat up and took notice. Hence the sudden support by companies like Atheros and Broadcom over the past year or so with GPL’d firmware and drivers appearing.

But what about those users who have cards that worked with non-free firmware ? Cards that would have worked with Sophocles but won’t work with Nietszche ? I was concerned about it – but I couldn’t back down from the philosophical issues at stake so I prepared myself for a lot of patient explaining and perhaps losing some users.

What a pleasant surprise I had. Only a few users actually posted bug reports about this, which by itself is an indication that much of our userbase has been using free-software friendly devices in the first place, but the nice thing was the ones who didn’t.

In each case, I would calmly and without malice explain why this card doesn’t work. I would indicate why it’s important to support those manufacturers who work with us, rather than selling out our freedom to those who don’t (and thus removing their motivation to ever provide free drivers). I would then state that while the user has the option to replace the kernel with a non-free one, and I couldn’t stop them from doing that any more than any other piece of non-free software. I would say that it wouldn’t even be that hard since our linux-libre kernel configuration works with the non-free kernel as well so there is no need to configure it.

Then I would say – but it would really be better to rather buy a wifi card or usb wifi that can work with free software.
Virtually every single one of them responded: “I think I’ll rather buy a new wifi card – can you make a recomendation ?”
I would then link them to the above list, and mention that I had, personally, had very good results with Atheros cards.

This is the big thing – most distro’s have been to scared to stick to their guns on this issue, even Debian was – yet it seems that from Kongoni’s experience here, there is no issue – the users once they understood the issue, almost without exception, decided that the low cost associated with wifi device these days was a small price to pay to support freedom, that this freedom was worth more to them than a bit of convenience and a little bit of cash.

Now it is perhaps also true that my sample is skewed, most of our users came expecting a fully free system so they may include more people who are more open to the idea in the first place than say, Debian’s user base. Furthermore, our userbase compared to Debian’s is still very small, so our sample-size is not very big either.
If Debian or Ubuntu does the same, likely – there would be quite a lot of users who would complain. Especially from the open-source crowd who don’t care about freedom in the first place. This may have an even bigger impact on Ubuntu than Debian. Ubuntu is often a first-timers distro, it’s harder to explain this to a first-time user without making him feel it’s just not worth it (perhaps), but Debian, like Kongoni is mostly used by people who have more experience, that would suggest people not very likely to go back to windows.

I’m confident on this one, people may have trouble switching, but I have hardly ever heard of somebody who having switched wouldn’t need to be dragged kicking and screaming back to windows.

Our users would really rather buy another wifi card than to not run their preferred distribution of their preferred operating system. So my challenge to Debian is to be true to their own ethos, strip out the non-free firmware entirely. Sure some people will complain, probably more than in our case but they are not that many, and I promise you most of them will in the end rather spend a little money on a supported wifi card than to lose out on Debian. Your user loyalty is legendary, if our users would do it for Kongoni, there is no way yours won’t do it for you.

*In this case I am referring specifically to the kernel, not the whole OS – hence I used the word Linux, not GNU/Linux.

Jul 132009
 
No Gravatar

I felt once more that it was a good idea to put a post out listing some of the sites that have covered the new Kongoni release so people interested in it can find them all in one place. Of course this list is not exhaustive and I probably missed some, if you know of one, please post it in the comments. Particularly for reviews (though it’s a bit early for those) as I would love to get some, good or bad.

Starting off, this one is actually a bit old but I never saw it before and I wanted to share it further, a really nice review of Kongoni from Russia. The review is actually of Sophocles but the parts they focus on had very little (visible) change between the two so it’s still a nice one. For those who speak Russian, the original is here, the google-translation here is among the most readable I’ve ever had.

On to the current stuff, firstly distrowatch carried the release (as they usually do) and we saw an immediate and massive spike in downloads, and even some new names popping into the IRC channel. What an awesome resource. Freshmeat also carried it, posting to the frontpage about two hours laters. These don’t really count as press coverage of course since we ourselves submit to them and they don’t refuse any but they are a great way to get the word out after a release so I felt a shout-out was called for.
Of course the distrowatch and freshmeat postings got syndicated and reposted on thousands of sites all over the web – but that’s just standard fare.

OpenSourcereleasefeed carried the story not much editing there really, it’s pretty much the announcement as we posted it – still nice of Schalk to carry the story and now that Tectonic is gone they are close to being the only FOSS news site active in South Africa so supporting them is really important I think.

With this release, somebody (not me) added us to the French LinuxPedia wiki here, it’s quite a brief overview of the system but nothing inaccurate and it’s nice to see localized resources picking us up.

The story sparked some interested comment from a nameless German blogger, on a blog titled “RTFM”. The original German is here, google translate here. This translation is not a nice as the Russian one was but quite readable anyway. The blog starts out saying that linux distributions are too “hauf” which I think means he thinks there are too many of them… but he was apparently still intrigued by ours. He didn’t do much more than comment on the announcement though as he asked several questions that are answered on the very front page of the website (like: why is an African distro called “Nietzsche” ?). Still, at least he thinks about it and asks questions. When you wallow through the thousands of reposts out there looking for original stories, that’s a nice thing to find.

I’ve received word that the next trygnulinux.com podcast will plug Kongoni. It was recorded before the full release so it won’t have a lot of detail, but a mention is always a good thing. #UPDATE The story has now been done – it’s really rather nice :) Thanks podcasters :)

One of the nicest pieces of coverage is from the MyBroadband guys. They wrote a proper story from our announcement which has gotten syndicated almost as widely as the distrowatch story.

That seems to be most of what I’ve found so far, I’ll keep you posted as I find more, and please let me repeat my request for adding any links you find to the comments, if you blog about it or write about it, feel free to add your own link as well.

Jul 122009
 
No Gravatar

Last night I finished the upload of the release ISO’s and they are on the site already. However before officially announcing them the mirrors need to sync – and they downloads actually won’t work until that has happened. The bittorrents are already ready to go so if you want to get in on the action early – grab a torrent copy (and please help seed it).

In the meantime, here’s the official screenshots, go have a look. It took a lot of time and effort to get this far, but we’re finally here.

UPDATED: The release is out and official :) Tell everyone – and go try it.

Jul 082009
 
No Gravatar

I wasn’t planning to blog about this, I tend to skip whatever is trending in the blogosphere and besides – the views of one distro developer on another distro are likely be seen as somewhat skewed, but I was discussing the announcement of google’s chromeOS with a friend and explained how I see the news – and how I see it impacting on kongoni. The same could be said for almost any distribution really, but I spoke about kongoni because that’s the one I’m intimately familiar with.

She asked me to please blog it so she can share my view more widely, and I hereby oblige her. The below is just a cut-and-paste from the message I sent her so it’s not fully edited or perfected, but it does I think convey some of my feelings on this.

Now without further introductory ado:

As for chromeOS – been reading up … well it’s just another linux distro – the one difference is the google name – and the approach of basically building it to run nothing but a super-fast browser.

Well… the original netbook guys were on almost exactly the same page (remember the first EEEpc ? ) – it didn’t work out in the market though. People wanted netbooks to be cheap notebooks and expected features that those simplified interfaces didn’t have.

This led to linux taking a knock in the netbook market, despite having been first in. For what netbooks were, it was perfect, and XP sucks.
In fact, this effect ruined netbooks – what we now call netbooks really ARE just cheaper notebooks, and getting less cheap all the time because they have to keep making them more powerful.

The tiny device meant to be a mobile augmentation to a full computer didn’t take off as planned – bad marketing I think, ASUS didn’t have the capital left to market it the right way.

Google however, are masters at left-field marketing, masters at getting people to think in new ways and really good at stealing microsofts customers… this could actually be the linux that makes it big. I do hope so.

Kongoni would never have been that gnu/linux. Kongoni is a power-user’s system and in fact is probably more appealing to mac power users than windows power users (mac is built on a BSD base while Kongoni is heavily inspired by BSD – both thus giving you a BSD like OS underneath a pretty desktop – though the desktops are not very similar techs [but I think Kongoni's desktop is seriously sexy, have a look at the screenshots])

Either way – I hope chromeOS does take off – anything to reduce microsofts monopoly – and this isn’t trading one monopolist for another. ChromeOS is free software, anybody can improve it, rebuild it, modify it, create a derivative… slavery ended.

Of course, once people switch to a gnu/linux – ANY gnu/linux they do get better, and better, later they do want to try others out – want more power and less handholding… that’s when kongoni will be waiting ;)

Jun 232009
 
No Gravatar

A post in Free Software magazine today makes the claim that software installation in GNU/Linux is broken. The author lists a number of problems with package management as a way to install software then posits that system and application software should be treated as entirely separate entities – thus we can use the success of package managers (and in the end even a ports tree like Kongoni has is still a type of package manager) for system software, while gaining greater ease with the application software users install all the time.

His proposal is to look at the MacOSX approach but the fundamental point is same-old, lets make GNU/Linux more windows-like.
What he claims to want from software installation for applications is in fact, already there – very few programs will have difficulty being installed by a user, in his home directory. The catch is that binaries are almost never built that way, because it’s inefficient – so that’s usually limited to manual source compiles – and indeed, it’s a (tiny bit) more difficult.

Frankly though – what he sees as the features of a good desktop application installation system… would be an absolute disaster.
It’s ironic, just yesterday I was reading a blogpost about GNU/Linux’s continues resilience against malware which mostly rehashed the known facts of a better design with better separation of user and admin privileges – but in the comments somebody made a point that immediately struck a massive chord with me. I had never thought about it before, but as I read it, the logic hit me: this made perfect sense. It fitted all the observed data perfectly.

GNU/Linux users almost never download and run programs from the internet. We almost never trade programs on disks with people. We install from the repo’s, it’s just easier and faster on our system – and this means, before we install the program it’s been checked – it’s coming from a source we actually can and do trust.

A major aspect of malware spreading – social engineering is entirely removed because we use repositories to install software. Do we really want to turn GNU/Linux applications into the unreliable, untrustworthy mess that is Windows software ?
Even if you remove their unclean deinstalls and registry muck-ups – the reality is that the basic premise of “download from some site and install some little app all the time” is fundamentally broken, it creates a massive and easily exploitable gap for getting users to install malware.
One of the worst I’ve seen is a site that does a very good job of emulating a respectable looking provider of anti-malware software, out to get credit cards when you buy, and install their own spyware on your box…

GNU/Linux is entirely immune to that because all our software comes from a repository, where it gets added to by developers who are technically proficient and know the system really well, who know the software they add well – they have to because they build those packages from source and that means studying the build systems at least to an extent.

Sure junk could creep into a repo – but the odds are very small. Systems like klick has tried to create ease of single-place package installs and failed because it has no real way of resolving dependencies and it’s highly desktop dependent. Even if you ignore those problems… well you’re still dealing with a single repository source of click recipes, so it’s still safe and secure – but I don’t see most third-party vendors using click to ship anytime soon, they aren’t even playing nice with repository maintainers for big distros !

Rox-desktop has an app-folder approach that only works with rox, but does offer pretty much what the author seems to want… but nobody uses it. The reality is there are many different package managers out there and despite many claims this is a good thing, they all have strengths and weaknesses. They allow distributions to be good at some things they would otherwise not be good at, and other distributions to fill in those gaps.

It wouldn’t be too hard to combine a rox-style appfolder with a .desktop file to make a desktop-neutral app-folder tech… but it’s usefulness would in fact be very limited. Users don’t want their data-space (home folders) cluttered with applications – even Windows users know that. It’s hard enough to find your files now, what would adding all your application files among them add as a hundred or more extra directories do ?

Well besides obviously turning GNU/Linux into a quagmire of virii and other malware as ugly as windows and twice as rotten (because we don’t use antivirus software) ? Nothing. Nothing that’s actually good for us as a community anyway.

The only reason people seem to think that being able to quickly download and install software from anywhere is a good thing (as opposed to a disaster we have been wonderfully lucky enough to avoid) – is because they are used to this idea from the Windows world. They think it’s good as an easy way to get third-party software, but what they don’t say is… well that thirdparty software would already be in the repo’s- unless they license doesn’t allow it.

Let me spell it out: the only people who have difficulty or problems with GNU/Linux’s package management idea, or the proliferation of package managers out there: are the developers of non-free software.
They want to join our party, but refuse to play by our rules. Well – whose fault is it then if they keep losing the games ? More often than not, this is not even a reality, they are making excuses not to support free platforms, and taking a convenient one, forgetting that if they made free software – it wouldn’t exist.
They wouldn’t need to care how to package for distro’s X, Y, Z – why not ? Because that’s windows-thinking, where vendors package the software. Just put the software out there, it’s my job to package it for kongoni, and the MOTU’s jobs to package it for Ubuntu etc. etc. hey guess what, this means the people packaging the software are actually experts on the OS platform they are packaging it for – as opposed to merely knowing their own program.

You can get software installs that integrate cleanly, don’t break things, don’t get infected with malware by accident…

Basically, I think the advantages of a package manager approach to software greatly outweighs the advantages of any other approach I know off, and more crucially than that: most of those so called advantages are in fact disasters.
Ease-of-use is a good thing, but I don’t think quickly-download-and-install software is easier to use.

Expecting every user to be able to spot a real software company from a fraud, a good program from a bad one… and judge it entirely by themselves… that’s not a good way to make it easy to keep your system fast, secure and stable. Package managers have their downsides, (but the only practical point he raises that could be improved is difficulty with running multiple versions of an app, which is a pure power-user feature anyway) – but they are relatively small in fact… the alternatives take the responsibility of ensuring the integrity of software away from people who are trained to do it, and puts that burden on ordinary users.
This was Microsoft’s biggest single mistake – the main reason for the continued plague of spam, botnets and spyware on the internet. Please, let us not make the same mistake.

Update: It occurred to me after publishing that I should add this. If repository based installation is so bad, why is it being copied and emulated as an idea ? The iphone’s app-store is a prime example, although proprietory and pay-for-play, it’s a repository of safe software, for users to install from. In every other aspect, it’s identical to how GNU/Linux installs software on your computer.

Jun 222009
 
No Gravatar

Busy, busy, busy. Such is the life of a distro developer when releases are being made. Kongoni-current has been quite lively of late with a lot of things happening last week – especially as it was a short work week.

My girlfriend luckily is very supportive of my endeavors because she hasn’t been seeing much of me lately – but the good news is that the progress has been amazing.

My week began with a minor setback when quite a lot of files on the 64-bit build got badly corrupted, don’t tell the girlfriend but it was her fault… hairdryer in the clean power. Luckily – I keep very good backups of the build systems so restoring it wasn’t too hard. The problem was compounded though because I initially mistook an unrelated issue for part of it – so long after it was fixed, I was still hunting file corruptions in what turned out to be a wild goose chase.

The real issue turned out to be an incompatibility between squashfs 4.0 and linux-live. Choice to be made there: patch linux-live, or roll-back the kernel to 2.6.29.4, ultimately I opted for the rollback, I hate patching upstream and I avoid it as far as possible (in this regard, I’m with Pat – the less patching I do – the more stable your systems will be).

So Nietszche will ship with kernel 2.6.29. More importantly was another major gain in the freedom-support of Kongoni. It won’t be shipping with source code from kernel.org but rather with the linux-libre project’s cleaned up code. No more non-free blobs, nor the ability to directly add them. I tested it roundly and the impact is fairly small, but for those who have a piece of crucial hardware that absolutely has-to-have a non-free blob and who cannot afford to replace it, Bret Murch has offered to host and build a set of identical packages based on the non-free kernel.org Linux, which users can install if they wish.

This was the last major hurdle we had to cross to be acceptable for being listed on gnu.org, and I am now comfortable to request that listing once Nietszche is released. It is interesting to note that the existence of distro’s like kongoni and gnewsense is rapidly reducing the level of non-free driver requirements all around anyway. The recent GPL’d release of drivers for the Atheros 9x wireless cards by Atheros themselves is a direct result of the work that the madwifi developers did in creating a completely free blob for the Atheros 5.x cards. The result is that now, all GNU/Linux users can run any Atheros card with only free software drivers and firmware.

On a completely different note, I think we are close enough to the end of the month for me to let you in on a big secret I’ve been holding for well over a month now since I was first informed of it.
The July issue of Linux User Magazine will have Kongoni Sophocles on it’s cover-DVD, as well as an article on the system, with a mention that Nietszche is on it’s way.

The editors of the magazine spoke to me while preparing for the article to clear up some small details and mentioned the following choice tidbit: “Usually we only include stable releases, no alpha’s or beta’s – we made an exception in Kongoni’s case because your alpha was a truly solid release.” (Slightly paraphrased for clarity – but the meaning was not altered in any way).

So those of you who can read German should look out for the magazine in the next couple of weeks – this is the first mainstream publication to ship Kongoni disks – and it’s a major piece of recognition for our work.

Another nice bit of news is that the Kongoni IRC channel is starting to become quite lively. This is an idea that came from, and were implemented by, our users themselves. Myself and Bret Murch are regulars in the channel, so please do drop by and come have a chat with us, the more the merrier. The channel is hosted on freenode’s IRC server (on kongoni, if you install xchat from PIG it’s on the list already) and it’s called (you guessed) it #kongoni.

I made a small change to our git helper scripts, specifically to gitmaster.sh and gitcurrent.sh so the commit messages they use get automatically sent to twitter and to floss.pro – so for a constant stream of messages about what the devs are currently doing considder following @kongonidev on floss.pro or on twitter.

Jun 172009
 
No Gravatar

Now as you know, I don’t like non-free software, and I make a great effort to keep all my machines free of the stuff. Unfortunately, I also have a dayjob and I don’t get to decide software purchase policy so I’m required to have windows available to run a few windows applications.
Oh well – until such time as me and my fellow voices of reason in the company have won, I’ve got virtualbox on my work laptop with a windows vm for running said few apps. When I first set it up, I gave it a 10gb virtual hard drive, unfortunately, it has lately gotten to the point where it is just not enough. The machine is basically data-less but the apps on it take up a lot of space.
I had to make it bigger, and I did not want to have to spend hours reinstalling it. GNU/Linux to the rescue :) I used kongoni for this because it’s easy to work with and has everything I need for this already easily available but quite a lot of other live systems would work just as well as long as at least parted is available (I prefer to work with gparted but it’s hardly a requirement). I did this on a virtual machine, but the exact same approach should work just as well on real machines.

Okay, so the first step was to create a new hard drive for the windows VM, doubling it’s size to 20Gb which should be more than enough to handle my needs, and connect it as the primary slave. I then added my kongoni ISO as the CD-rom drive and booted it up into the LIVE cd.

I chose not to start the graphical environment at this stage, and did a root login on the console instead. A quick check to verify that I had the drive names right:
fdisk -l /dev/hda
fdisk -l /dev/hdb

Confirmed that hda had a 10gb partition on it (hda1) and hdb had no partitions.
Right then, next command was to clone the existing drive with partition table and all onto the new drive:
dd if=/dev/hda of=/dev/hdb

When it finished, another fdisk now showed identical partition layouts on both drives. I then shut down the VM and swapped the virtual drives around so that the 20gb became the primary master, and booted it up to verify that indeed it worked just fine.

Rebooted off the CD again, fired up gparted and resized partition the new drive (now named hda of course) to the full 20gb available space.
When it finished, I booted windows again, it did a disk-check and then let me in – all good.
Finally, I shut down the VM and removed the old 10gb drive, reclaiming that space for my real operating system.

The whole process took a long time (unfortunately both cloning partitions and resizing filesystems are slow processes) but it worked beautifully.