CopyKitten 2012/09/29

So for Ubuntu-be we are working on a new project. Instead of handing out free CD’s like we used to do, we are now going to sell USB cards at a fair price (just to cover our costs). Working this way gives us a number of advantages:

  1. We never got anything from our CD’s so we never even ran breakeven. (unless we had some good contributions)
  2. Installing or trying out Ubuntu from a USB drive is a lot faster than from a CD
  3. With the possible size increase in new ubuntu releases we might have been forced to burn DVDs rather than CD’s. The cost of a DVD is a lot higher than a CD so our loss would have been even bigger.
  4. USBs enable us to do more because of the space we gain. We can now include extra packages that are usefull for people in Beligum and include the full language packs for all official Belgian languages.
  5. People who buy the USB’s are promoting ubuntu for us, for free! Whether they use it as a usb with ubuntu or without it, our image will still be out there.

Now, thanks to [Kawabill], a member of our Ubuntu-be LoCo team, we finally have the USB cards to do this with. We ordered about 100 of them just as a first batch to see how well this goes.
[Claudio] on the other hand is working on our custom ISO and that work is nearly finished.

Empty Drives

Because our ISO wasn’t finished and because the company who made the sticks asked quiet a lot extra for putting data on them, we decided to get them without any data on them.
That being done, means we’ve got about 100 USB drives (for now) laying around with nothing on it. And when there is an event, a fair, an install party, we need a lot of sticks really fast.
[Claudio] managed to copy from 1 drive to another with ddrescue in about 22 minutes. With some optimizing, like copying from an ISO instead of another drive I managed to get that time down a notch.


But with 100 drives on the bench, writing them 1 by 1 isn’t a real option. On top of that ddrescue isn’t the savest thing to use. One might by accident overwrite the master drive or worse: another harddrive.
So I decided to make it easier to batch write the USB drives. With some help from the community we came up with the name CopyKitten.
This because it’s a CopyCat script but since it’s so light we decided on CopyKitten. (Well, because it’s light and because everybody on the internet likes kittens) Someone in the community was even kind enough to make us a logo.

Another person decided to offer me a fonera router if I made the script into a LUCI plugin for the DD-WRT operating system. Though I’m still not sure whether I’ll do it.

There I build it

So the Shell script is near completion, I just need to run some more tests and optimize it a little more. I was planning on doing that over the weekend, but I forgot to copy my code from my other computer at my dorm and I didn’t put it on GitHub yet. The reason for that is that I don’t like putting things on there that could break other people’s systems.
Nevertheless, the first results look well. I’m hoping to find a USB hub at home because I’m dying to test this out with 10 drives at once!
Another thing I want to test is what this script would do if it were to run from an SSD with the ISO on the SSD as well..
When I get back after the weekend I’ll upload an overview of the code I’ve written.