The upgrade path from Red Hat Enterprise Linux 7.3 to 7.4 is a bit of a pain if you have the multimedia repository configured. This is because I’m rebuilding a few components for an upgraded libwebp
package and because a lot of stuff has been rebased to versions that are in Fedora. Judging by the logs, I see that most of the downloads come from CentOS systems, so I just decided to hold on some updates that are required for the various package rebases for Red Hat Enterprise Linux 7.4. So until also CentOS releases version 7.4, I can’t make everyone happy and something (like Gstreamer plugin updates) will be stuck with 7.3 versions. Hopefully the new CentOS release will come quickly enough.
Also, I decided to stop rebuilding the base packages to use a newer libwebp
version. This really had very few benefits and just a lot of pain due to the huge amount of packages involved in both x86_64
and i686
variants. The amount of packages affected by this weigh at around 3 gb.
In RHEL 7.4 there are additional WebKit variants that also would require a rebuild. So, as of today, to update the packages from the EPEL 7 multimedia repository you should run this command:
rpm -e --nodeps GraphicsMagick && yum distro-sync && yum -y install GraphicsMagick
Hopefully you would get an output similar to this:
Dependencies Resolved
==============================================================================================
Package Arch Version Repository Size
==============================================================================================
Updating:
compat-ffmpeg-libs x86_64 1:2.8.12-2.el7 epel-multimedia 5.6 M
ffmpeg x86_64 1:3.3.3-2.el7 epel-multimedia 1.5 M
ffmpeg-libs i686 1:3.3.3-2.el7 epel-multimedia 6.1 M
ffmpeg-libs x86_64 1:3.3.3-2.el7 epel-multimedia 6.3 M
gstreamer1-plugins-bad x86_64 1:1.4.5-5.el7 epel-multimedia 1.8 M
libavdevice x86_64 1:3.3.3-2.el7 epel-multimedia 63 k
Downgrading:
leptonica i686 1.72-2.el7 epel-multimedia 881 k
leptonica x86_64 1.72-2.el7 epel 928 k
libwebp i686 0.3.0-3.el7 base 169 k
libwebp x86_64 0.3.0-3.el7 base 170 k
lz4 x86_64 1.7.3-1.el7 epel 82 k
python-pillow x86_64 2.0.0-19.gitd1c6db8.el7 base 438 k
webkitgtk x86_64 2.4.9-1.el7 epel 12 M
webkitgtk3 x86_64 2.4.9-6.el7 base 11 M
Installing for dependencies:
libwebp0.6 i686 0.6.0-1.el7 epel-multimedia 255 k
libwebp0.6 x86_64 0.6.0-1.el7 epel-multimedia 250 k
Transaction Summary
==============================================================================================
Install ( 2 Dependent packages)
Upgrade 6 Packages
Downgrade 8 Packages
Total download size: 47 M
Is this ok [y/d/N]:
Basically libwebp
should come again from the main CentOS/RHEL channels and the libwebp0.6
package should come from the multimedia repository. All the packages which were rebuilt for the previous libwebp
0.5 update should become synced again to their proper versions.
If you don’t get this output, but still get some dependency errors you have to do some debugging. For example, ffmpeg-libs.i686
requires libssh.i686
, but the version of libssh
in CentOS extras is different from the one in EPEL (it really depends on what kind of packages you have installed and with which repositories enabled) so I’m providing here the same version that is in CentOS extras but in both variants.
Update 16th August 2017
If you get many qt5 errors during the transactions, keep in mind that RHEL 7.4 has been rebased massively, and everyone else (including EPEL) is catching up. As of today, if you have the following errors (trimmed down) in a Yum transaction:
Error: Package: gvfs-1.30.4-3.el7.x86_64 (rhel-x86_64-server-7)
Error: Package: qt5-qtwebkit-5.6.1-3.b889f46git.el7.x86_64 (epel)
Error: Package: qt5-qtquickcontrols2-5.6.1-2.el7.x86_64 (@epel)
Error: Package: qt5-qtquickcontrols2-5.6.1-2.el7.x86_64 (@epel)
Error: Package: GraphicsMagick-1.3.26-3.el7.x86_64 (@epel-multimedia)
Error: Package: kf5-kdeclarative-5.36.0-1.el7.x86_64 (epel)
Error: Package: qt5-qtquickcontrols2-5.6.1-2.el7.x86_64 (@epel)
Error: Package: qt5-qtwebkit-5.6.1-3.b889f46git.el7.x86_64 (epel)
Transaction check error:
file /usr/lib64/gstreamer-1.0/libgstopus.so from install of gstreamer1-plugins-bad-1:1.4.5-5.el7.x86_64 conflicts with file from package gstreamer1-plugins-base-1.10.4-1.el7.x86_64
You can do the following. For this:
Error: Package: GraphicsMagick-1.3.26-3.el7.x86_64 (@epel-multimedia)
Do:
rpm -e --nodeps GraphicsMagick && yum -y install GraphicsMagick
All of the QT7KDE 5 stuff:
Error: Package: qt5-qtwebkit-5.6.1-3.b889f46git.el7.x86_64 (epel)
Error: Package: qt5-qtquickcontrols2-5.6.1-2.el7.x86_64 (@epel)
Error: Package: qt5-qtquickcontrols2-5.6.1-2.el7.x86_64 (@epel)
Error: Package: kf5-kdeclarative-5.36.0-1.el7.x86_64 (epel)
Are in EPEL testing updates, so:
yum --enablerepo=epel-testing update
These:
Error: Package: gvfs-1.30.4-3.el7.x86_64 (rhel-x86_64-server-7)Transaction check error:
file /usr/lib64/gstreamer-1.0/libgstopus.so from install of gstreamer1-plugins-bad-1:1.4.5-5.el7.x86_64 conflicts with file from package gstreamer1-plugins-base-1.10.4-1.el7.x86_64
are some of the packages that are rebased in RHEL 7.4. I’ve created a temporary repository for those, it will disappear once CentOS 7.4 is released as the packages will be integrated in the main multimedia repository. You can install it through:
yum-config-manager \
--add-repo=https://negativo17.org/repos/rhel74-temp/rhel74-temp.repo
With the above repository it is possible to install all the other multimedia packages.
Skype repository removal
Skype 4.3 is 32 bit only, is now obsolete and has been superseded by a package that actually lists proper dependencies. It is also one of the packages that required one of the above WebKit rebuilds in i686 form for RHEL/CentOS 7 x86_64.
If you have it installed, just remove it with:
yum remove webkitgtk.i686
The repository has been deleted; to install the new Skype provided version, just head to the following official link.
Not related to the multimedia repository.
I was having issues with KDE plasmoids in 7.4 that require libwebp.so.6.
There is a compat-libwebp05-0.5.2-3.fc26.src.rpm in Fedora 26 that can be rebuilt for RHEL7.
will everything get back to normal after Centos updates to 7.4? At this moment I’m getting those libweb dependancy errors (ffmpeg / gstreamer won’t update as libweb0.6 conflicts with libwep-0.5.1-2.el7 I have on my system)?
No, that is not lrelated to CentOS 7.4. Please re-read the post.
rpm -e --nodeps GraphicsMagick && yum distro-sync && yum -y install GraphicsMagick
Thank you Slaanesh – I really should have read the article more throughly, rather than a quick glance at work. The solution worked great – no errors at update now.
Slight off-topic – do you play WH / WH40k by any chance 😉 ?