Easily build Portfiles from ruby gems
Paul Guyot
pguyot at kallisys.net
Mon Nov 6 13:57:31 PST 2006
Le 7 nov. 06 à 01:00, James Berry a écrit :
> Hey Paul,
>
> On Nov 6, 2006, at 6:40 AM, Paul Guyot wrote:
>
>> In both cases, it creates a new directory, rb-gem_name, with the
>> Portfile in it. Please note that this portfile uses the new
>> rubyforge_gem fetch syntax (available with the ruby group
>> modification I just committed to the svn repository). The second
>> version will download the gem in the current directory. I need the
>> file to be able to compute the checksums. Besides, if several gems
>> exist and some of them are binaries, it will ask you to choose a
>> version (using the native gem mechanism).
>
> Looks great! I think this is a good step forward. The gem issues
> were getting a bit weird. This will help MacPorts really shine as a
> source for ruby software.
>
>> This script requires gems (sudo port install rb-rubygems).
>>
>> With such a script, there's no reason to continue to use gem to
>> install ruby gems. Using gem may yield in inconsistencies. I know
>> that most ruby tutorial around say: get ruby with darwinports,
>> then use gem. But I strongly disagree. At some point, we may
>> rename gem binary and put a fake one that displays a warning message.
>
> Question: does it make sense to now make the gem software installed
> by MacPorts actually install gems into the "usual" location rather
> that in /opt/local? That would mean that MacPorts can source gem,
> but gem installs gems in a typical fashion, not intermingling them
> into /opt/local, which I think would complete the separation.
I'm not sure I understand what you mean by the "usual" location.
/opt/local/bin/gem installs stuff in /opt/local
/opt/local/bin/port also does, when it uses gem and when it doesn't.
Technically, the only difference when using a port based on the new
script and gem is that with a port:
- you can deactivate the port.
- the files are registered in MacPorts database (filemap).
Otherwise, the files are at the same place.
Paul
--
Ministre ultraplénipotentiaire en disponibilité.
Mobile. Sans baignoire fixe.
http://www.kallisys.com/
http://www-poleia.lip6.fr/~guyot/
More information about the macports-dev
mailing list