Re: Bootstrapping an RPM area.

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

 




On May 24, 2006, at 12:11 PM, Steve Juranich wrote:

Jeff Johnson wrote:

Nope no documentation and no vendor that I'm aware of has chosen to
pick up the sysinfo functionality,
mainly because on a system that is entirely managed by rpm there is
no need to add additional provides
from system configuration.

On Solaris and other non-linux systems, or any system with other
means than rpm to install software,
additional provides can be specified in the file /etc/rp[m/sysinfo,
one per line, same format as rpm -q --provides.

The alternative means to supply dependencies, using a virtual
package, turns out to be too stiff for most users afaict.
So adding provides through /etc/rpm/sysinfo has been rescusitated
(rpm-2.x used to have this functionality)\ instead.

Okay, so after doing a little examination of the output of rpm -- showrc, it
looks like I can redefine %{_rpmds_sysinfo_path} to point to some more
reasonable area (since the only thing I'm really guaranteed about any of these systems that I'll be building on is that I won't have root access).

So if I've got an rpm binary in /local/rpm-area/bin/rpm, then I can put the
following line in my .rpmmacros:

%_rpmds_sysinfo_path /local/rpm-area/etc/rpm/sysinfo

Then start populating /local/rpm-area/etc/rpm/sysinfo with what the system
provides, then I should be good to go.

Does this sound about right?


Yep.

If you're using rpm-4.4.6 or later, you will find that every file now generates a dependency on its parent directory. Since there has never been a clear and coherent packaging
policy other than
If a package "owns" every file in a directory, then it should "own" the directory too.

That policy has diddly to say about what owns directories that are shared amongst packages,
so many i18n directories are currently "unowned".

There are also some fairly egregious packaging problems regarding directory ownership in (just to mention the 2 that I remember best) FCn ruby and mozilla. The FCn vim package
has problems as well.

The fix for the dependency failures from unowned (i.e. not included in *ANY* package) directories is to add a line to /etc/rpm/sysinfo for the directory until vendors start fixing
their rpm packaging.

FWIW, rpm-4.4.7 is adding a similar dependency for every symlink on its target which is going to be A Good Thing for -devel package dependencies which try to include
the symlinks generated by ldconfig within packaging.

Oh yeah, there's a moderately severe memory leak in rpm-4.4.6 for the parent directory dependencies. FIxed in rpm-4.4.7, and the memory leak can certainly be lived with while you are installing 10-20 package transactions, not true for 500-700 package transactions.

73 de Jeff

_______________________________________________
Rpm-list mailing list
Rpm-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/rpm-list

[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