Phusion white papers Phusion overview

Phusion Blog

DebGem now supports x86 Debian Etch

By Hongli Lai on January 7th, 2009

What’s new?

Yesterday we launched DebGem, our RubyGems-to-Apt conversion service. As well as receiving a lot of heartwarming reactions, we’ve also received a lot of constructive criticism for which we’re deeply thankful as we believe they will help us improve this service even more. DebGem is currently in free public beta.

Here’s a summary of what we’ve improved and fixed since yesterday:

Support for gems with native extensions on x86 Debian 4.0 (Etch)
Yesterday, we only supported gems with native extensions on x86 Ubuntu 8.04. Today, we also support x86 Debian 4.0! The list of supported platforms and distributions is quickly moving forward.
Fixed reported disk space usage
The disk space usage reported by apt-get was incorrect. For example, installing Ruby on Rails 2.2.2 only requires 19 MB of disk space, but apt-get reports 204 MB of required disk space. This has been fixed.
Fixed packaging of various gems
We’ve fixed packages for the “tracker” gem and the “prawn” gem. “tracker” (the Ruby time tracking software) is conflicting with “tracker” (the metadata indexer, as provided by Debian proper’s repository), so we’ve renamed this to “rubytracker”. “prawn” wasn’t being generated correctly, which we’ve fixed.

These improvements are possible because of useful feedback from our users. Thank you, and please keep the feedback coming! We are dedicated to providing high-quality packaging.

What are the advantages of DebGem over RubyGems?

  • If you’re setting up a new server, then DebGem is easier to setup than RubyGems. RubyGems needs to be installed from source, but before that, you need to install the correct Ruby programs, libraries and build tools by hand. Installing DebGem just involves adding an Apt source.
  • Debian packages integrate better into the system. Gems cannot handle native dependencies. For example, if you install the RMagick gem, then RubyGems won’t install ImageMagick for you. The DebGem Debian packages do, so installing an arbitrary Ruby library just involves a single command.
  • Security: the DebGem Apt repository is PGP-signed, making it less vulnerable to man-in-the-middle network attacks.
  • Debian system administrators are typically very skilled with Apt, but less so with RubyGems. Debian system administrators who are skilled with RubyGems are not as easy to find. RubyGems can be taught, but a typical Debian system administrator is likely to make less mistakes if he only has to deal with Apt, a tool he/she is already intimately familiar with.

What features does a paid subscription bring?

A paid subscription allows you access to over 25,000 Debian packaged gems. These gems continue to enjoy the greatest care of our staff to ensure everything is working properly during their life cycle. This requires constant fine-tuning, testing and maintenance over all these gems, which is by no means trivial. This is hard, tedious and error-prone work which not only requires packaging skills but also knowledge of the Debian operating system. Even though Debian proper’s volunteers do a great job in maintaining Debian packages, these packages aren’t always up to date and not everything is packaged. By providing this as a paid service, we’ve taken up the task of delivering the latest versions of these gems ready to use. In essence, this should take away all the packaging pains from you, allowing you to concentrate on your core business instead.

Note that we only charge for making use of this service and not the software made available through the packages.

I am concerned about compatibility. What if my app assumes that libraries are installed through RubyGems? Will I experience “dependency hell”?

DebGem packages register themselves as gems, so that everything will continue to work just as if the libraries were installed as gems. So in short, no you should not experience “dependency hell” 😉

Package xxx doesn’t work.

Please tell us about it! We are fully committed to providing high-quality packages that integrate well into the system. There are about 25000 gems so we haven’t been able to test all of them, but it is for this reason why DebGem is currently in public beta. If something doesn’t seem to work properly, please notify us and we’ll fix it for you.

We hope that this post answers some of your questions. Please keep posting, we’re eager to hear your comments and criticism!