Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mixed content of Google Chrome and Chromium #2

Open
woolyss opened this issue Apr 8, 2020 · 4 comments
Open

Mixed content of Google Chrome and Chromium #2

woolyss opened this issue Apr 8, 2020 · 4 comments
Assignees
Labels
question Further information is requested

Comments

@woolyss
Copy link

woolyss commented Apr 8, 2020

Hello Dimitri,

I checked your code today. It is well written.

But there is a misunderstanding. Your tool mixes Google Chrome and Chromium content.
So your tool is corrupted! :/

Your affected code is at https://github.com/Bugazelle/chromium-all-old-stable-versions/blob/master/src/chromium.py

I explained that few months ago about a similar tool at cypress-io/chromium-downloads#18

It is simple. You cannot install a stable Chromium version downloaded from chromium-browser-snapshots because there are absolutely no Chromium stable versions there.

  • omahaproxy.appspot.com : tool about Google Chrome development.
  • commondatastorage.googleapis.com : repositories of Chromium binaries (only development version)

Hope this will help you to improve your work.

Regards

@Bugazelle
Copy link
Owner

Bugazelle commented Apr 9, 2020

Hello @woolyss

Really appreciate for your comments.
It is very helpful for us to know the Chromium better.

I checked your comment here: cypress-io/chromium-downloads#18 (comment)

Here are my questions need your further guide

1. The current process to get old chromiums is based on the chromium official suggestion: https://www.chromium.org/getting-involved/download-chromium

I did a lot research before, but seems no better solution
To try to get the mostly match "stable" version, we use the channel=stable in omahaproxy, for example, https://omahaproxy.appspot.com/history.json?channel=stable&os=mac

Do you have any new or better solution?

DownloadOldBuildOfChromium

2. We cannot use the --version output to get the version number.

Because all the --version output the main version with no patch number, for example, download the 80.0.3987.106, and execute: chrome-mac/Chromium.app/Contents/MacOS/Chromium --version => Chromium 80.0.3987.0
The behavior just likes you said, no patch for Chromium

"80.0.3987.106": {
            "position_url": "https://omahaproxy.appspot.com/deps.json?version=80.0.3987.106",
            "position": 722274,
            "download_position": 722274,
            "download_prefix": "https://www.googleapis.com/storage/v1/b/chromium-browser-snapshots/o?delimiter=/&prefix=Mac/722274/&fields=items(kind,mediaLink,metadata,name,size,updated),kind,prefixes,nextPageToken",
            "download_url": "https://www.googleapis.com/download/storage/v1/b/chromium-browser-snapshots/o/Mac%2F722274%2Fchrome-mac.zip?generation=1575589468690598&alt=media"
        },

Also I checked the revision you suggested, for example, 80.0.3987.106 revision, it really notes us the revision.

But the question is:
When we get the revision, how to know the revision matches which chromium version?
Is there a way to confirm: mac revision 722274 matches chromium 80.0.3987.106?
Would you please share us more suggestions?

Thank you in advance.

3. Action Item - Research for https://chromium.woolyss.com/

Seems there is no general solution to get the history/old stable chromiums:
For MAC: https://sourceforge.net/projects/osxportableapps/files/Chromium/
For Windows 64, 32: https://github.com/Hibbiki
For Linux: No way to get the history/old chromium, only the latest. Even though, for example, Ubuntu provides the packages, but it is not a full set

But the good new is, the patch is added for MAC & Windows

The question is:
Why the patch is working in there?

@Bugazelle Bugazelle added the question Further information is requested label Apr 9, 2020
@Bugazelle Bugazelle self-assigned this Apr 9, 2020
@woolyss
Copy link
Author

woolyss commented Apr 9, 2020

Ok. I try to answer simply while respecting the structure of your post. ;)

1. The current process to get old chromiums is based on the chromium official suggestion: https://www.chromium.org/getting-involved/download-chromium

Do you have any new or better solution?

This "official" proposed solution is ony for debugging. The last sentence explains that in Chromium, compared to Chrome, there are no similar commits and patches. So these builds are very different. It is recommended to compile Chromium yourself to have a similar stable version... or find third-parties builds. (Our builds? ^^)

2. We cannot use the --version output to get the version number.

I understand that. You should forget omahaproxy.appspot.com tool... or use it (like on my website) ONLY as a reference for the stable version.

When we get the revision, how to know the revision matches which chromium version?
Is there a way to confirm: mac revision 722274 matches chromium 80.0.3987.106?
Would you please share us more suggestions?

722274 matches chromium 80.0.3987.106? Yes but note that different stable versions match the same revision. Check yourself at https://omahaproxy.appspot.com/ (First tool at the bottom page)
For example:

  • 80.0.3987.163 --> 722274
  • 80.0.3987.117 --> 722274
  • 80.0.3987.87 --> 722274
    So, like you see, Chromium dev 722274 is different than Google Chrome (or stable Chromium versions).

3. Action Item - Research for https://chromium.woolyss.com/

Seems there is no general solution to get the history/old stable chromiums...

True....because like all organizations and companies, we recommend to use the latest version of browsers. So we do not provide an easy way to get old versions. For example, I work with the great ARM company (https://chromium.woolyss.com/#windows-on-arm). They absolutely do not share a repository for their Chromium builds and source-code.

But the good new is, the patch is added for MAC & Windows

Yes... but there are more things than just "patch added"! ;)

Why the patch is working in there?

Because developers re-compile stable versions of Chromium with all commits, patches, GN arguments, API keys... from its source-code.

More info on my website:

To compile Chromium, you need time, a very (very, very, very!...) powerful computer and understand obviously the development process.

4. Finally

As I said before, I think you should forget the omahaproxy.appspot.com tool... or use it ONLY like a reference for the stable version.

On the Web, you can find different repositories of stable Chromium versions. All are made by third parties. So they are relatively crappy because they are maintained by different developers. Personally, as you saw, we share stable Chromium versions for Windows (x64, x86) and macOS (x64).

  1. Check https://chromium.woolyss.com/?stb=1 (This link will display only STABLE Chromium versions)
  2. Toogle each green box
  3. Click on the "Previous versions" words (if exist). You will see the relative repository.
    For info, I know other repositories of other developers.

The best tool for your chromium-all-old-stable-versions project could be a an aggregation of different directories regarding the stable version of Chromium.
The task seems complex.

Hope it helps! ;)
Regards

@Bugazelle
Copy link
Owner

wow!!!!!
@woolyss 👍
I don't read the details yet, but it looks very processional!!!!!
Just want to say: Thank you!!

We will take them into consideration
Thank you for your guide again.

Cheers ;)

@woolyss
Copy link
Author

woolyss commented Apr 10, 2020

@Bugazelle: Thank you very much.
Personally, I know how to improve your tool because I have got all resources and know the process. I never took the time to write such a tool. Moreover, I have no time to write code on a new project but if you really want to follow my recommendations, I can help you. Note your tool will be correct (= only STABLE versions of Chromium) and will be one of unique resource shared with the Chromium community. 😜 No resource like that exists on the Web.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants