From d51dd7f5188cf0607755164c6b8720278bb07066 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Fri, 24 Oct 2014 15:19:24 -0200 Subject: Adding debian.pp --- ruby.md | 101 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 93 insertions(+), 8 deletions(-) (limited to 'ruby.md') diff --git a/ruby.md b/ruby.md index f53b375..077aedc 100644 --- a/ruby.md +++ b/ruby.md @@ -6,7 +6,7 @@ See [this](https://wiki.debian.org/Teams/Ruby/Packaging). Example: packaging leap_cli and dependencies -------------------------------------------- -First, in a *fresh* vagrant box: +First, in a *fresh* vagrant box with *sid* and *testing* in the `sources.list`: sudo apt-get install rubygems gem2deb sudo gem install leap_cli @@ -15,6 +15,36 @@ Then we get the dependencies and build all packages: dependencies=" `gem list | cut -d '(' -f 1` " +Which currently gives us the following result: + +* activemodel +* activesupport +* base32 +* blockenspiel +* builder +* capistrano +* colored +* command_line_reporter +* gli +* gpgme +* highline +* i18n +* json +* json_pure +* leap_cli +* mini_portile +* minitest +* net-scp +* net-sftp +* net-ssh +* net-ssh-gateway +* paint +* tee +* thread_safe +* tzinfo +* versionomy +* ya2yaml + Gem cleanup: sudo gem uninstall $dependencies @@ -23,17 +53,72 @@ Check existing dependencies: for item in $dependencies; do package=ruby-"`echo $item | sed -e 's/_/-/'`" - - if apt-cache search $package &> /dev/null; then - packages="$packages $package" - dependencies=$(echo $dependencies | sed -e "s/ $package //") - sudo apt-get install $package - fi + packages="$packages $packages" done + apt-get install --dry-run $packages + +Then: + +* Check for non-existing packages. +* Try different package names. +* Update your list of existing packages. + +In this example, that gives us the following already ported dependencies: + +* capistrano +* ruby-activemodel +* ruby-activesupport +* ruby-base32 +* ruby-blockenspiel +* ruby-builder +* ruby-colored +* ruby-command-line-reporter +* ruby-gli +* ruby-gpgme +* ruby-highline +* ruby-i18n +* ruby-json +* ruby-json-pure +* ruby-leap-cli +* ruby-mini-portile +* ruby-minitest +* ruby-net-scp +* ruby-net-sftp +* ruby-net-ssh +* ruby-net-ssh-gateway +* ruby-paint +* ruby-tee +* ruby-thread-safe +* ruby-tzinfo +* ruby-versionomy +* ruby-ya2yaml + +That means the following gems need to be packaged: + +* base32 +* command_line_reporter +* gli +* json_pure +* leap_cli +* mini_portile +* tee +* ya2yaml + +In summary, we need to port the following packages: + +* ruby-base32 +* ruby-command-line-reporter +* ruby-gli +* ruby-json-pure +* ruby-leap-cli +* ruby-mini-portile +* ruby-tee +* ruby-ya2yaml + Build remaining packages: - for gem in $dependencies; do + for gem in $gems; do gem2deb $gem done -- cgit v1.2.3