On Wed, Oct 25, 2023 at 4:23 PM Vít Ondruch <vondruch@redhat.com> wrote:
Exploring possibilities to better organize gems, I have just discovered
a `--vendor` option (after almost 10 years of existence of this flag


$ gem install gem2rpm --vendor --no-user-install
Fetching gem2rpm-1.0.2.gem
ERROR:  While executing gem ... (Errno::EACCES)
     Permission denied @ dir_s_mkdir - /usr/share/ruby/vendor_ruby/gems
     /usr/share/ruby/fileutils.rb:406:in `mkdir'

... snip ...


This option apparently tries to install gems into
`/usr/share/ruby/vendor_ruby/gems` and I wonder, isn't this location we
should be using for gems distributed by Fedora? The main advantage is
that we would not be mixing default/bundled gems with ours. The downside
is that it probably does not support binary extensions out of the box.


One more note:

Packaging guidelines say that the directory is for non-gem packages only. Furthermore, it says gems in `/usr/share/gems` can be shared across all ruby implementations, those `gems` in vendor directories can't. Is this the reason why binary extensions wouldn't be supported? Looking at the other `vendor` paths, it looks ok: