1LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap
SUSE Studio supports OpenID for authentication.
3Choose Your Appliance Foundation
As base distribution options, SUSE Studio offers up the free and community-supported openSUSE 11.1, alongside two versions of the Novell-supported SUSE Linux Enterprise. I could choose from a variety of system templates for each distribution option.
4Name & Architecture
On the same page of the interface, I selected either the 32-bit x86 or 64-bit x86-64 processor architecture for my appliance.
5Ready to Roll
With my base choices in place, it was time to start adding software to my test appliance.
The SUSE Studio interface presented me with the repositories and packages that came with my base template selection. From here, I could begin adding or removing software packages and software package sources from my appliance project.
I clicked the icon for “to be installed” software and began to peruse the queued applications.
Some of the applications I wished to add weren’t available in the repositories I started with, but SUSE Studio made it easy for me to add new software sources, many of which hail from the OpenSUSE Build Service project.
9New Repositories in Place
Back at the main software tab, I could see that the repositories I added were now part of my appliance project.
In addition to connecting existing repositories to my project, I could quickly populate a new repository of my own by uploading or linking to RPMs or sets of RPMs.
11OpenSUSE Build Service
I don’t know why, but the one repository that SUSE Studio refused to add to my appliance project was the Mozilla Beta channel on the OpenSUSE Build Service. I worked around this kink by uploading the package I needed through the RPM upload tool.
12Build New Packages
For applications without a ready RPM package, I could use the Build Service to create a package. SUSE Studio could benefit from tighter integration with the Build Service.
Novell’s SUSE Linux distributions feature very good dependency resolution logic and tools. Both surface in SUSE Studio, which makes clear the relationships between software components.
I gave these dependency-resolving tools a run-through when I sought to “ban” the icewm package from my appliance.
When I banned icewm from my project, an error message appeared in the interface’s left-hand sidebar. Clicking the “more” link called forth a handful of operations that would resolve the conflict.
16Software Selection Warning
When I tried to resolve my icewm conflict by removing the sax2 package, SUSE Studio warned me that the removal would prevent my appliance from correctly configuring its X server.
17Solve Errors with Repositories
In addition to addressing package dependency issues by adding or subtracting packages, SUSE Studio offered, in certain cases, to resolve conflicts by adding new repositories.
Many of the packages in the SUSE repositories come with lists of recommended and suggested complementary software packages. I could add these optional components either on a per-package or wholesale basis.
Once I was satisfied with my software selections, I moved on to set basic configuration settings, such as those for time zone, networking and users.
I could also make some adjustments to the appearance of my appliance.
21End User License Agreement
SUSE Studio offered to tack multiple EULAs onto my appliance.
SUSE Studio includes a handy option for pre-populating MySQL databases and for configuring users and permissions.
I could single out applications to launch upon appliance log-in, but found that this feature didn’t work with my minimal X IceWM desktop.
24Storage and Memory Options
For appliance images destined for Xen or VMware hosts, SUSE Studio offered an option for setting RAM and storage sizes.
25Build and Boot Scripts
SUSE Studio provides a facility for adding post-build and boot-time scripts to its appliances.