Buy the latest issue online!
Never miss an update! Get PC Plus in your RSS reader, Twitter, and on Facebook

Build A Linux Distro Online

Can't code? Don't worry! You can create a top-quality custom Linux distro from the comfort of your web browser using SUSE Studio.

Update: Don't feel left out if you're a Windows user. Check out our tutorial about how to build your own Windows. And if you're a die hard Linux fan, check out our guides to cluster computing in Linux and booting into Linux over a network, Or if you want a different flavour of distro, check out our comprehensive guide to using Fedora's Revisor tool.

SUSE Studio is clever. Very clever. It’s the result of two years’ work by a team at Novell to provide its enterprise customers with a convenient launch pad for building virtual appliances and customised distributions. It’s also been a massive success, boasting over half a million downloads and over 40,000 users. But don’t let the word ‘enterprise’ put you off: customised distributions like these are incredibly useful, whether you use them yourself, make them for someone else, or deploy them across your IT infrastructure. They represent what’s great about Linux: its ability to be repackaged, copied and redistributed with complete freedom. Building your own distribution is also rather cool.

Fancy a pretty desktop like this one? You don't even have to close your web browser to create one thanks to SUSE Studio.

In serving its high-end customers, Novell has created the most powerful and most intuitive distribution design tool the low-end Linux community has ever seen. And it manages to do all this through a web browser. It makes hunting for the perfect distribution a little like online shopping. Point your cursor at a feature and it’s added to your distribution. You can add as many or as few items as you wish, and when your virtual basket is full, the checkout process will let you preview your order before presenting you with a variety of delivery options.

You could download an ISO file for optical media, for example, or a pre-formatted virtual machine configuration that you could run from VMware Player, VirtualBox or Xen. There’s even an option to build a Flash version of your distribution that can be written to a USB thumb drive. All of this is accomplished online through a web browser. The building process and your distribution are hosted on Novell’s servers until you’re ready to download the fruits of your labours. Moreover, unlike nearly every other distribution building tool, you don’t need any specialist knowledge in order to create exactly what you want.

Create an account

The first step to creating your own distribution is to create a personal account at www.susestudio.com. The only fly in the ointment is that you’ll then need to wait for an invitation to arrive at your registered email account. This delay is necessary for Novell to ensure a decent quality of service for all its users, and how long you have to wait is dependent on demand. We found that it can vary between half an hour and a few days. When you do get an invitation, a single click is all you need to activate the distro building features.

When your account is activated and you log in, you’ll be presented with a page that allows you to choose a base template for your distribution. Each one is built around either Novell’s community-supported OpenSUSE 11.1 distro or its business-friendly SUSE Linux Enterprise distribution (versions 10 and 11). If you’re looking at deploying your distro in a critical environment then the enterprise distributions offer better professional support and long-term stability, but you’ll probably find that OpenSUSE is more interesting.

You also need to select a suitable package template for the distribution base. There are the standard Gnome- and KDE 4-based distributions, for instance, as well as a minimal X installation and a package designed for servers. There’s also an option labelled ‘Just enough OS (JEOS)’, which features the bare minimum of packages required for a working installation and is the closest option to a blank canvas. The basic JEOS image requires just 270MB of space, for example, whereas the default KDE 4 install requires a little over 1GB to be available.

Select some software

Our first distribution is going to require a desktop environment. For that reason, we plumped for the KDE 4 desktop option in the OpenSUSE 11.1 category. Next, scroll down the page and give your creation a name before clicking on the ‘Create appliance’ button. The following page can be quickly skipped over and you’ll then find yourself at the Software Sources page. This is where you augment your base installation with essential packages. Your new distribution will still be able to download and install packages, but including them at this point will avoid the need to go through that process for every machine.

Just pick the components you want to include from this handy list.

Click on the ‘Recommended’ button to get a good idea of which packages make the most sense to include. Top of the list is Firefox, followed by Flash-player for Adobe Flash support. This is closely followed by OpenOffice.org, GIMP, DVD-writing tools and Ntfs-3g for reading Windows partitions on the same machine. Adding each of these packages is a sensible choice. Click on the ‘+add’ button to the left of each package to drop them into your proto-distribution. The only other packages we added were Kde3, which turned our distribution into the ultimate KDE package, and Yast2-live-installer, which enables a Live DVD to be installed. As you add packages, you’ll see a running tally in the left-hand border of the page. This will update with the current amount of space that your distribution is taking up, both as a compressed archive and as the final object. This is something to keep a close eye on if you need your distro to fit onto either a 4.7GB DVD or a 700MB CD.

If your requirements aren’t met by the default package list, you can add further package repositories by clicking on the blue ‘+’ symbol at the top of the page. There are several pages of different sources, including Apache, Compiz and even a repository for emulators. If you have your own packages to include, you can upload them to your custom distribution by clicking on ‘Upload RPMs’, but you’ll need a SUSE-formatted RPM package for this to work.

Configure the distro

Now switch to the Configuration tab at the top of the page. This is where you answer all the questions you’re typically asked when installing a distribution. The first page, for example, requests your location, time zone and keyboard layout. You should leave DHCP enabled for the network. Disable HTTP in the firewall configuration unless you’re going to run a web server from each machine with this distribution. Below these questions you can create a default list of users. You might want to add a generic guest account, and an administrator account too.

The second page allows you to personalise your distribution with your own graphics. Upload your own logo and background, and these will be displayed while your distribution is booting. We made the background blue to reflect our choice of desktop environment.

The third page lists the start-up options and allows you to enter your own end user license agreement (EULA). You should keep the start-up option at its default value, but editing the EULA may be useful if you’ve added your own packages. The following Server page will let you configure any server package you’ve installed, while the Desktop page lets you specify a user for auto-login and any applications you want running from the desktop. You could choose to launch Firefox (mozilla-firefox) if you were building a web kiosk installation, for instance.

The final two pages of the configuration state deal with virtual machine specifics and any custom scripts you want to run. For a large deployment, you may want a script that sets up email accounts, for example.

Build the distro

Overlay files are a way of accomplishing a custom configuration without using a script. For example, you could configure your Evolution mail client locally and upload just the configuration file during the Overlay Files stage. This would create a default configuration for each distribution.

Finally, when everything is configured correctly, switch to the Build tab and select the format for your distro from the dropdown list. Click on ‘Build’ and Novell’s servers will start to cook your distribution. How long this takes is dependent on how many packages you’ve included. Our 1.5GB ‘super KDE’ distro took 14 minutes to create, and the end result was a 477MB compressed file.

But before you download your custom distribution, SUSE Studio has one last trick up its sleeve. There’s a preview mode in SUSE Studio that will let you run your distribution from the remote server. When the build process has finished, look for the ‘Testdrive’ button beneath the status text. Clicking on this will open a new window, in which you’ll see your distribution start to boot. You can even SSH into your virtual server by enabling networking and then following the on-screen instructions – and if you installed a web server then that will be running too.

SUSE's Testdrive option lets you test the distro, again without leaving your browser.

The Testdrive facility gives you an hour to try the server before ending the session. When you’re happy with the results, just go back to the Build page and download your distribution. Note that a default account provides 15GB of storage and you can access any of your prebuilt distributions by clicking the ‘Home’ icon. SUSE Studio will delete your build from its server after seven days, but it keeps the building information so that you can rebuild the image again.

Run the distro

After downloading your distribution, it’s time to run it on some hardware. How you do this depends on the format you’ve chosen. VMware images can be loaded into your virtual machine application directly, while USB sticks or hard disk images can be written to their final media using the ‘dd’ command. It’s not difficult, but you need to ensure you get the correct destination, since dd won’t ask if you’re sure and can quite easily just overwrite your data. If you’ve gone for an optical disc image, this simply needs to be burnt to a disc using a tool such as Brasero or K3b.

With your optical media in hand, it’s then just a simple case of booting your machine with your distro’s disc in the drive and installing it. Within a few moments you’ll be dropped into your very own Linux distribution, ready to go and complete with all the packages you’ve selected.

Offline alternatives

The main problem with SUSE Studio is that it relies on both Novell’s servers and its goodwill. There may come a time when Novell wants to charge for the service. Alternatively, if you need to build your own distribution and the internet isn’t working, you’re going to be stuck. Hopefully, Novell will release the application code to Studio, or make it part of one of its distributions one day, and you’ll be able to take advantage of its functionality from your own machine. But until then, it’s worth finding an alternative.

Outside SUSE Studio, building your own distribution can be a tricky business. You normally need to know a lot about Linux and how it all hangs together. The Gentoo distribution is a viable alternative to putting everything together yourself. Gentoo still gives you complete control over every package that’s installed, but it’s a well-trodden path that offers plenty of community support and a step-by-step installation procedure.

However, you won’t be able to share the distribution you’ve created with other Linux users unless you’re prepared to go through a lengthy build process. Currently, the best alternative to SUSE Studio is Fedora’s Revisor tool, which we covered in PC Plus 279. It’s a point-and-click interface for building your own Fedora-based Live distribution, which means that you can boot and run it off either a USB stick or an optical drive. You can select the packages to include and create a custom configuration that fits your specifications exactly. It’s often used to rebrand the default Fedora distro, but it’s capable of more than simple makeovers.

Test your distro in a VM

One of the build options for SUSE Studio is ‘VMware/Virtual Box’. When you select this from the dropdown list and click on the ‘Build’ button, SUSE Studio will construct your distribution and insert the installation into a VMware hard drive image.

Virtualbox is the best way to realistically test your distro outside of your browser.

This can then be loaded directly into VMware and run without any further configuration. VMware is normally expensive, but there’s a free version called VMware Player that’s compatible with the same image and features the same excellent performance as the full-price version.

The best option for Linux users, however, is Virtual Box. This is a free, open-source competitor to VMware, and most distributions include Virtual Box packages that can be installed through a package manager. From Ubuntu’s Synaptic, for example, search for and install the Virtualbox-ose package.

When you download the virtual machine from SUSE Studio, it’s delivered as a ‘vmx.tar.gz’ file. VMX is the virtual machine format, while ‘tar.gz’ is the most common archiving format on Linux. You can normally double-click on a file to decompress it, or type tar xvf on the command line followed by the name of the file to do it manually. You then need to launch VirtualBox. Click on ‘New’, select Linux as the operating system and OpenSUSE as the version, and then click on ‘Next’ twice. When you get to the virtual hard disk page, click on ‘Existing’ and ‘Add’, then point the file requester at your downloaded ‘vmdk’ file. You can then run your virtual machine and play with your new distribution.

Graham Morrison

Enjoyed this article? Subscribe to PC Plus and get your monthly digest of news, features and all the stories that matter delivered straight to your doorstep - worldwide. Click here for our latest offers.

The author has some confusion about what makes up a Linux distro. Customizing with SUSE Studio does not create a separate distro -- the actual distro is whatever template you customize. SUSE Studio is a great achievement, but presenting this as "SUSE Studio lets you build a distro" disregards all of the work that goes into creating and maintaining an actual distro.

A better (read: more informed) way of putting it would be to say that SUSE Studio lets you create a customized SUSE distro.

Not a Distro's picture

@Not a Distro

This is a fair point, and the resulting distro is obviously going to be SUSE-based. But to a greater-or-lesser degree (unless you build your own distro piece by piece), you're going to have the same issues with almost every other distribution listed on distrowatch.

Many distributions are derivative but that doesn't mean they're not distributions. Just look at the number of Ubuntu re-spins that are available, many of which, like Mint or CrunchBang, are doing extremely well. You could make the same argument about their creation and maintenance.

The bottom line is that with SUSEStudio you can create a personal distribution on a disc or stick that you can re-deploy using probably the easiest and most intuitive system currently available.

Graham Morrison's picture

Actually off-line and local application building is now possible according to this recent Novell news release!

http://www.novell.com/news/press/news/press/novell-delivers-first-integrated-toolkit-for-building-testing-and-managing-software-appliances

OpenCamp's picture

If you are reading this you probably already have a reason that you would like to learn Linux. This article will specifically focus on those who want to learn Linux for professional or career advancement.

http://www.allsuretybonds.com/'s picture

Post new comment

The content of this field is kept private and will not be shown publicly.
If you have a Gravatar account, used to display your avatar.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
  • Internal paths in single or double quotes, written as "internal:node/99", for example, are replaced with the appropriate absolute URL or path. Paths to files in single or double quotes, written as "files:somefile.ext", for example, are replaced with the appropriate URL that can be used to download the file.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <p>

More information about formatting options

CAPTCHA
We apologise for making you prove your humanity...
Buy the latest issue online!
Future Digital Future