summaryrefslogtreecommitdiff
path: root/ruby.md
diff options
context:
space:
mode:
Diffstat (limited to 'ruby.md')
-rw-r--r--ruby.md35
1 files changed, 32 insertions, 3 deletions
diff --git a/ruby.md b/ruby.md
index 0433f89..f53b375 100644
--- a/ruby.md
+++ b/ruby.md
@@ -13,19 +13,48 @@ First, in a *fresh* vagrant box:
Then we get the dependencies and build all packages:
- dependencies="`gem list | cut -d '(' -f 1`"
+ dependencies=" `gem list | cut -d '(' -f 1` "
+
+Gem cleanup:
+
+ sudo gem uninstall $dependencies
+
+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
+ done
+
+Build remaining packages:
for gem in $dependencies; do
gem2deb $gem
done
-Cleanup:
+Report:
- sudo gem uninstall $dependencies
+ echo "Existing debian dependencies: $packages"
+ echo "New packages : $dependencies"
+
+Test:
+
+ sudo dpkg -i *deb
+
+Deb cleanup:
+
+ sudo dpkg -r $dependencies
Additional steps:
+* Backport existing dependencies if needed.
* Fix `debian/control` and other FIXME's on each package.
* Put `debian/` folder in a `debian` branch on each source.
* [Review the code](https://manual.sarava.org/specs/code/).
+* Automate building with pbuilder.
* Upstream pull requests.