LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap
















































LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap
Getting Started
SUSE Studio supports OpenID for authentication.
Choose 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.
Name & 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.
Ready to Roll
With my base choices in place, it was time to start adding software to my test appliance.
Software Selections
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.
Software Browsing
I clicked the icon for "to be installed" software and began to peruse the queued applications.
Adding Repositories
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.
New Repositories in Place
Back at the main software tab, I could see that the repositories I added were now part of my appliance project.
Upload RPMs
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.
OpenSUSE 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.
Build 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.
Dependency Sorting
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.
Banning Packages
I gave these dependency-resolving tools a run-through when I sought to "ban" the icewm package from my appliance.
Addressing Conflicts
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.
Software 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.
Solve 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.
Software Recommendations
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.
Configuration Options
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.
Tweaking Appearance
I could also make some adjustments to the appearance of my appliance.
End User License Agreement
SUSE Studio offered to tack multiple EULAs onto my appliance.
Configure MySQL
SUSE Studio includes a handy option for pre-populating MySQL databases and for configuring users and permissions.
Auto-Start Options
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.
Storage and Memory Options
For appliance images destined for Xen or VMware hosts, SUSE Studio offered an option for setting RAM and storage sizes.
Build and Boot Scripts
SUSE Studio provides a facility for adding post-build and boot-time scripts to its appliances.