FW: Smart Package Manager

Gustavo Niemeyer gustavo at niemeyer.net
Sun Apr 1 16:04:06 PDT 2007


Hey again Rehan,

> Hope you are not upset with my long list of suggestions :-( They were

Not at all.


> just some thoughts that occurred to me while I was working with Smart.
> Some feedback would be appreciated :-)

Good timing.. I've answered your mail yesterday, but you should get
it today (for some value of "today") as I've only managed to send
the outbound queue a few hours ago.


> As part of the Trixboxtools project I am working towards multiple Linux
> version compatibility. Centos and Fedora were relatively easy as they
> are based on RPM and Yum repositories. Debian and others are more
> challenging. This is where Smart comes in....
>
> One of the issues I am contending with is the RPM's that don't
> 'naturally' live in yum repositories. These are things like perl modules
> and php-PEAR modules. These kinds of software natively live in their own
> repositories - perl has CPAN, php-PEAR has something similar to CPAN.
> The issue is that some perl modules have been created as RPM's and some
> need to be retrieved from CPAN. The list of perl modules supported in
> Centos as RPM's is very different to those from the list supported in
> Fedora Core 6. One could say that in these situations just get it all
> from CPAN. However when a packager converts a CPAN module they take care
> of many build time dependancies which are not needed at run-time so it
> is preferable to use the RPM if it exists and then retrieve from CPAN if
> it doesn't.

This reminds of a toy project a friend of mine (Arnaldo "acme"
Carvalho de Melo) wrote at Conectiva.  He made a system to handle
individual kernel modules as packages, since they have dependency
information embedded on them as well.  Seems somewhat similar to
what you're trying to do.  Certainly feasible, but you'll probably
find information in "improper" places for the job.


> A repository like CPAN is very different to a YUM repository and also
> does things very differently. Do you think these types of repository
> might be candidates for smart backend repositories? If it is possible
> then Smart can become much more of a universal package manager. Really
> heads above anything else that is out there. I am working on some
> scripts that get around these issues but they have to be hand crafted
> for each distro I support.
>
> I realise that I am asking for something that I need right now but I
> think if a solution can be found then RPM/Yum repository maintainers can
> stop porting CPAN modules to RPM and just use the native CPAN
> repositories.
>
> Unfortunately although I might come up with lots of crazy ideas I am
> limited in my ability to implement them. I am not a natural programmer

Welcome to my world. :-)   I probably am a natural programmer depending
on what you mean by it, and I have an IDEAS file where I occasionally
dump crazy things I'd be interested in getting into at some point.
You know what?  I've never managed to get a single line out of that
file (except for the few stupid ideas that are blown away on the
second review).


> (although I do my best) and I don't know Python at all. If you choose
> to implement any of these ideas I will do whatever I can to help
> however limited that might be.

I'm sure some of the ideas in your first mail will get integrated
over time.  About the CPAN thing I can't help much.  That requires
a lot of time to get through it properly, and may be a very
frustrating job at the end, since you'll find high barriers for
adoption.  I'd say that as long as you're doing it for fun, go
for it!  If it's something you intend to get people to actually
use it, breath deeply, and start your journey through distribution
politics.


-- 
Gustavo Niemeyer
http://niemeyer.net



More information about the Smart mailing list