Red Hat Bugzilla – Bug 52742
%postinstall scriptlet fails if /usr is mounted ro
Last modified: 2015-03-04 20:09:41 EST
Description of Problem:
When having /usr mounted read-only (and put into rpms %_netsharedpath), the
%postinstall scriptlet fails. This leads to duplicate entries in the
$ rpm -q guile
See bug #51193 also.
Version-Release number of selected component (if applicable):
guile-1.3.4-15 (-14 also)
Steps to Reproduce:
1. mount /usr read-only
2. rpm -U --eval '%define _netsharedpath /usr' guile-1.3.4-15.i386.rpm
ERROR: In procedure open-file:
ERROR: No such file or directory: "/usr/share/guile/slib/mklibcat"
Fehler: execution of %post scriptlet from guile-1.3.4-15 failed, exit status 2
Message is misleading; strace tells:
$ strace -eopen /usr/bin/guile -c "(use-modules (ice-9 slib)) (require
open("/usr/share/guile/slibcat", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 EROFS
(Read-only file system)
OK, fixed in:
It needs also umb-scheme to be updated (as that one contains the 'original'
The one included by umb-scheme doesn't need to be processed by guile anymore to
Hope this fixes your problems.
But keep in mind that if some package adds any modules in slib then slibcat will
be regenerated by guile and might fail in /usr is read-only.
Granted, the slibcat file should probably then go to /var whatever, but that's
something perhaps for a future fix.
Read ya, Phil