On Sat, Feb 17, 2001 at 02:21:34PM -0500, Jeff Johnson wrote: > After re-reading recent messages on rpm-list, I believe that I have > an answer to my question > > Should rpm have support for *any* protocols at all? > > The answer, AFAICT, is YES with the following (possible) reservations: I don't like the idea, but I see the need (old discussion). > 1) Protocol support should be "clean", "modular", "flexible", "extensible". agreed > So let's move this discussion on to design and implementation of protocol > support in rpm: > > 0) Is the freshen.sh popt magic extension well enough understood > and satisfactory for those who wish to implement protocol support > (and, implictly, dependency solvers) outside of rpm, but yet still > use their implementation to be accessed from an rpm command line? No.:-) > 1) Is the support for FTP/HTTP in rpmio viable? FTP, in particular, > has a rich and checkered (but well known) legacy, and the HTTP support > in rpmio is modest (no server redirects, etc). Viable, yes. > 2) What other protocols should be supported? Remember, I'm expecting > to need to support some sort of xdelta/rsync protocol Real Soon Now, > and I don't know any other way of doing that (at the moment) except > by implementing the protocol directly in rpm. The rationale is that > it's just too hard to rip off all the digital signature, compression, > and payload layers to get at the bits that need to be deltafied > from outside rpm without a very, very complicated API. Personally, I'd > rather just slam dunk an xdelta/rsync clone directly in rpm. > > LDAP? NFS? SSH? XML-RPC? RPC? RDIST? RCP? > Name your poison, I can sing that tune :-) You have that Proof Of Concept I sent you based on XML-RPC ... > I do point out that rpm should try as best as possible to remain a > "pure" client on an existing protocol implementation, I'm not yet > convinced that the time has come to write a "custom" protocol > implemented in, for example, /usr/sbin/rpmd, there's far too many > non-package management issues opened by that approach. I'm sorry to say, but rpm enabled apt is around. > 3) How should the protocols be used by rpm? I already know (but you may > not) that I need to be able to access an "index" remotely in order > to implement a dependency solver, I currently plan to use some > protocol to get at a remote rpm database. XML-RPC ... We all know the reason (firewalls). > 4) Where should URL's be permitted within rpm? Not having a mandate > for protocol suppport and without any reason to do otherwise, my > current answer is > Everywhere that a file path can be used in rpm. > although I can easily be persuaded of the Insanity of This Approach. > > FWIW, you might try using "file://" like URL's within the current > rpmio implementation to convince yourself that, indeed, I've > managed to drill URL support quite deeply (and quietly :-) into > rpm already. > > Opinions (and coders :-) welcomed. Jeff, if you want my humble opinion, what you need it libapt :-) []s -- Rodrigo Barbosa (morcego) - rodrigob at conectiva.com.br Conectiva R&D Team - http://distro.conectiva.com.br "Quis custodiet ipsos custodiet?" - http://www.conectiva.com
Attachment:
pgp00005.pgp
Description: PGP signature