Bug 1069224 - java-1.7.0-openjdk: Package is not installable unless bash is installed first
Summary: java-1.7.0-openjdk: Package is not installable unless bash is installed first
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: java-1.7.0-openjdk
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: jiri vanek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-02-24 13:48 UTC by Mikolaj Izdebski
Modified: 2014-02-27 11:27 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-02-27 11:27:56 UTC


Attachments (Terms of Use)

Description Mikolaj Izdebski 2014-02-24 13:48:26 UTC
Description of problem:
java-1.7.0-openjdk has %pretrans scriplet written bash.  This causes installation to fail because if bash is not installed before transaction execution starts.

According to packaging guidelines all %pretrans scriplets must be written in lua. See: https://fedoraproject.org/wiki/Packaging:Guidelines#The_.25pretrans_scriptlet

Version-Release number of selected component (if applicable):
1.7.0.60-2.5.0.4.pre02

Comment 1 Mikolaj Izdebski 2014-02-24 14:00:07 UTC
Reproducer:
rm -rf /tmp/chroot
yum --disablerepo \* --enablerepo rawhide --installroot /tmp/chroot install java-1.7.0-openjdk

Result:
Running transaction check
ERROR with transaction check vs depsolve:
/bin/sh is needed by java-1.7.0-openjdk-1:1.7.0.60-2.5.0.4.pre02.fc21.x86_64

Comment 2 Stanislav Ochotnicky 2014-02-24 14:03:45 UTC
I'd also like to point out that I warned this would happen if you'd write pretrans in anything but lua: https://bugzilla.redhat.com/show_bug.cgi?id=1038092#c23

Comment 3 jiri vanek 2014-02-24 15:15:58 UTC
Can this RPM lua  copy files? I can see only dir listing and creating:  http://www.rpm.org/wiki/PackagerDocs/RpmLua#AvailableLuaextensionsinRPM

Comment 4 jiri vanek 2014-02-24 15:16:28 UTC
Ou, there is exec :) What about exec bin/sh?

Comment 5 Mikolaj Izdebski 2014-02-24 15:24:35 UTC
Possibly there is nothing installed (not even shell) at time pretrans is ran.  But I think in this case you don't need to to anything and you can ignore exec failure.

Comment 6 Bruno Wolff III 2014-02-25 18:39:06 UTC
Note this error is breaking the nightly live composes for live images using this package.

Comment 7 jiri vanek 2014-02-27 11:27:56 UTC
The scriplet was removed
http://pkgs.fedoraproject.org/cgit/java-1.7.0-openjdk.git/commit/?id=3b33b8e7667bee3abc5a487aab9ab6f81452e9a4
http://koji.fedoraproject.org/koji/taskinfo?taskID=6576309

Will be repalced by lua + exec(cp) later or by whatever...


Note You need to log in before you can comment on or make changes to this bug.