On May 19, 2006, at 9:44 AM, Todd Tomaino wrote:
Hi,
I would like to install an rpm from within another rpm.
After some searching, I found information in the following thread:
"install rpm within an rpm package pre or post install?"
http://www.redhat.com/archives/rpm-list/2004-November/msg00020.html
Jeff Johnson wrote:
Even then it's caveat emptor, I believe I'm the only one who has
tried
to do what I call "package bundles", i.e. executing rpm -Uvh in %post
and rpm -evh in %preun for some manifest of *.rpm's within a package
bundle.
When I add the rpm install in %post and attempt to install I get the
following error:
warning: waiting for transaction lock
error: can't create transaction lock
One way to avoid this is by executing "rm /var/lock/rpm/
transaction" in
%post prior to installing the rpm. However, removing the transaction
lock was not discussed in the thread I mentioned, and seems like a bad
practise.
Is this an acceptable method?
Quite acceptable to achieve your goal.
The Berkeley DB locks are quite adequate to protect the database for
all but the most
pathological problems, like multiple simultaneous installs of
identical packages, which almost
never happens with current rpm usage.
Even with potential collisions, the damage is minimal, detectable,
and easily corrected.
Is there a better way to solve this problem?
The global transaction lock is default off in 4.4.7 and later.
73 de Jeff
_______________________________________________
Rpm-list mailing list
Rpm-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/rpm-list