Header-only RPM

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

 



Hello everyone,

I need to register software that was not installed with rpm with the
RPM database.
The current way I am doing this is by building a binary RPM that
specifies the files already installed and then doing rpm -i --justdb.

If the installed program is very big, then creating the RPM takes a
long time. With the --justdb option, I can register an RPM, even if it
is missing the payload. So I was thinking if it is possible to create
a "header-only" rpm, without including the actual file payload. As an
alternative, I have also googled about a rpmspec tool that is supposed
to help register files with the rpm database. Since you have much more
experience than I do with RPMs, I would appreaciate your advice on the
following :

a) Is there a command line tool or command line options to rpm to
allow me to do that ?
b) If not, what would be the steps to do this programmatically ?
Should I use rpmlib directly, libredcarpet ?
c) Any advice on which RPM version to target or what should I take
into account/avoid to make this work in as many RPM-based distros as
possible ?

Note:
I have looked into CheckInstall, and other open source tools, but
internally they call the command-line rpm tool to build a full
package. I have also taken a look at the RPM specification itself and
thought about implementing my own tool, but I am worried about
compatibility issues between different versions of RPM. That is why I
am thinking about using libredcarpet or some other "abstraction
layer". I am also worried about writing a program that manipulates the
rpm database directly and accidentally corrupting it, that is why I
think it would be safer to just create the header-only RPM and then
install that with --justdb

Thanks in advance for any help or advice you can provide!

Daniel


[Index of Archives]     [RPM Ecosystem]     [Linux Kernel]     [Red Hat Install]     [PAM]     [Red Hat Watch]     [Red Hat Development]     [Red Hat]     [Gimp]     [Yosemite News]     [IETF Discussion]

  Powered by Linux