TurnKey Linux Virtual Appliance Library

v14.0 stable release - Massive Community Effort!

Drum roll please... May I proudly introduce: The TurnKey Linux v14.0 release!

turnkey 14.0 banner

A long time coming...

Wow is it mid September already!? What has happened to the year?!

Marching towards v14.0 RC2

As anyone who has been paying attention would realise; v14.0RC1 has been out for over a month now. And here at TurnKey central we have been very busy updating the appliances. To be honest I wish that I was announcing the final release, but alas we're not there yet - there's still lots of work to do...

How to build a TurnKey appliance ISO from source

For the upcoming v14.0 stable release, we are doing things a little differently than we have before. Historically new releases have been done totally in house with help from the community. This time around we have some QA testers (kindly donated by a TurnKey user; more about him in another blog post...) who are going to help out and make sure that our appliances are as good as they can be for the v14.0 release.

Insights on what makes me productive

A few insights I've had with regards to what makes me productive:

  1. satisfying "meaty" workplans: I tend to be much more productive if I something on my table I can really sink my teeth into. The best example is an interesting development project with the high-level design sketched up and a road-map with deliverable testable milestones for me to bite through one mouthful at a time.

Securing Firefox, Chrome and Thunderbird against client-side attacks

Imagine someone half-competent wants to hack into your computer. They want to read your e-mail, steal your bitcoins, transfer funds via your PayPal account, etc.

You're behind a firewall (or more commonly a NAT router) and you don't have any open ports / servers running. So you're safe right?

TurnKey v14.0 RC1 is LIVE! (aka we need YOU!)

It is with great pleasure that I announce the release of Core v14.0RC1 and TKLDev v14.0RC1! But first a little history and context... We had always intended to do a v13.1 maintenance release. Ideally it should have been out long ago! Actually we probably should have released v13.2 or perhaps even v13.3 by now, but time just got away from us. :(

How to upgrade a Debian package to a newer upstream version

Duplicity issued a new stable version with a few bugfixes. I didn't want to wait for the Debian sid package to update so I updated it myself.

This was very simple as the Debian duplicity package uses dpatch to manage all the patches to the original source code. The patches go to debian/patches.

When the package is built debian/rules applies these patches:

dpatch apply-all

Creating a new dpatch is also automated::

Invalidating the disk cache on Linux

Here's a super easy way to invalidate the disk cache, which is useful for testing IO performance in the real world, where you can't rely on all of your reads being served up from a super-fast RAM cache rather than a vastly slower physical disk drive.

This will free up everything in the disk cache:

echo 3 > /proc/sys/vm/drop_caches

Or if you want more control over exactly what is being freed...

  1. This frees up the pagecache (e.g., cache of contents of files):

pyproject-pub: A simple Python project template

I hate repeating myself. It's boring. Life is too short. Like any self respecting hacker I will go out of my way to avoid it, even when I suspect it would cost me more to automate something away than to just do it by hand.

On the other hand, doing stuff I've done before by hand is no fun, while writing scripts is fun. Even when it does take longer, time is relative, or so Einstein said.

Understand the system, make stuff happen, or die trying.

Specialization. Most of the people who work for big companies do it. They're good at this one specific thing the company needs to get done. They work with other people who are good at other things.

On one hand, specialization is necessary and useful. It doesn't make sense to try and train everybody to be good at everything. As they say, jack of all trades and master of none.