Bug 1022710

Summary: Calibre: unpacking of archive failed on file /usr/share/calibre/fonts/liberation: cpio: rename failed - Is a directory
Product: [openSUSE] openSUSE Distribution Reporter: Patrick Finie <maninredd>
Component: OtherAssignee: Cor Blom <cornelis>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: astieger, cornelis, jnweiger, Sascha.Manns
Version: Leap 42.2   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE 42.2   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Patrick Finie 2017-01-31 03:12:36 UTC
doing a DUP on multiple machines from 13.2 to 42.2.  I keep running into an issue on every machine with Calibre failing to install.

Installation of calibre-2.75.1-4.1 failed:
Error: Subprocess failed. Error: RPM failed: error: unpacking of archive failed on file /usr/share/calibre/fonts/liberation: cpio: rename failed - Is a directory
error: calibre-2.75.1-4.1.x86_64: install failed
error: calibre-1.48.0-1.2.x86_64: erase skipped

This is the only package that fails to install on multiple machines.  This is replicable on my end using 13.2 to 42.2 and zypper DUP after changing all the repositories to their leap equivalents.

https://en.opensuse.org/SDB:System_upgrade  Followed these instructions with a few changes.

sed -i 's,openSUSE_13\.2,openSUSE_Leap_42.2,g' /etc/zypp/repos.d/*

Changing the ones that fail to refresh to the most recent repository.

Manualy changing the update (non-oss and oss) and main (non-oss and oss) to the correct LEAP repos

Manualy changing the libdvdcss repo to the correct repo url.


Repositories that are causing the issue: http://download.opensuse.org/distribution/leap/42.2/repo/
Comment 1 Cor Blom 2017-01-31 10:16:05 UTC
This is probably caused by the fact that liberation was a directory in the 1.48 package on 13.2 and is now a symlink in the 2.75 package on Leap. For rpm such a change is difficult.

A workaround is of course to uninstall calibre first and than to the upgrade and then install calibre again.

I'll see if I can find a workaround for this.
Comment 2 Cor Blom 2017-01-31 12:48:35 UTC
https://build.opensuse.org/request/show/453602

Can some please take a look a this request and see if my solution is sound. Thanks.
Comment 3 Cor Blom 2017-02-03 09:00:02 UTC
(In reply to Cor Blom from comment #2)
> https://build.opensuse.org/request/show/453602
> 
> Can some please take a look a this request and see if my solution is sound.
> Thanks.

I've run a test and my solution works with "zypper in" but not with "rpm -Uvh".

Waiting for a response on opensuse-packaging.
Comment 4 Cor Blom 2017-02-03 18:27:25 UTC
Found a better solution here:

https://bugzilla.redhat.com/show_bug.cgi?id=447156#c28

Testing this it works for me.
Comment 5 Patrick Finie 2017-02-03 22:51:22 UTC
(In reply to Cor Blom from comment #4)
> Found a better solution here:
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=447156#c28
> 
> Testing this it works for me.

I have not had time time to test it.  I will test on Monday Febuary 6th.
Comment 6 Cor Blom 2017-02-04 00:30:44 UTC
(In reply to Patrick Finie from comment #5)
> (In reply to Cor Blom from comment #4)
> > Found a better solution here:
> > 
> > https://bugzilla.redhat.com/show_bug.cgi?id=447156#c28
> > 
> > Testing this it works for me.
> 
> I have not had time time to test it.  I will test on Monday Febuary 6th.

Note that it will take a week before it is released as update for Leap 42.2 and 42.1. In is in the maintenance queue at the moment. Before that you'll need the Documentation:Tools repository. Maybe it is Monday already in Update Test.
Comment 7 Patrick Finie 2017-02-08 00:16:33 UTC
(In reply to Cor Blom from comment #6)
> (In reply to Patrick Finie from comment #5)
> > (In reply to Cor Blom from comment #4)
> > > Found a better solution here:
> > > 
> > > https://bugzilla.redhat.com/show_bug.cgi?id=447156#c28
> > > 
> > > Testing this it works for me.
> > 
> > I have not had time time to test it.  I will test on Monday Febuary 6th.
> 
> Note that it will take a week before it is released as update for Leap 42.2
> and 42.1. In is in the maintenance queue at the moment. Before that you'll
> need the Documentation:Tools repository. Maybe it is Monday already in
> Update Test.

As of Tuesday Febuary 7th this issue has not been fixed.

(33/59) Installing: calibre-2.75.1-4.1.x86_64 ................................................................................[error]
Installation of calibre-2.75.1-4.1.x86_64 failed:
Error: Subprocess failed. Error: RPM failed: error: unpacking of archive failed on file /usr/share/calibre/fonts/liberation: cpio: rename failed - Is a directory
error: calibre-2.75.1-4.1.x86_64: install failed
error: calibre-1.48.0-1.2.x86_64: erase skipped


Abort, retry, ignore? [a/r/i] (a):
Comment 8 Cor Blom 2017-02-08 09:07:25 UTC
(In reply to Patrick Finie from comment #7)
> (In reply to Cor Blom from comment #6)
> > (In reply to Patrick Finie from comment #5)
> > > (In reply to Cor Blom from comment #4)
> > > > Found a better solution here:
> > > > 
> > > > https://bugzilla.redhat.com/show_bug.cgi?id=447156#c28
> > > > 
> > > > Testing this it works for me.
> > > 
> > > I have not had time time to test it.  I will test on Monday Febuary 6th.
> > 
> > Note that it will take a week before it is released as update for Leap 42.2
> > and 42.1. In is in the maintenance queue at the moment. Before that you'll
> > need the Documentation:Tools repository. Maybe it is Monday already in
> > Update Test.
> 
> As of Tuesday Febuary 7th this issue has not been fixed.
> 
> (33/59) Installing: calibre-2.75.1-4.1.x86_64

That is still the old package. The version in which it is fixed also updates calibre to 2.78. That is not yet released as update. It is still in the testing phase. It usually takes a week. So either the end of this week, or the beginning of the following week, the updated package should be release.

Thanks for testing, BTW.
Comment 9 Cor Blom 2017-02-08 09:11:47 UTC
If you want to test it, the updated package can be found here:

http://download.opensuse.org/update/leap/42.2-test/
Comment 10 Patrick Finie 2017-02-08 09:14:25 UTC
(In reply to Cor Blom from comment #9)
> If you want to test it, the updated package can be found here:
> 
> http://download.opensuse.org/update/leap/42.2-test/

Will do as i think i have a machine with that repo.  testing tomorrow as it is 1AM here.
Comment 11 Cor Blom 2017-02-08 11:28:02 UTC
New version has just been released, so you can find it in the regular update repo, no longer in the test repo.
Comment 12 Swamp Workflow Management 2017-02-08 14:08:44 UTC
openSUSE-RU-2017:0422-1: An update that has two recommended fixes can now be installed.

Category: recommended (moderate)
Bug References: 1011610,1022710
CVE References: 
Sources used:
openSUSE Leap 42.2 (src):    calibre-2.78.0-7.1
openSUSE Leap 42.1 (src):    calibre-2.78.0-30.1
Comment 13 Patrick Finie 2017-02-08 21:04:58 UTC
(In reply to Swamp Workflow Management from comment #12)
> openSUSE-RU-2017:0422-1: An update that has two recommended fixes can now be
> installed.
> 
> Category: recommended (moderate)
> Bug References: 1011610,1022710
> CVE References: 
> Sources used:
> openSUSE Leap 42.2 (src):    calibre-2.78.0-7.1
> openSUSE Leap 42.1 (src):    calibre-2.78.0-30.1

Tested this around 1PM PST and yes.  This now works.  Thanks for the Fix.
Comment 14 Patrick Finie 2017-02-13 08:20:49 UTC
(In reply to Patrick Finie from comment #13)
> (In reply to Swamp Workflow Management from comment #12)
> > openSUSE-RU-2017:0422-1: An update that has two recommended fixes can now be
> > installed.
> > 
> > Category: recommended (moderate)
> > Bug References: 1011610,1022710
> > CVE References: 
> > Sources used:
> > openSUSE Leap 42.2 (src):    calibre-2.78.0-7.1
> > openSUSE Leap 42.1 (src):    calibre-2.78.0-30.1
> 
> Tested this around 1PM PST and yes.  This now works.  Thanks for the Fix.

drat... seems to have recursed on one of the machines.  darn.
Comment 15 Swamp Workflow Management 2018-08-15 22:40:11 UTC
This is an autogenerated message for OBS integration:
This bug (1022710) was mentioned in
https://build.opensuse.org/request/show/629464 Backports:SLE-15 / calibre