[aur-general] Packaging ruby gems

Anatoly Bashmakov anatoly at posteo.net
Sun Aug 9 20:59:30 UTC 2020


Hello.

I need feedback on packaging ruby gems.

First, I don't think packaging every gem of the latest version makes a 
lot of sense. For development there are rvm/rbenv/etc that solve this 
problem. The only gems need to package (I think) are gems that are 
required by end-user applications. But such applications may require 
gems not of the latest versions. So, there are several options here.

1) Bundle dependencies in the application itself. I don't like this 
approach at all, since the package begins providing a lot of unnecessary 
gems.  Example: ruby-gollum-lib [1].

2) Package dependency gems only of versions required by the application. 
For example, gollum-lib gem requires loofah ~2.3 (which means >= 2.3 and 
< 2.4). The latest version of loofah is 2.6.0. So naming package 
ruby-loofah of version 2.3.1 for gollum-lib may entails rightly flagging 
it as out of date.

3) Packaging versioned gems. In previous example the package will be 
called ruby-loofah-2_3 (or something) and add "provides" in PKGBUILD. It 
is not forbidden by package guidelines (but not encouraged either) as 
far as I remember.

4) Not package ruby gems at all.

I don't like neither of these options, but I think packaging versioned 
gems is lesser evil.

What are your thoughts?

[1]: https://aur.archlinux.org/packages/ruby-gollum-lib/

-- 
Anatoly


More information about the aur-general mailing list