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

Re: Call For Articles

Ingo Ruhnke wrote:

> I thought about unpacking the rpm (rpm2cpio or so), patching it and
> than repack it. But of course that is not really something I want to
> do. Reloading the new rpm would be much simpler.

It's an idea, but I don't know... I guess reloading the whole RPM is the
only thing we can do with RPMs.

One thing I could do maybe would be make a .src.rpm that would (as part
of the "build" script) get the original files, copy them to a temporary
place (like the RPM build root) and patch them there, thus creating the
newer RPM package from the currently installed package. I think there is
a single command that can compile a source RPM into a binary RPM and
install it, yes?

> > Personally, I don't like that much... This has to be "user friendly"...
> > I was thinking about something in the lines of the Netscape Communicator
> > installation, with everything it does documented in a file, so that
> > hackers (and RPM builders) can do it by hand and simple users can have
> > it easy.
> The problem is that this will only work with CD-Rom distribution, on
> the Internet that is probably worthless. Since the install script
> would be have to be downloaded seperatly, that would cause that some
> would forget to download it, other download it to another directory
> that the tar.gz file and at the end it will not work. The other way
> would be to include the install script in the tar.gz file, but thats
> totally useless, until the install script will do some more than just
> extracting the data, since thats already done by the user.
> But of course for a CDRom distribution that would be useful and
> wouldn't cause much trouble.

Netscape puts each module in a tar file (not compressed, that would be
useless), and put the install script along with the modules into a
tar.gz file. The script would find the right place to install and create
directories appropriately. For example, while the default prefix could
be /usr/local, the user could specify a different one, and if it
includes the name of the package (or have an option), it would "flatten"
the distribution in a single directory.

I also intend on including an RPM spec file in the tar.gz so that a user
could convert it easily to an RPM by himself.

Pierre Phaneuf
Ludus Design, http://ludusdesign.com/
"First they ignore you. Then they laugh at you.
Then they fight you. Then you win." -- Gandhi