Apr 292009
 
No Gravatar

Man, just when I thought I’d seen it all, 419-scammers seem to have caught on to the fact that most spam filters now simply destroy their mail without people even seeing it. Thus preventing them from ever reaching potential gullible victims. They found a way around it, ellegant and scary in it’s simplicity.
I just received an SMS that read: “Please contact Doctor Kelvin agentdrkelv@gmail.com for your prize of 7500000 pounds” . The number, a +44 is the correct country code for the UK (I had it wrong earlier, corrected now) – don’t be fooled by this.

Yep, the classic lotto prize 419, in an SMS – the interesting thing is that they obviously realized short messages like in SMS is not sufficient to pull a full scam, so they just put the bait there, then lure you to mail them – if you do, of course, it’s business as usual for one of the most effective criminal syndicate systems we’ve faced.

This shows a classic problem with security systems – technology convergence. In the beginning they kept beating spam filters by simply spamming better, now that this is becoming hard as we are getting good at picking up the consistent messages they need, they are targeting using a completely unfiltered technology, and thus leading you into the conversation. Almost no spam filter in the world will pick a message as spam if it’s a reply to one you sent.

It’s very wrong, but it’s very clever. So this post is a warning to those who read it. I am sure I wasn’t targeted for the SMS. These people almost certainly invested in bulk sms packages and are sms’ing large numbers of people in bulk at overseas rates. A much more expensive proposition than mass mailing, but they must believe the payoff is worth it. So when you get your 419 SMS – ignore it, or contact the cops, whatever you do -don’t mail the address in it.

Apr 262009
 
No Gravatar

As I write this – the 32-bit ISO have passed everything in the core test cycle and I’m busy with a test on 64-bit ISO – I’m quite confident that these are the final builds and we’ll head our release date next week with ease. This next version of Kongoni, is an alpha version for 1.12.2 – as such it really represents the first true kongoni release. Unlike the baseline Aristotle which merely established a working platform, this is where we began the work to turn it into what Kongoni is.

Sophocles was named for a very specifically chosen philosopher, it’s namesake has been called the father of modern thought and in a similar vein, this release represents the first of a new generation of distribution. Kongoni is truly an innovative operating system. It’s a GNU/Linux that tries to just work, be familiar but at the same time offer a truly fun and unique experience. Sophocles is the beginning of that vision.
It’s an alpha release because it’s jam-packed with features, but new bugs could appear at unexpected moments – especially on the ports tree side. As it matures through beta and stable now, we’ll start seeing a true production ready system appearing. Having said that, the ISO’s at least are remarkably stable and work very well – thus far, I have had no problems and I am using Sophocles for production work (mostly to produce itself I admit).

And as I reached this paragraph, the tests on 64-bit just passed, all of them. So that’s it, the final ISO’s are ready – and they’ll be available in a few days, we’re into the release-management part of the cycle.

The purpose of this post however, is to highlight what some of these features are. What has gone into Sophocles to make it unique and new ? Well here is a completely non-exhaustive highlights list.:

  • PIG officially included
  • This version ships with PIG included and running by default. PIG’s system-tray-run-as-user approach allows it to integrate beautifully into the OS, making software management a breeze (and people thought a ports tree meant it had to be harder). Even on the LIVEcd it’s already there – with a few clicks you can add a piece of software to use LIVE, and if you run the installer afterward, it will be installed with it. Update notification and management is therefore also, fully integrated and easy to use.

  • Latest and greatest upstreams
  • Sophocles will ship with KDE4.2.2 which was released literally just two days before we froze the system. It has the latest versions of Mozilla and OpenOffice.org included as well and the entire base system has the latest updates from upstream distributions already applied.

  • Shiny !!!!
  • Sophocles looks sexy (and other people have similarly described it). Aristotle had shipped stock KDE themes barring only three small changes. Lancelot menu with a kongoni-logo icon, and a standard wallpaper. For Sophocles the arts team under Hannes’s leadership went all out however and ship with a truly beautiful theme-set for almost all the things on screen. The login-screen, most of the splash-screens and the desktop wallpaper are all blended together with gorgeous artwork. The early-preview screenshots I posted last week shows some of what’s coming but the final release includes a few pretty surprises that were not yet ready at the time. We’re making full use of KDE4.2.2′s abilities to create a truly beautiful working environment that is nevertheless consistent and easy to navigate.

  • KISS
  • New in this release is the Kongoni Integrated Setup System. While this is an early release that doesn’t have a lot of features it does cover the most requested features as based on our forum requests and bug reports. More importantly KISS provides a structure that’s easily expanded so new releases and even completely different ports can update it with more features allowing it to grow quickly and transparently.

  • Improved ports tree management
  • Finally, the heart of any GNU/Linux distribution: software management. A nice GUI is no use if the underlying architecture isn’t solid. Portpkg provides us a very solid system, but this release sees numerous improvements to our plugins which combine to make the kongoni ports tree truly work better than ever before. Synchronization errors are almost non-existent now, the tree is cache-protected to prevent proxies from messing it up, the default configurations are enhanced for better multi-platform support and the entire thing just works better.

  • Soft rolling-upgrades
  • Finally, but certainly not least importantly, Kongoni aims at stable ISO’s roughly once per year to follow the slackware release schedule, but regular rolling-updates throughout. Making for a best of both worlds approach, with the flexibility and continuous life of a rolling release, along with the reliability of a regular release schedule. This release will include a brand new port called simply kongoni, which allows for easy and simple updates between ISO levels without downloading the ISO or reinstalling anything or affecting your current settings. For more information on this, see the upgrade howto in the User Guides section of kongoni.co.za.

In short, this is a very exciting release for us, it establishes kongoni as a truly innovative new distribution well worth a look. Over the next while we’ll be stabilizing it and I am confident that the final 1.12.2 release is going to rock.

Apr 242009
 
No Gravatar

It seems both ironic and appropriate to write this post today. Because today as the election results come in it is becoming abundantly clear that South Africa has given the ruling ANC party a two-thirds majority. That is essentially a rubber-stamp to change any law, including the constitution, any way they want to – unilaterally and without any need to consult any other parties. Why am I thinking that presidential term limits will be among the first clauses to get… altered ?

This is fitting as the goal of this post is to make an attempt at predicting what the South African online and internet society will be like in ten years time. Such extrapolations can never be fully accurate but with a bit of logic and reference to history, can certainly get a few things right.

Now the first thing to realize is that South Africa, and ergo it’s online society does not exist in isolation, and I don’t see us having a great firewall of of our own anytime soon like China does (our potential dictator has long since learned that the media doesn’t actually matter to his success). So we need to look at the context of the state of the world a bit first.
What is that context ? I believe we are watching the final and unstoppable collapse of capitalism. It was never a stable system. It should have been destroyed in 1932 with the great depression. It didn’t – because of World War 2. The big war created a massive market for weaponry, and with that a market for weapons research. Funding for research being so available, it ended up giving us many of our great inventions from the computer to silly putty.

So why didn’t it collapse after World War 2 ? Because the communist threat in Russia was too strong, the competition between them created a new source of continuous military expense and research funding. Iraq can’t prop up capitalism now though – the wars around are just not big enough. China has flooded the capitalist world with cheaply made goods by virtue of being a communist state that doesn’t care about labour-laws and has a billion people to exploit. In short… capitalism is fucked.

What will we have in ten years ? A radically different world from now that’s for sure. I’m hedging my bets on the free-market socialist democracies to be the global economic leaders in a decade’s time – they alone are not collapsing now, didn’t collapse in 1932, and in fact, have had stable economies for centuries. I for one welcome our new Swedish, Danish and Swiss economic overlords.

I’m sort of assuming you understand the difference between free-market and capitalist here, else go read up on it. It’s too far a digression.

So what about the other countries ? One of two things will happen: economic destitution, or a shift toward socialist free-market economics. South African and the US are highly likely to be in that line, since South Africa already has a socialist free-market economic policy and Obama clearly wants to import many of it’s principles there. Neither however will be strong economies of the kind – it takes a long time to become that and we’re both way too new at this way of doing things.
South Africa’s online community then will greatly benefit from an ever stronger line in society in favor of the values that the internet was built on: sharing and cooperation. Unfortunately I also predict that the third great internet value will be greatly eroded in South Africa in our day-to-day lives – which will greatly impact on our online lives: freedom of expression.

The ANC once claimed in a television ad that we had the worlds most liberal constitution. Be that as it may, we certainly don’t have a very liberal culture, our culture largely remains conservative and controlling and oppressive. That culture is propped up, and props up in turn, government policies that greatly denigrate on what is meant to be our essential civil liberties. Furthermore, when we decentralized the government we made the huge mistake of actually allowing the local governments to make laws more strict in their regions than the national (the inverse makes sense: where a law is a problem let the people get rid of it – but making it stronger…). For example, there is no trading hour limitations on the sale of alcohol at the legislature level in South Africa, but in Cape Town all liquor stores must close at 5pm on a Saturday until Monday morning – because of a provincial bylaw.

A liberal constitution is meaningless if we don’t have liberal legislation to enforce it. Perhaps the biggest problem we face here – and one I predict will only get much worse – is that there is still an essential misunderstanding among us of what it means to be a republic. We expect the government to protect our sensibilities and values: rather than (as is their only proper function in a free society) protect our right not to comply with those values.

The constitutional court has consistently acted well, and it is here that our activism must focus, it’s our single greatest weapon for defending everyone’s civil liberties, both offline and online. I predict that the growth of social networks and connectivity will have more and more people participating in their governmental processes however, this by itself is good, it would be even better if we could tip the economic balance so the vast majority of those able to are not the very conservatives that would use their freedom of expression to try and deny other people theirs.

So the optimistic view is that liberalism will win because there are always too many misfits -and misfits love the internet, it’s the only place to find like minded friends. Misfits suddenly having friends, teaming up – that’s our new weapon. That’s what’s going to change society, we can no longer reject all who don’t quite fit in because they are suddenly strong, there’s suddenly a lot of them.
I am looking to the goths and the punks and the geeks and the metalheads and the bikers and the gays and the street corner puppeteers to save us – and to the internet to enable them to do so. One thing is for sure, the jocks and the cheerleaders have only ever caused us grief.

But I do believe we can win. We’re in a war with vested interests in the old capitalist exploitation, and a lot of our own people who still don’t realize that capitalism is just as exploitative as communism, a war not fought with guns but with words. A war for the right to be true to ourselves. The internet is the single greatest empowerment tool we’ve ever had, and we have to defend it. From media conglomerates who will happily destroy it’s power to maintain an ailing business model, from conservatives who have no purpose in life other than assimilate all others into their borg-like conformism, from telecoms monopolies who will never have our best interests at heart.

Ultimately, South Africa’s online community is getting stronger and stronger, our voices are mattering a little more every day and I see us living in a country a decade from now where we will matter too much to ignore. Is there a price to pay for this world ? Of course, it’s not perfect. The price is that the next goatse guy or tubgirl may well be South African… well, I still think the goatse guy would make a better president than any of the politicians in this country. Not because I am in favor of how he lives his life – but because I know that he will never tell me how to live mine.

Apr 242009
 
No Gravatar

Hi everyone
Well, well, well folks, its Friday again and that means it’s time for the weekly Kongoni updates newsletter, and what a busy week it’s been.
After we froze Sophocles on Monday I began in earnest to work on the new ISO’s, step one of course was to get the build systems updated to the latest versions of all the ports. This was mostly done by Wednesday, and in the process a lot of small bugs in the tree got fixed (the kind that only occur if you are going all the way from Aristotle to Sophocles and never did an update before).

This left us however with the same-old same-old problem: how to fit it back onto a CD. I began investigating what could possibly be cut- my target on 64-bit was about 100mb – I managed to get 160mb by removing something really not that important. The ISO’s previously contained several dozen fonts packages of which only one is crucial… I cut this down to about 5 of the best, the rest are in the ports tree and are quick-and-easy installs if you want them, but I doubt anybody needs ALL of them – so this is probably an improvement anyway.

The put me ready by mid-Wednesday night to implement the new themes and start testing. By Thursday I published the first preview screenshots, and Sophocles was nearing a stable state. Since then I’ve made some minor changes to the installer and remastering system that greatly increase their stability (essentially I split the copy-process over several smaller process – this means that the risk of large-file-copy-crashes is almost zero now).
As I write this, the ISO’s are essentially stable and ready, there is however a few small things I want to do before uploading. For example, while cutting for size, I stripped out the spell-checking dictionaries for openoffice.org and moved them to rootcomplete, but there is really enough space to put those back. The CD-Bootsplash seems to be a bit… weirdly laid out all of a sudden but this could be a once-off build error so I’ll investigate it and fix it if needed.

Basically, we have every reason to expect Sophocles to be ready for upload by Monday. Thus far the comments on the screenshots have been hugely positive my favorite being a girl who simply said “wow… SEXY”. What better praise can an operating system get ?
Of course most of *that* credit goes to Hannes who did some major work on the design side for this release.

On the future side of things, we’re already identifying next places for improvement and new features. Design wise for example I made the suggest already that Beta should have a newer, sexier icon for the installer. Code-wise, I branched the kongoni_tools repository this week and began working on the next versions of our core tools. PIG 0.1.0 is in progress and already supports some nice new features, like being buildable with a qt4-native interface rather than the current GTK one. This version will also include integrated support for harbourmaster which was also started in this unstable branch. As and when these projects mature, they will be merged back into master – replacing the current master branch and become the future versions. PIG is getting several other features like a task-qeue so you can select a number of actions on ports and then do them with a single click, support for more of the underlying portpkg features and better process integration in this tree so it will be a nice update when it comes.
In the meantime the 0.0.x series is quite stable and mature (though it does still have the odd unexplained crash) and really usable. Not only does it make managing ports easier, it actually adds features that portpkg by itself doesn’t have, like very well-working mirror switching.
This means us Saffers can easily keep our ports tree’s sync’ed and our package completely up-to-date while only ever using local bandwidth.

So that’s roughly the week so far, little sleep but lots of fun :)

In closing, a big congratulations to our esteemed friends at Canonical for the release of Jaunty Jackalope :) I won’t even make a joke about hitting a preset timed-release-date with only one unfixed release-critical bug … oh darn :p
Still, the screen shots look very nice, well done and good job guys :)

This is likely to be the last update before Sophocles is officially released so till next time then.

Apr 232009
 
No Gravatar

Ever since Richard Stallman started the free software movement, the core ideal of it has been built around the concept of a community. A network of people working and playing together for their common good. In the last couple of years computer science research have found a new hot-tech in the user-interaction space: social networking.

Social Networking is a kind of catch-all phrase for the technologies we use to link our online activities with other human beings. RSS feeds are a basic form, link rel is a more advanced one. At it’s height, lies microblogging with it’s conversational style and sites dedicated to nothing more than linking people online (facebook being the best known example but orkut, myspace and others are similar).

Virtually all of this technology is proprietary, closed off and run for one purpose: add-revenue. Because social networking technology tries to link like-minded people, it is inherently good at discerning what people’s minds are like – and that is something advertisers love.
The catch-22 is that big social networking sites have repeatedly been guilty of severe privacy violations.

But even those like twitter that are not add-based, and don’t really care about your personal information (twitter’s business model seems to be based on revenue-sharing with phone companies for sms updates) – still face a basic problem: closed off, proprietary and sealed are the antithesis of community.

So while the free software community does use these technologies, we tend to use them more as an outreach platform toward others from which to draw them to us, rather than as our primary means of online expression.

But what if there was a free software social networking site… for the free software community ? One that allowed you to keep abreast of news important to this community, in touch with fellow geeks and enthusiasts who form it … all the things social networking is good at, but without the cruft of privacy violations and with an open codebase you are invited to help hack better ?
Enter floss.pro.Floss.pro was the brainchild of South African Free Software advocate Karl Fischer. Karl is an old friend of mine and we worked together at OpenLab for quite some time – he was fundamental in some of the ideas that made OpenLab great in it’s day.

So when I heard about his new project, I was quick to get involved. From the start I had believed that kongoni needs to make efficient use of social networking to push itself – we don’t have a marketing budget, we need word of mouth – and social networks are all about word-of-mouth.
It seemed a godsend that floss.pro arrived just as the distro with the social-network focus needed it – so I was one of the first subscribers and the kongoni group is still the number 2 most active group on floss.pro (second only to the floss.pro master group).
The floss.pro site is built on the laconi.ca microblogging platform and microblogging forms the heart of it’s structure, it offers a powerful architecture which is shared across technologies with things like email-sms, jabber and openID supported and well used.
Laconi.ca in fact is a much more feature-rich platform than twitter with groups and tags supported inherently in the system and this makes floss.pro a very powerful and useful tool for developers to handle the social aspect of our work. For example, by blurting my kongoni work to my floss.proa ccount with a kongoni hash, I can follow the RSS feed for this hash on the kongoni.co.za website and keep a constant stream of what myself and other developers are working right there for new visitors to see.

Such ability to integrate and communicate could be used by any project and can be a great tool for efficient user communication. Having been on the site since it’s inception, I have seen it growing by leaps and bounds with a constant stream of development happening.
Almost every day some of Karl’s blurts* include mention of some new feature or technology that has been added. From integration with facebook to support for blurting from inside emacs. Guides for using various microblogging clients and more.
Thanks to laconi.ca’s remote-subscribe option it’s even possible to follow users on other laconi.ca based sites right from within floss.pro.

This site has the potential to become the next center-point of the free software community, like slashdot was for us back in the 90′s (Sadly slashdot today may be a good news site, but it’s community is really not ours anymore). The sheer coolness of the project is such that if cool was a literal thing, it would solve global warming.

I look forward to the future of this community, it’s always nice to be in at the start of something awesome, and floss.pro>floss.pro is definitely something awesome.

Apr 222009
 
No Gravatar

As I did with the baseline – the time has come for a sneak preview of what will be in the next release of Kongoni. The alpha build of 1.12.2 codenamed Sophocles has now reached a state where the builds can fully install and sensible screenshots taken, putting them in final testing before in the next few days.
In the meantime here are these early screenshots, I took particular care to show the new theme enhancements in action, as well as some of the new features added since baseline.
Gradually the vision for kongoni is starting to take real shape.

click here to view it in a new window instead)

Apr 222009
 
No Gravatar

Building kongoni means building a huge amount of software not written by me. Usually this is not hard. A few basic combinations of commands will build almost anything, these days even most packages with autotools support DESTDIR so it’s generally not a complex process. In fact, it is so predictable that autopork automatically generates about 80% of everything.

But some packages have excruciatingly complex build systems, that are hard to master, harder to package… and in short, the bane of a distribution developer’s existence.

Herewith, my top list of packages with the most terribly stupid build system out in the world (why some of the most popular programs are on this list, and haven’t done anything to get off it I just can’t figure out).

  • Gnome
  • Man… a project that requires non-standard patches to a core system library is bad, one that requires dozens of them is simply terrible. Gnome is so bad in this regard that since Slackware 10 Patrick no longer even tries to include it so slack gnome users have to rely on projects like GSB and FreeRock to run it. Both of them have the same problem at the end though -you now have to rely on their versions of several core packages so you can’t use Patrick’s updates.

  • OpenOffice.org
  • Just ask anybody who has built this one from source, forget that it takes days to compile – it’s a nightmare just to get set up, let alone package. To make things worse – their own binaries are only available in deb and rpm formats… hundreds of them. This is why it’s one of the few binary-only ports in kongoni, it’s just too much of a nightmare.

  • Pingus
  • Pingus uses scons, in theory, this means it’s really easy to build. In practise though the scons setup it uses is terrible. It fails to detect libraries that are present, then reports as present dependencies that aren’t… I still haven’t gotten it to build right.

  • Frozen Bubble
  • Wait… you need a customized version of a core perl module that’s 7 versions behind the current… so you break hundreds of programs to run one… erm… right.

  • Boost
  • Now here’s a headache one, the library set that uses it’s own built-in build-system, you have to build this first. Only then can you build the libraries… and it’s impossible to do in a fakeroot setup. In fact, I still haven’t built a working boost port, the only way to build it is to run the SlackBuild by hand from a real root shell (su doesn’t work) and then install the package it creates.

  • Amarok
  • In theory, amarok is as easy as any CMake based system. In practice it has a bug almost as bad as Boost’s – it can only be built by real-root, fakeroot just doesn’t work. At least this one works with su, so the amarok port asks for a password.

So here’s hoping some of the developers of these projects read this, remove their craniums from their rectal cavities and give a thought to the poor slobs who have to package this stuff so users can enjoy them.

Apr 212009
 
No Gravatar

It turned out to be one of those days. As I woke up this morning, it began exciting, the last set of updates to the image installations were done (basically, the image installations are the hard-drive installs on partitions of my home machine which ultimately get turned into the live CD’s, so updating them is the first part toward building the Alpha ISO’s).
Then I realized… kongoni.co.za had disappeared since the previous night. Investigations began, ultimate it proved to be a DNS issue – but an interesting one.

At some point uniforum had locked down domain registrations to use only dns server names, which had to support reverse-mapping – not IP’s. Whatever the reasoning behind this, it has a catch, if the domain for your DNS server expires – all the domains that use it go down with it.
But why was the DNS domain expired ? Turns out the contact e-mail had a typo in it, I never got the renewal notice… well it’s renewed now, and will be up later today.

In the meantime I decided to get some work done on other levels, none of it is submitted yet because the git-servers aren’t yet resolving but it’s been done anyway. The first was to update the freepascal and lazarus packages, this needed to happen anyway as the new freepascal release just days ago means a lot of mirrors don’t have the old version, and these are not frozen packages anyway (though they are used to build some frozen packages).

Since the lazarus QT support for QT4.5 was released this week as well, I opted to add the support to build lazarus (and thus lazarus based apps) with either GTK or QT. There is a new port called qt4pas, if you install it then lazarus will build with QT by default, else it falls back to the GTK default. Rebuilding with it in will have the same effect.

With that in mind, I branched the kongoni_tools repo, thus generating the unstable branch, where I branched out pig version 0.1.0 and kongoni_pleasewait 0.1.0 – the core difference ? Both of these use are now QT4 based. Neither will be in alpha, but this branch will ultimately become the next versions and be merged back.
In the meantime the master branch remains for the stable releases and their associated updates.

Once you start building a massive one-shot update like this, you pick up a lot of bugs that had slipped into the ports tree over time and hitherto been unnoticed. First of which – openoffice had apparently quite randomly replaced packages in the current stable release, with new ones that had some subtle changes in them… whoops.
One of the first tasks then, modifying the openoffice.org ports to actually work again.

Another nice one was that qt4.5 requires the latest libpng port, but apparently this did not get listed in the requirements… whoops: restart.

But the most annoying thing of all… welcome to South Africa where ISP’s run transparent proxy that cache things and update when they feel like it… imagine building fixes to the ports for alpha, then trying to sync them to the image systems… and they don’t show up, because the http repo’s are cached and won’t show the change until your ISP’s cache expires.
There has to be way to set the meta-refresh or something to tell them these things shouldn’t be cached, but how to do so I don’t know since this is pretty raw http (it has to be)… I’ll have to go dig around in total capabilities of .htaccess I guess.

Debugging, that is what 90% of the ISO process consists of, try to set something up, it fails, fix it… thus the tree gets stabler and the ISO’s grow. This is not the most fun part of the process, that comes when I’m done with this stuff and I start putting all the pieces together, like actually configuring the default desktop to use the new artwork (which is shaweet). This part obviously cannot be automated in the tree so people who choose to upgrade via the tree will have to set up such of these as they desire themselves, but the clean-installers will get the benefit.

Yet another bug that continuous to haunt is with boost. Man what a crummy buildsystem it has. Next experiment here: try to do what I did for amarok, means you need a root password for it but at least the damn thing builds.

As a general rule if you check the build number in the package name (the one before _kng) – the higher the number, the more grief the package has given me :)

Still, I don’t want to sound like I’m complaining, rather explaining. The process post-freeze is complex and hard but very, very satisfying because this is where the new ISO’s start to take shape… this is where the last 3 months worth of work starts to become validated.

Well, onward and upward… I got a lot to do still.