Google Chrome + H.264/AAC codec needed on RHEL6

Latest response

Hi all

I need a running Chrome Browser with H264-Codec Support on RHEL6.
However, as RedHat isn't supporting that, I have to use third-party-applications.

I could install Chromium via optional-rhel-repo.

Question:
How can I support H264 on Chromium?

Thanks in advance and kind regards
Daniel Bossert

Responses

Hi Daniel,

You would need to install the H264 codec from a third-party repository, such as from Fedora. Considering that, it is probably easier to install the Chrome browser (which supports H264 out of the box) directly. There are ways to do that manually by downloading required dependencies (again, from Fedora), but you can also use a third-party script prepared for this specific purpose. See http://www.tecmint.com/install-google-chrome-on-redhat-centos-fedora-linux/ (works well on RHEL6).

Please note that neither this script, nor the resulting installation of the Chrome browser are supported by Red Hat.

Hi Robert

Thank you for your answer.
I was on this site, however I thought it too complicated, as it downloaded many packages and I have to redistribute the package on servers without internet connection.

However, I'll try that again as it seems to be the only way to get that working.

Kind regards
Daniel

In that case, you might want to have a look at https://github.com/adamel/chrome-deps, which offers basically the same thing but packaged as an RPM. More importantly, there's a list of the Fedora dependencies you need to download for the installation to succeed.

You could just download the required packages manually and distribute them to the machines without Internet connection.

Hi Robert

Thank you for the link.
I downloaded the spec files and the libs provided, however, rpmbuild can't find the file chrome-deps-1.4.tar.gz.
Where do I have to download the .tar.gz file?

The google link doesn't seem to work (dl.google.com)

Kind regards
Daniel

Hi Daniel,

The chrome-deps-1.4.tar.gz file is what you need to prepare from the contents of that GitHub repository, specifically, from its src/ subdirectory. It then needs to be placed in the ~/rpmbuild/SOURCES/ directory on the system where you want to build the package.

To prepare the .tar.gz file, do, for example, the following (this assumes that you already have the standard directory structure under ~/rpmbuild/):

wget https://github.com/adamel/chrome-deps/archive/master.zip
unzip master.zip
mv chrome-deps-master/ chrome-deps-1.4
cp chrome-deps-1.4/chrome-deps.spec ~/rpmbuild/SPECS/
tar zcvf chrome-deps-1.4.tar.gz chrome-deps-1.4/
mv chrome-deps-1.4.tar.gz ~/rpmbuild/SOURCES/

Then change to the ~/rpmbuild/SPECS/ directory and run the rpmbuild command (provided that you have already downloaded the required RPMs from Fedora to the ~/rpmbuild/SOURCES/directory:

rpmbuild -bb chrome-deps.spec

You should end up with a new RPM package called chrome-deps-1.4-1.el6.x86_64.rpm in the ~/rpmbuild/RPMS/x86_64/ directory. Install this package along with the Google Chrome package downloaded from Google, and that should be it.

Hi Robert

I'll just now try to do that!

Many thanks
Daniel

Hi Robert

It worked! I got the rpm files which I could copy to a machine without direct connection to internet and it worked! After connecting the machine directly to the internet html5test.com showed the h264+aac support!
Give me some minutes and I'll put my commands to here.

Kind regards
daniel

Hi Daniel - I think if I was in this predicament (requires Google Chrome/H.264 and disconnected), I would do the following:
Find a system that is not disconnected to use as the staging system
Install RHEL and update
add EPEL and RPMfusion repos (and make sure system is still current)
add the Google Repo
add the download only yum plugin
yum install downloadonly google-chrome-stable
then yum install google-chrome-stable

This may seem like an odd strategy, so I'll go through what I am thinking:
* I would not want to custom build the necessary packages as I am now "responsible" for updating that custom build
* If you do a custom build at this point, what is the maintenance strategy going forward when patches/updates are needed
* running download-only will produce a list of packages it pulls down (and I believe which repos it grabs it from), this will also allow you to review the task using yum history. I believe when you need to update the packages later, you can do the same exact steps to gather the list of new files, etc... and recreate your bundle.

If you wanted to get really fancy - you could assemble the packages you determine are necessary and make an "offline repo" with them. (I believe the puppet installer does something similar). You do a createrepo of a base directory, create a yum.repo file pointing at that directory and then you can do a simple yum install which will do it's best to ensure dependencies, etc.. are met.

So - I don't know (for certain) if what I suggested would work or how much work it would take, but I think it would work. If this is truly a one-time event of installing the app, my suggested method might not be worth the effort

Hi James,

The trouble is that it's no longer possible to install Google Chrome on RHEL without those Fedora 15/17 dependencies (libraries) -- not even when you enable the EPEL and RPMFusion repos. So this method wouldn't work :-(

The upside of the method that involves preparing your own package with the Chrome dependencies is that you can then update the Chrome package normally (from the offic. Google repo). The only responsibility is for the chrome-deps package, and that will most likely stay the same (that is, until Google screws up the dependencies again, of course).

Ha - and I will explain my "ha"... I actually complained about this (google dropping support for RHEL 6) previously in a thread and had forgotten. I actually moved to using Mozilla/firefox again because of it. I'm getting senile.

The biggest sticking point for me in wanting to let the repos and yum do all the heavy lifting...

     9 | -y install google-chrome | 2014-11-20 21:58 | Install        |   77 EE

77 packages!!!

If the OP was building immutable systems, or updating an image for rapid-deployment - I imagine updates are not that important. I was just worried about the consequences of having the "rogue" packages out there when it comes time to update.

Thanks for reminding me that Chrome is not available on RHEL 6 ;-)

Hi all

I solved the problem thanks to Robert! --> Many kudos to him!

Here is the recipe:
INSTALL GOOGLE CHROME 39 ON RHEL 6.6 32BIT

[root@rhel32bit ~]# pwd
/root
[root@rhel32bit ~]# mkdir googlechrome
[root@rhel32bit ~]# cd googlechrome/
[root@rhel32bit googlechrome]# wget https://github.com/adamel/chrome-deps/archive/master.zip
[root@rhel32bit googlechrome]# unzip master.zip
[root@rhel32bit googlechrome]# mv chrome-deps-master/ chrome-deps-1.4
[root@rhel32bit googlechrome]# ls
chrome-deps-1.4 master.zip
[root@rhel32bit googlechrome]# mkdir ../rpmbuild
[root@rhel32bit googlechrome]# mkdir ../rpmbuild/SPECS
[root@rhel32bit googlechrome]# mkdir ../rpmbuild/SOURCES
[root@rhel32bit googlechrome]# cp chrome-deps-1.4/chrome-deps.spec ~/rpmbuild/SPECS/
[root@rhel32bit googlechrome]# tar zcvf chrome-deps-1.4.tar.gz chrome-deps-1.4/
[root@rhel32bit googlechrome]# mv chrome-deps-1.4.tar.gz ~/rpmbuild/SOURCES/
[root@rhel32bit googlechrome]# cd
[root@rhel32bit ~]# cd rpmbuild/SPECS/
[root@rhel32bit SPECS]# yum install rpm-build

[root@rhel32bit SPECS]# wget http://dl.fedoraproject.org/pub/archive/fedora/linux/updates/15/i386/gdk-pixbuf2-2.23.3-2.fc15.i686.rpm
[root@rhel32bit SPECS]# wget http://dl.fedoraproject.org/pub/archive/fedora/linux/updates/15/i386/glib2-2.28.8-1.fc15.i686.rpm
[root@rhel32bit SPECS]# wget http://dl.fedoraproject.org/pub/archive/fedora/linux/updates/15/i386/glibc-2.14.1-6.i686.rpm
[root@rhel32bit SPECS]# wget http://dl.fedoraproject.org/pub/archive/fedora/linux/updates/15/i386/gtk2-2.24.7-3.fc15.i686.rpm
[root@rhel32bit SPECS]# wget http://dl.fedoraproject.org/pub/archive/fedora/linux/updates/15/i386/libstdc++-4.6.3-2.fc15.i686.rpm
[root@rhel32bit SPECS]# wget http://dl.fedoraproject.org/pub/archive/fedora/linux/releases/17/Fedora/i386/os/Packages/l/libgnome-keyring-3.4.1-2.fc17.i686.rpm
[root@rhel32bit SPECS]# ls
chrome-deps.spec gtk2-2.24.7-3.fc15.i686.rpm
gdk-pixbuf2-2.23.3-2.fc15.i686.rpm libgnome-keyring-3.4.1-2.fc17.i686.rpm
glib2-2.28.8-1.fc15.i686.rpm libstdc++-4.6.3-2.fc15.i686.rpm
glibc-2.14.1-6.i686.rpm

[root@rhel32bit SPECS]# mv *.rpm ../SOURCES/
[root@rhel32bit SPECS]# cd ../SOURCES/
[root@rhel32bit SOURCES]# mv glibc-2.14.1-6.i686.rpm glibc-2.14.1-6.i386.rpm
[root@rhel32bit SOURCES]# mv libstdc++-4.6.3-2.fc15.i686.rpm libstdc++-4.6.3-2.fc15.i386.rpm
[root@rhel32bit SOURCES]# mv glib2-2.28.8-1.fc15.i686.rpm glib2-2.28.8-1.fc15.i386.rpm
[root@rhel32bit SOURCES]# mv gtk2-2.24.7-3.fc15.i686.rpm gtk2-2.24.7-3.fc15.i386.rpm
[root@rhel32bit SOURCES]# mv gdk-pixbuf2-2.23.3-2.fc15.i686.rpm gdk-pixbuf2-2.23.3-2.fc15.i386.rpm
[root@rhel32bit SOURCES]# mv libgnome-keyring-3.4.1-2.fc17.i686.rpm libgnome-keyring-3.4.1-2.fc17.i386.rpm
[root@rhel32bit SOURCES]# cd ../SPECS/
[root@rhel32bit SPECS]# yum install gcc
...
Dependencies Resolved

========================================================================================================

Package Arch Version Repository Size

Installing:
gcc i686 4.4.7-11.el6 rhel-6-server-eus-rpms 8.2 M
Installing for dependencies:
cloog-ppl i686 0.15.7-1.2.el6 rhel-6-server-eus-rpms 93 k
cpp i686 4.4.7-11.el6 rhel-6-server-eus-rpms 3.4 M
mpfr i686 2.4.1-6.el6 rhel-6-server-eus-rpms 153 k
ppl i686 0.10.2-11.el6 rhel-6-server-eus-rpms 1.3 M

...
Complete!
[root@rhel32bitwin SPECS]# rpmbuild -bb chrome-deps.spec
..
+ rm -rf /root/rpmbuild/BUILDROOT/chrome-deps-1.4-1.el6.i386
+ exit 0
[root@rhel32bit SPECS]# cd ../RPMS/i386
[root@rhel32bit i386]# ls
chrome-deps-1.4-1.el6.i386.rpm
[root@rhel32bit i386]# yum localinstall chrome-deps-1.4-1.el6.i386.rpm

[root@rhel32bit i386]# vi /etc/yum.repos.d/google.repo
[root@rhel32bit i386]# cat /etc/yum.repos.d/google.repo
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
[root@rhel32bit i386]# yum install google-chrome-stable

Kind regards and many thanks again
Daniel

Great news and nice work. Thanks for posting the solutions for others too!

Pro Tip: to post the output from commands, enclose the code with 3 x tilde's start/finish
~~~
code goes here
~~~

I just installed Fluendo Oneplay and it works perfectly and it was very easy to install. I don't mind having to pay if there is no reliable free solution. I tried the 3rd party repositories and all had missing dependencies or were altogether off-line.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.