On 7/17/07, Luis Lavena <[EMAIL PROTECTED]> wrote:
> On 7/17/07, Isaac Dupree <[EMAIL PROTECTED]> wrote:
> > [EMAIL PROTECTED] wrote:
> > > On 7/17/07, Michael Homer <[EMAIL PROTECTED]> wrote:
> > >> On 7/17/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > >>> A very vague thought: maybe what we need is a way to "talk" to other
> > >>> package managers, to have a bridge between our management/dependency
> > >>> system, and theirs. Perhaps implemented as a plugin-like system.
> > >>> Thinking out loud:
> > >>>
> > >>> If a dependency in the Dependencies file is named something like:
> > >>> RubyGems-rubyqt then it means it will be handled by the RubyGems
> > >>> plugin. The plugin script will respond to some minimal set of
> > >>> operations such as "is_installed", "install", "remove". Plugins would
> > >>> be written for those external managers. There wouldn't be recipes for
> > >>> each gem, or for each rock. A dependency like "LuaRocks-luasocket >=
> > >>> 2.0" would just call the LuaRocks plugin and the plugin would
> > >>> query/install LuaSocket using LuaRocks. We would need standard
> > >>> locations for these separate trees; I'm at a blank wrt this
> > >>> (/Files/LuaRocks/ would be the cowardly escape). A directory for ROX
> > >>> appdirs could fit into this scheme as well. Again, it is all still
> > >>> very vague in my head.
> > >> That works for me. I like it a lot, in fact. It's flexible and it's
> > >
> > > Yeah, I feel quite good about it too (and I loved Carlo's suggestion
> > > of /System/Aliens/ :) ).
> >
> > I don't want to lose versioning for them totally. (inventing things)
> > Suppose we have /System/Aliens/LuaRocks and I want to try out some new
> > "LuaRocks 2.0" reimplementation.  Or suppose I want to maintain multiple
> > sets of debian packages for different debian versions.  Hmm, these
> > aren't very compelling examples - maybe it's not necessary.  I guess we
> > would want to make each subsystem as a whole 'rm -rf'-able anyway,
> > deleting all the packages it contained as well as any centralized
> > database of them required by the system.
> >
> > The naming scheme... "RubyGems-rubyqt" would look like any other program
> > name, should there be some more distinctive punctuation like
> > "RubyGems:rubyqt" (... _is_ that more distinctive?)?  Also I think we
> > will have to provide partial dependency files when a system package is
> > required (e.g. I'm assuming rubyqt requires some version of Qt to be
> > installed), since the ruby "gems" system can't know what we call our
> > _packages_ even if it knows it requires a file like /usr/include/qt.h
> > (or a .so file, etc.).
> >
> >
>
> I'm coming late to this thread, but what we are talking about is
> repackage another packager (rubygems)... something like Debian, which
> makes life too difficult to everyone, even maintainers.
>
> Will be simpler if you check the documentation of a gem, and see the
> requirements there (eg. readme).
>
> Repackage gems as "programs" of Gobo raises other issues, like loading
> path for Rubygems (the require overwrite)...
>
> I'll prefer stay simple instead. Like I commented a few months back,
> set Rubygems to install gems globally (Env GEM_PATH to /Files/Gems or
> something)
>
> if not, we will fall in the maintenance hell that debian packages suffer.
>
> Just my 2 cents :)

Yes, the whole project of alien packages is to avoid that problem. We
don't want to repackage stuff; we're designing a protocol of sorts to
make the two managers talk. The plan is to set GEM_PATH to
/System/Aliens/RubyGems and to make some scripts that will provide a
bridge allowing GoboLinux recipes to request gems to be installed via
rubygems when they're dependencies to a application.

-- Hisham
_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to