11

I have the stable version of Google Chrome on my box. And each time I'm trying to install beta or/and unstable versions then I run into the same problem:

The following packages will be REMOVED
  google-chrome-stable
The following NEW packages will be installed
  google-chrome-beta
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 34.5 MB of archives.
After this operation, 3,109 kB of additional disk space will be used.
Do you want to continue [Y/n]? 

I need to remove the first version before installing another.

I know I can't install existing packages side by side. It doesn't need to be done via packaging system! I don't care how it's done. It equally can be hand crafted bash script or anything else. Main goal is to have them next to each other on my Ubuntu. There needs to be a way..

So summarizing my question: How can I install all Google Chrome versions next to each other?

3
  • I'm not sure that what you want is possible.
    – user25656
    Sep 4, 2012 at 14:44
  • I'm sure you can do it, if it's working on windows and (especially) OSX it can work on Linux distros either
    – sobi3ch
    Sep 5, 2012 at 8:39
  • I am not so sure. At least this does not work via packages or any repository. Sep 26, 2012 at 21:55

5 Answers 5

6

In case anyone else comes across this question - it seems that the Chrome package maintainers have removed the conflict in the 3 published packages - google-chrome-stable / -beta / -unstable. These each install into different directories and via /etc/alternatives, /usr/bin/google-chrome is soft-linked to a particular version (google-chrome-stable by default).

Tested on Ubuntu 12.04 LTS w/ Chrome 38 (stable) 39 (beta) and 40 (unstable).

3

There are Chromium binaries available that do not pollute inside /bin, but can run directly from any folder.

You can download the binaries from here and extract them to any folder of your choice, and run them side by side.

3

You can't do that. This is because all these versions (stable,beta and unstable) conflits with each other. See:

apt-cache show google-chrome-beta | grep Conflict
Conflicts: google-chrome

Now, google-chrome is a general name for Linux distros:

which google-chrome
/usr/bin/google-chrome

I have google-chrome-beta installed on my system:

dpkg -l | grep google
ii  google-chrome-beta                     22.0.1229.91-r158759                    

dpkg -S /usr/bin/google-chrome
google-chrome-beta: /usr/bin/google-chrome

As you can see google-chrome binary is provided by google-chrome-beta on my system. If I install stable, then it will be provided by stable. So, they conflict with each other.

If you try to install google-chrome-beta via .deb package distributed from Google you can see the same effect:

sudo LC_ALL=C dpkg --simulate -i google-chrome-beta_current_i386.deb
Selecting previously unselected package google-chrome-beta.
dpkg: regarding google-chrome-beta_current_i386.deb containing google-chrome-beta:
 google-chrome-beta conflicts with google-chrome
  google-chrome-stable provides google-chrome and is present and installed.
dpkg: error processing google-chrome-beta_current_i386.deb (--install):
 conflicting packages - not installing google-chrome-beta
Errors were encountered while processing:
 google-chrome-beta_current_i386.deb

I have changed google-chrome-stable with beta and tried to install via .deb package.

But I am not sure what happens if you can get (?) chrome source code and compile it, then try to run it via this compiled binary. Maybe this could work for Chromium. Since you can download its source code.

7
  • yeah that's what I'm talking about. Chrome is just a software so it must be a way to do it. Sorry but what did you show me I have already know. And basically you talking about limits of google .deb packages.
    – sobi3ch
    Oct 6, 2012 at 10:01
  • 1
    I tried to explain why this is not possible. I could'nt know that you know or don't know this. In your question this is not clear. Oct 7, 2012 at 21:19
  • hey, I didn't want to rude. I just don't like beginning of your answer "You can't do that." :) that's all
    – sobi3ch
    Oct 8, 2012 at 14:49
  • I said it because "you can't do it". At least right now. If developers or packagers change their system for Chrome maybe, but not now. Oct 9, 2012 at 9:20
  • ..and I "yes you can" :). Still disagree whit you, if some package doesn't exist it doesn't mean strait away you can't. Probably we both looking on this problem from a different angle. Maybe I should change question.. But thanks for your answer anyway.
    – sobi3ch
    Oct 10, 2012 at 10:58
1

This is possible, but you'll probably have to download the package apt-get download google-chrome-beta

Then you'll have to extract the package files: dpkg -X google-chrome-beta-xyzabc.deb dir/

From here you can probably run the program fine, but if not, then you'll have to fiddle around with the control files and work out what the install package is doing and where it puts things and edit it so there are no more conflicts.

This is where you're going to need to spend a lot of time reading about .deb files and you'll be wanting to test things in a virtual machine so you don't mess up your install.

1

Disclaimer: This solution works now, but not guaranteed to be future-proof.

After installing stable (and its dependencies) the convenient way...

Download a .deb file from here (I'm using unstable in the example): https://www.chromium.org/getting-involved/dev-channel

mkdir tmp
dpkg-deb -R google-chrome-unstable_current_amd64.deb tmp
sudo cp -r tmp/opt/google/chrome-unstable /opt/google
sudo chmod 4755 /opt/google/chrome-unstable/chrome-sandbox

If the unstable has any different dependencies from the one you installed it will probably fail to run - or you have to install those libs manually.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .