[arch-general] Ruby gem packages in Arch

Maxime Gauduin alucryd at gmail.com
Tue Jan 14 17:57:40 EST 2014


On Tue, Jan 14, 2014 at 11:04 AM, Paul Gideon Dann <pdgiddie at gmail.com>wrote:

> On Monday 13 Jan 2014 17:58:59 Maxime Gauduin wrote:
> > I only use a few ruby packages. However, you said it yourself, ruby and
> > pacman both have different uses, my point was: do not change the content
> of
> > a dir managed by pacman, do so elsewhere. I'm not saying you shouldn't
> ever
> > use both. In the end, we're free to do anything we want, I just think it
> is
> > bad practice to mix things up like described above. In extreme cases,
> just
> > have a look at Windows, where anybody can install anything anywhere, we
> all
> > know what it ends up like :P
>
> What worries me about this is that you're making a clear distinction
> between "users" and
> "developers".  I'm not convinced that is really consistent with the Arch
> Way, which I have
> always admired because it expects that the line between users and
> developers is blurry,
> and actively encourages users to experiment and cross over.  The idea of
> needing to
> "switch" to ruby's (purpose-built) method of handling gems when a user
> wants to achieve
> "developer" status seems wrong to me.
>
> The Arch Way is not about encouraging you to be a developer, it is about
leaving all the tools in your hands so that you can decide what you want to
do with them. I don't have a problem making a distinction between users and
developers, and clearly you are not dealing with users on a daily basis if
you can't do the same :P I don't consider myself a developer, but I still
make the most out of Arch Linux in my own way, which is, the Arch Way.
There is no "typical" Arch user/developer, each person uses it differently
for their own purpose, be it a server, home media center, gaming rig or a
ruby hacking machine.


> And for what?
>
> sudo pacman -S ruby-json
> sudo pacman -R ruby-json
>
> instead of:
>
> sudo gem install json
> sudo gem uninstall json
>
> It doesn't seem worth it to me.  The commands can easily be documented in
> the wiki, and
> then the bar is lowered that tiny bit more for hacking something together
> in Ruby.  Bear in
> mind that rubygems doesn't spread files all over the system, either.
>  They're kept neatly
> tucked out of the way in /usr/lib/ruby, except for a few wrappers that end
> up in /usr/bin so
> that they're in the PATH.
>
> Paul
>

It seems to me (maybe I'm wrong, but that's how it feels) you wish to force
people to use rubygem instead of pacman, but I say it is not necessary if
pacman is sufficient for their need. If you feel the need to do so, and I'm
sure other people do, I'm just stating that in my opinion it is bad
practice to interfere with pacman's ecosystem via another package manager,
all the more if you give it root permissions. Now I understand you have a
need for root permissions, and I won't insist , but keep in mind that gems
can be installed anywhere outside pacman's jurisdiction and still be run as
root. I know rubygem is not messy at all, I'm using it to repackage gems
for pacman, still I think it is a good idea for most people to point it to
a safe directory, and you always have the possibility to add the relevant
dir to your PATH.

As for multiple versions, the root of all evil is that there are too many
gems that are not updated to support the latest version of a gem. Pacman
does not have to deal with that because we make sure packages are always
compatible with the latest and greatest, by submitting patches and/or bug
reports upstream. That's one of the 2 reasons why rubygem can be a better
choice for advanced ruby users, the other being the effort needed to
repackage gems (which is not much, unless you have hundreds of them).

Now I feel this discussion has dragged out for too long, and I believe I've
made my point several times already, so I will take my leave and go back to
my cave to geek to my heart's content :P

Cheers,
-- 
Maxime


More information about the arch-general mailing list