Category: UCK

UCK 2.0.3 released »

Just a few days after the 2.0.2 it’s time to download the new 2.0.3. It’s only a minor minor minor update release, just some documentation changes and the uck-gui icon was moved from the “utility” menu to the “system tools” menu.

Download UCK 2.0.3

PS: Sorry for the ugly post, I’m really out of time now :-)

UCK 2.0.2: hardy support and GPL3 »

It was a long time since the last UCK release but… it actually works pretty well for its purpose, anyway we thought it was time for an update.

With 2.0.2 you’ll find that UCK is now released under GPL3, I love it :-)
This new release adds support for Ubuntu 8.04 (hardy heron).

I worked on the (small) patched working on “Ubuntu Italian ISO” and Minibuntu thus it should be tested enough.

Download UCK 2.0.2

The importance of delivering localized Linux »

Situation 1:

You go to the supermarket and buy a new PC, you’ll find that the installed copy of Windows is perfectly localized in your language by default.

Situation 2:

You go to the Apple store and buy a new MAC, you’ll find that the installed copy of MAC OS is perfectly localized in your language by default.

Situation 3:

You download a copy of Ubuntu, burn it and boot it, select your language and… find that half of the system is in English and only a few things are in your language (this happens for Italian, maybe things can be worst with other languages).

What I want to say it’s quite obvious, if Linux vendors want to penetrate the newbies market, they must provide fully localized ISO images, there are no excuses. This is my point of view.

A lot of time ago, when I entered the UCK team, I wanted to build an ISO localization team, to build and deliver a full set of Ubuntu localized images. That part of the UCK project never came to life because of some problems but I still believe in its importance. Ubuntu team seemed to be quite regardless of this problem and our solution.

We (CreaLabs) continue to build and deliver the Ubuntu Italian ISO and I know there are a few other similar projects around the world but the point is that these kind of initiatives should become more officially endorsed by Ubuntu (or any other distro, problem is the same).

I talked a few time with the Ubuntu Italian Community but in all these years no page of the site links to our ISO image. Well… I’ve to say I’m a bit sad about that ’cause this seems to mean something like “we don’t care about that”.

Now, critics apart what can/should we do? If you agree with my point of view contact your distro (many of them have localized communities) and make them read this post, we just need to talk about the problem and we’ll find how to solve it. Having a fully localized Linux delivering infrastructure can only bring more users to our beloved OS.

Remastering an “Ubuntu alternate” ISO with Ubuntu Customization Kit - the complete guide »

You have an Ubuntu alternate ISO and you want to customize it, to do things with ease you choose to do that with Ubuntu Customization Kit which will handle most of the tasks for you.

Preamble

This guide is written with the SVN version of Ubuntu Customization Kit, thus somethings (actually only minor things such as log messages) could be different from the ones you’ll get with your copy of UCK.

Prerequisites

To remaster an Ubuntu alternate ISO you need to:

  • be running an Ubuntu based distro on your host system in order to install and run UCK successfully
  • have UCK installed in your Ubuntu box. In order to install it go to the UCK’s website, click download and select the debian package. After downloading the package install it with the usual tools (dpkg or gdebi or whatever).
  • have an Ubuntu alternate ISO downloaded somewhere in your hard disks.

First step: extract the ISO

An ISO image is a single file, you can’t modify it in any way keeping it “as is”, thus you’ll use UCK to extract its contents to a directory with this command:

fabrizio@fabrizio-laptop:~$ sudo uck-remaster-unpack-iso ubuntu-7.10-server-i386.iso
Mounting ISO image…
Unpacking ISO image…
Unmounting ISO image…

Ok all went perfectly, now you’ll find the contents of your ISO in the “~/tmp/remaster-iso” directory

Second step: prepare the remastering environment

This step creates a new package repository inside your remastering directory (~/tmp/remaster-iso/pool/extras), in that repository you can now put all the packages you want to be added to the new ISO.

fabrizio@fabrizio-laptop:~$ sudo uck-remaster-prepare-alternate
now you can copy your packages in /home/fabrizio/tmp/remaster-iso/pool/extras, customize preseed files or do other customizations

Third step: adding new software

Alternate ISO system only manages deb packages thus you need to have deb packages for all the software you need to add to your new ISO.
There’s only one thing you have to do, copy the deb packages to the ~/tmp/remaster-iso/pool/extras directory, that’s all.

IMPORTANT: Added packages are not automatically installed by the Ubuntu installer on my target system

If you add software to the extras pool you can have two reasons:

  • you want those packages to be automatically installed into your target system
  • you want those packages to be available on cd/dvd to be optionally installed into your target system after a choice of the user (Ubuntu text installer handle this within “tasksel”)

If your option is the first then adding the deb packages to the extras directory won’t be enough, you’ll have to modify the preesed file, what is a preseed file? It’s a file which tells the Ubuntu installer what to do, it’s a way to script it.

Preseed files have their own syntax but for the purpose of this small guide I suggest you to take a deep read of the “modify installer behaviour using a preseed file” guide.

The “install cd customization” guide is really big but you don’t need to study it all, you can read only the “modify installer behaviour using a preseed file” section just because UCK covers all other sections for you.

Forth step: modify software that already was in the original ISO

Sometimes you could want to modify default configurations of software which is bundled with the default ISO, in order to do that you’ve to:

  • locate the original deb package within the remaster-iso/pool tree
  • delete it
  • create a new deb package for the software, with all your customizations inside it
  • copy your new deb package to the position where the original one was (eg: ~/tmp/remaster-iso/pool/main/a/apache2)

You need to delete the original package to avoid possible conflicts.

Fifth step: finalize the remastering environment

Ubuntu alternate ISO system works with signed Ubuntu repository thus you’ll have to regenerate all the metadata files for your updated/new repositories and than sign it with GPG. If one of these conditions are not met the installer will hang telling that your ISO is corrupted.

When I was writing alternate support for UCK this was one of the most difficult part to code and this would be difficult for you too if you were not using UCK :)

If you don’t have it, create a personal GPG key before going ahead. Remember also to write down the ID of GPG key, it should be printed by the key generation process or you can read it with the gpg --list-keys command.

Now simply let UCK do the work for you with:

fabrizio@fabrizio-laptop:~$ sudo uck-remaster-finalize-alternate 691D19E1

UCK will then do a lot of things, download files from the Internet and do all the tasks we were talking before, the operation could last a few minutes and you’ll see a lot of log lines. You’ll be asked to type the password for your GPG key, this should happed 3 times.

When the process will be finished you’ll be ready to repack your ISO.

Sixth step: pack your new ISO

fabrizio@fabrizio-laptop:~$ sudo uck-remaster-pack-iso

A lot of log lines will be printed in this phase too, don’t worry about those if you don’t see any strange error message.
Ok that’s all, finally you did it, where’s your new ISO file? Here:

fabrizio@fabrizio-laptop:~$ ls -lah ~/tmp/remaster-new-files/
totale 501M
drwxr-xr-x 2 root root 4,0K 2007-11-27 11:49 .
drwxr-xr-x 5 root root 4,0K 2007-11-27 11:49 ..
-rw-r–r– 1 root root 500M 2007-11-27 11:49 livecd.iso

Now you’re free to burn it, test it with qemu/virtualbox/vmware or whatever ;-)

Closing notes

This guide should be pretty exhaustive, if you encounter errors, misspellings or have any suggestion, please feel free to drop a comment!

And… remember to DIGG this guide using the button here below :-)

Ubuntu Customization Kit 2.0.1 »

A small maintenance release to fix a few bugs, mainly focused on the “alternate” ISO remastering.
Here you have the complete changelog:

GUI:

  • version number shown in uck-gui was fixed

Backend:

  • when unpacking an “alternate” ISO now we don’t try to parse the filesystem manifest
    because it doesn’t exist
  • uck-remaster-finalize-alternate now can handle new releases of ubuntu-keyring package

Package:

  • fakeroot dependency was added

Links:
Download UCK 2.0.1
UCK’s official website

Ubuntu Customization Kit 2.0 is finally out! »

It’s been a long journey, the new release is out after more than 6 months of work, adding features and fixing bugs thanks to the help of the community.

What’s the main goal of UCK 2.0? Becoming the de-facto standard base for Ubuntu remastering operations.
How this goal is achieved? Building a complete and stable API system.
Looking at the new UCK you’ll notice that we’ve splitted all the features in small scripts that could could simply include in batch processing or more advanced remastering software.

A deep look at the binaries:

uck-gui
uck-remaster

These are the 2 files you already had in previous releases, the first is the GUI system to easily access the most common functionalities and automatically build a custom Ubuntu ISO without dealing with CLI. The second one is the main backend point of access. This is called by uck-gui to script all the remastering steps. You can use it if you save the configuration files created by uck-gui for a re-processing.

But the most important thing, the API I was talking about is here:

uck-remaster-chroot-rootfs
uck-remaster-clean
uck-remaster-finalize-alternate
uck-remaster-pack-initrd
uck-remaster-pack-iso
uck-remaster-pack-rootfs
uck-remaster-prepare-alternate
uck-remaster-remove-win32-files
uck-remaster-unpack-initrd
uck-remaster-unpack-iso
uck-remaster-unpack-rootfs

Use this scripts to access to ALL the features of UCK, also minor ones that are not used by the GUI. If you want to take a quick look to the options check UCK API reference.

You can notice a small utility to quickly remove win32 related files and a set of scripts to work with alternate ISOs (one of the most difficult part of the game…).

Future?
As I already told I wish that we could join reconstructor to build THE solid Ubuntu remastering framework, much more helpful and optimized that the DELL’s DRU.

I think the core system is pretty complete now, we could add more “bling” features trying to automate tasks such as gfxboot/usplash customization and so on but… we still have to think a bit about that, stay tuned :-)

Download links:

UCK 2.0.0 beta2 is out »

I took a few minutes to release the new beta, there were some interesting changes that need to be tested by users so here you have :)

Changes since beta1:

* GUI:
* The question about which desktop environment will be used to manually
customize the ISO was removed, this is now autodetected by the backend
* Fix for bug 116018 (–nofork option for adept)
* A question about removing win32 files was added
* “others” option was added to the desktop choice to allow a better
usage with Ubuntu derivatives

* Backend:
* Package manager and console applications run inside the livecd are now
autodetected
* uck-remaster-remove-win32-files script was added
* Support for Xubuntu/XFCE was enhanced

Download:
http://tinyurl.com/2cvzkj

UCK 2.0.0 beta1 is out, announce and some considerations »

It’s been a long time since the previous release, we worked on many things but only a few of them are visible to the end user. An highlight of the new release:

  • most of the back-end was rewritten to achieve better flexibility for power users (and every task was separated in a single script)
  • support for alternate CD
  • all logging was rewritten to be more human
  • many other small things under the hood

Hey, in the package you’ll see the new icon and logo :) absolutely amazing I think :)

So now go download and test, we really need to fine tune things to build the most rocking ubuntu remastering framework! Again I hope that in the near future we could join reconstructor team to work together.

The complete changelog:

* remaster-live-cd script was renamed uck-remaster
* A script for every part of the remastering process was created:
uck-remaster-unpack-iso, uck-remaster-unpack-rootfs, uck-remaster-unpack-initrd,
uck-remaster-chroot-rootfs, uck-remaster-pack-rootfs, uck-remaster-pack-initrd,
uck-remaster-pack-iso, uck-remaster-clean
* Support for alternate cd remastering was added:
* uck-remaster-unpack-initrd and uck-remaster-pack-initrd automatically
detect if you’re remastering a desktop or alternate cd and read/put files
in the right places
* uck-remaster-prepare-alternate script was added to allow you create the
directory you need to put extra packages in the alternate iso
* uck-remaster-finalize-alternate script was added to regenerate the packages
indexes and re-sign the release with your GPG key
* REMASTER_HOME is the new default variable every single script can receive as
parameter, the variable contains the directory where all part of the remaster
will be stored (default is ~/tmp)
* Log/error messages got more consinstancy
* Unuseful error messages were removed to gain readability of the log file
* uck-remaster-pack-iso now supports PPC, x86_64, ia64

UCK various updates »

All the new features are finally merged in the main development truck, the next release will be officially named 2.0 and the logo contest is going beyond my expectations.

My promise for 2.0: I’ll take the time to document every single script and create some example of command line remastering examples.

UCK logo contest »

UCK is approaching the 2.0 milestone with many major improvements, building a new base for all Ubuntu remastering operations of the future.

We hope the new release will be out on 1st July 2007 and to celebrate the big jump we’d like to have a brand new shining logo for our beloved project.

If you want to partecipate, please check the official contest page on UCK’s website!