HOWTO: Customized Live DVDs with Reconstructor's Web UI.

 in

I've been taking a Java programming course this semester at the local technical college, which has been a wonderful learning experience. The programming course uses the Eclipse 3.5.1 IDE along with the Java Development Toolkit for programming in Java. In addition to using Eclipse, I use Dropbox to save the source code and preferences from my home install of Eclipse, eliminating the need to carry a USB key or email/transfer the files through any other method. This Dropbox storage method also ensures that every machine I use has the latest version of source code files with minimal interaction and fuss on my part.

Screenshot-Reconstructor-Google-Chrome.png

The computer lab development machines have removable hard drives, and each machine is allocated one drive, loaded with Windows and Eclipse. Unfortunately, some of the drives/caddies have malfunctioned, so the hard drive is no longer an option for loading OSes and software during the class period for some of the lab computers.

The first week that I noticed this hard drive issue, I took out my trusty Ubuntu live CD and popped it in, followed by installing the programming environment and other packages of interest while still in the live environment. Luckily, I was there pretty early, as eclipse-jdt and the required packages were about 300 megs in downloads, which took about 20-30 minutes to download and configure on the school network. I'd rather not do that every week before class, so I started looking into straightforward distro customization utilities.

Enter, stage left: Reconstructor

screenshot4.png

What is Reconstructor, you ask? Well, it is a distribution customization toolkit based on Debian and Ubuntu, hosted by a company named Lumentica. Currently, custom distributions are available starting from Debian 5.0, Ubuntu 9.04, and Ubuntu 9.10. Shawn Powers wrote an article about Reconstructor in reference to creating a custom distribution/restore CD for his Eee PC some time ago.

Since the writing of Shawn's article, the Reconstructor project has since matured into a project with two separate subprojects:

This is very similar to the relationship between Kiwi and Suse Studio, a project which I will mention in more depth in a different article.

I would like to focus on the Reconstructor Web UI in this article, as the Web UI portion didn't exist the last time this project was mentioned at linuxjournal.com.

BUILDING A LIVE DVD IN RECONSTRUCTOR:

To start out, I went to build.reconstructor.org, created an account, and chose to start a new project.

screenshot1.png

The Reconstructor Build Engine currently allows you two different containers for your customized distros. Those options are Live CD/DVD and Disk Image. I chose Live CD/DVD, as that was the best option for my situation. I was also given several desktop environment choices, and I settled on Gnome.

reconstructor01.jpg

A variety of modules are available to customize your distribution at this point such as:

  • Changing the default background
  • Installing a new GDM theme
  • Updating the default icons
  • Setting the default Firefox Start Page.
  • Adding Ubuntu PPA repositories
  • Installing custom .deb files that you upload yourself.

Please read the Reconstructor User Guide to inform yourself on all of the available modules.

I didn't need anything too extravagant for my live DVD. I just wanted the most recent version of eclipse-jdt from the repositories. The process of locating and installing packages occurs in a pop up box within the web page. It allows you to select packages by section, or by simply entering the package name in the search field and clicking "Search".

screenshot7.png

After adding eclipse, I also added Frozen Bubble, as it is an enjoyable game. Using the "Gnome Wallpaper" module, I uploaded a custom wallpaper of Saturn during an eclipse.

screenshot9.png

I also attempted to install Dropbox from an uploaded deb file.

screenshot10.png

Reconstructor allows you to add additional members to your project for the purposes of collaborating on your project. I did not take advantage of this feature, but it could be a very intriguing feature for collaborative projects that are just getting their feet off the ground.

Reconstructor has a "Files" section which is appropriately named, as it is the area where you upload all of the files that you would like included in the live disk. The previously mentioned modules interact with the files that you upload. Upon first glance, there does not appear to be a very easy way to control where the files are placed, but one of the modules, titled "Install File", allows you to place your files in particular directories, if that is helpful.

screenshot12.png screenshot14.png

As my customizations were completed, it was time to build the distro, which is done by clicking the small

screenshot16.png

button, which has the mouseover text of "Build Project". The Web UI main menu does not include any text descriptions at this point- it has icons with mouseover text. After pressing the button, another pop-up box appears and asks if you wish to submit your project to the build queue.

screenshot15.png

You might have noticed that the upper right hand corner of your screen features an account balance, such as this one:

screenshot8.png

I'd like to explain the fees related to Reconstructor. Upon signing up for a free account, you are awarded five collars in free credit, placed in your account. As you perform actions, such as uploading files, building projects, and downloading the finished ISOs, money is deducted from your account. If you have used at least $4.75 of the previous credit at the end of the the month, the account is given an additional $5 credit. Per the Fees page, the costs of using the site are as follows:

  • Upload and store a project file: $0.02 per MB per month
  • Build a project: $0.30
  • Download a built project: $0.45 per GB
  • Priority build service: $5.00 (enabled for one month) Note: This charge is prorated based upon the remaining days in the month.

Project hosting is also available, and that has additional fees, as well:

  • File storage: $0.45 per GB per month
  • Download: $0.35

This seems like a pretty experimentation-friendly pricing structure. It allowed me to test out the service for free, and use it for free on a limited basis, but if I end up using it all of the time, I will have to pay money to do so. If you have any questions, check out the Fees page, their forums, IRC chat on the ##reconstructor channel on Freenode, or contact their support team directly via email at support(at)reconstructor.org.

As a warning, the builds that you make are only available for seven days. After that, you will have to rebuild the project, incurring additional build fees.

After finishing the build and downloading (a 938 meg download), I started up my brand new custom appliance.

screenshot17.png

As I expected, the background had been changed, and Eclipse was properly installed, with an appropriate menu item already present in my applications menu.

Dropbox, unfortunately, did not install correctly. There was no menu item, and the file did not appear to be installed.

screenshot18.png

This may be due to the multi-step setup process of Dropbox, which involves downloading a proprietary daemon after install. Installing Dropbox in the live environment isn't too painful, but it would have been nice to have it already set up when booting the disc.

Additional services

All I needed was one disc that I wanted to burn by myself. What if I needed a more professional looking distro, you ask? Lumentica has partnered with On-disk.com to provide you with the ability to have your creations on printed CDs or DVDs, USB flash drives, SD cards, or even on CompactFlash cards. Lumentica does also provide some additional services, as well, but their website is relatively light on the details. The website suggests that for further details, you contact them directly at info@lumentica.com or visit www.lumentica.com.

Conclusion

Reconstructor may have some rough edges, but it does offer some very convenient distro customization services. It allowed me to configure, download, and burn a custom Ubuntu 9.10 live DVD in a very limited amount of time, and I am thankful for that, as I can now code Java source code in the Eclipse IDE using Linux during class without having to make any sacrifices.

Given the rate Reconstructor's development, and the recent news that Lumintica is releasing the Reconstructor Engine as Open Source under the GPLv3 license, I expect this project to continue improving in quality and experience experience as time goes on. Reconstructor is a tool that I will continue to monitor, and will likely use again in the future. I encourage you to give it a try, as well! You might be glad that you did.

AttachmentSize
reconstructor01.jpg18.58 KB
screenshot1.png57.96 KB
screenshot4.png8.54 KB
screenshot7.png51.29 KB
screenshot8.png1.47 KB
screenshot9.png24.07 KB
screenshot10.png20 KB
screenshot12.png6.77 KB
screenshot14.png18.44 KB
screenshot15.png5.65 KB
screenshot16.png742 bytes
screenshot17.png282.99 KB
screenshot18.png5.56 KB
Screenshot-Reconstructor-Google-Chrome.png158.59 KB
______________________

Linux rocks! Personal blog: zootlinux.blogspot.com

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Are there other practical

Anonymous's picture

Are there other practical uses for this besides having a slick user interface on the web since this can all be done from command line and desktop UI tools such as Revisor.

Author's Comment- practical uses

Ross Larson's picture

Reconstructor hosts the building process, which allows multiple people to collaborate on a project. Also, the ability to send your project directly to on-disk.com allows the ability to quickly create professional looking Linux appliances for presentations and trade shows.
Because the build process is done online, you could complete the process from multiple different remote machines and download it to a machine other than the build machine without having to use ssh or any remote administration tools.

Linux rocks!
Personal blog: zootlinux.blogspot.com

Author's Comment

Ross Larson's picture

UCK does appear to be a good project, but not everyone wishes to do their customization from the command line on a local machine, and the goal of this article is to show people that it is possible to customize a Linux distro without touching the command line.

Also, Reconstructor features collaborative and publishing features that UCK does not.

Linux rocks!
Personal blog: zootlinux.blogspot.com

Why not UCK?

TGM's picture

If you're proficient with the command line, you can do all this with the Ubuntu Customization Kit. I recently rebuilt a Kubuntu disc to hold KDE4.4 (with the Kubuntu Backports PPA) and Medibuntu repository. I then dist-upgraded and installed all my basic packages and now have an instant restore ISO that worked perfectly. I imagine it'd handle dropbox nicely too.

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState