[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [RPM] Re: [rpm] Re: rpm & ssh Prior life: [rpm] Re: Using URL in Source/Patch?



On Thu, Feb 15, 2001 at 09:58:58AM -0800, Thornton Prime wrote:
> 
> On Thu, 15 Feb 2001, Jeff Johnson wrote:
> 
> > OK, let's take a few of these deas point by point:
> >
> > 1) "API"
> > 	rpmio is just such an API ...
> 
> It is, but it currently doesn't support loading other protocols, does it?
> 

As I said, dlopen is *easy* ...

> > 2) "plug-in"
> > 	... dlopen is *easy*, the problem is ...
> 
> dlopen is nice, but being able to write a shell script that handled all
> URIs of a specified prefix would be very cool. As long as the shell
> understood and accepted the right args correctly, one could ewrite a shell
> script that handled any protocol.
> 

Yes, shell scripts are very nice. In fact, that's how --freshen was originally
(and very wisely IMHO) implemented in rpm using popt glue to pre-filter
arguments given on the command line in order to implement the simplest possible
install policy
	Don't install a package if not already instal;ed, or if a
	newer version is already installed.

Rpm can still be extended in this fashion anytime someone chose to do so,
it's not very hard. Try doing

	cat << GO_SYSIN_DD > /usr/lib/rpm/toyscript.sh
	#!/bin/sh
	echo "toyscript: args $*"
	GO_SYSIN_DD

	cat << GO_SYSIN_DD > /etc/popt
	rpm exec --toyscript	toyscript
	GO_SYSIN_DD

and then invoke rpm as
	rpm -Uvv --toyscript <URL's here>

and then sit down and think a bit (please, no offense intended, I'm just
advocating:-)

> >
> > 2a)
> > 	... rpm *must* be able to run in empty chroot's, as that's the
> > 	environment during an install. Read: Unlike most apps,
> > 	rpm can't easily use other libraries.
> 
> That is a serious problem.
> 

<grin>

And I haven't even told you that rpmlib is LGPL, so that even GPL code
is often poison, but let's not go there, licensing is tedious.

> > 3) "do its work"
> > 	And that's the heart of the matter. Should rpm be narrowly
> > 	focussed on "package management", and, hence, not have any
> > 	support for network transport? Or ...
> >
> > What is the proper "work" of rpm anyways?
> 
> I kinda hoped you knew the answer to that one.

I kinda hoped for some help in defining the proper role of rpm, as the
lack of answer to the question I put forward

	Should rpm support *any* protocol at all?

is stopping me from, for example, attempting to solve

	The Problem Of Apt

(i.e. resolving dependencies to form a complete transaction set) from the
rpm command line.

73 de Jeff

-- 
Jeff Johnson	ARS N3NPQ
jbj@jbj.org	(jbj@redhat.com)
Chapel Hill, NC





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []