Closed
Bug 809697
Opened 12 years ago
Closed 11 years ago
[download buttons] Offer linux64 builds to Linux x86_64 user agents
Categories
(www.mozilla.org :: Pages & Content, enhancement, P4)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: trasuntopendiente, Assigned: kohei)
References
(Blocks 2 open bugs, )
Details
(Keywords: 64bit, ux-discovery, Whiteboard: [kb=1246386] )
Attachments
(1 file)
(deleted),
text/x-github-pull-request
|
Details |
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0
Build ID: 20121024073032
Steps to reproduce:
Visit http://www.mozilla.org/en-US/firefox/fx/#desktop from a Linux x86_64 system with language en-GB
Press "Firefox Free Download" button.
Actual results:
You are directed to http://www.mozilla.org/en-US/products/download.html?product=firefox-16.0.2&os=linux&lang=en-US
After I download the build and uncompress it, I can see:
firefox$ ldd firefox
linux-gate.so.1 => (0xf7779000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf7747000)
libdl.so.2 => /lib32/libdl.so.2 (0xf7743000)
librt.so.1 => /lib32/librt.so.1 (0xf773a000)
libstdc++.so.6 => not found
libm.so.6 => /lib32/libm.so.6 (0xf7714000)
libgcc_s.so.1 => not found
libc.so.6 => /lib32/libc.so.6 (0xf75b6000)
/lib/ld-linux.so.2 (0xf777a000)
This shows the build downloaded is compiled for 32 bits systems.
Expected results:
You should be directed to http://www.mozilla.org/en-US/products/download.html?product=firefox-16.0.2&os=linux64&lang=en-US
Which downloads a file with the same name, but is compiled for 64bit systems:
firefox$ ldd firefox
linux-vdso.so.1 => (0x00007fff45bff000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f00a1793000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f00a158f000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f00a1386000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f00a107f000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f00a0dfd000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f00a0be6000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f00a085f000)
/lib64/ld-linux-x86-64.so.2 (0x00007f00a19c8000)
64bit builds should only be offered if the browser's locale actually has 64bit builds available. I don't know if the "Linux x86_64" user agent is properly detected and managed (might downgrade to "Linux").
I'll run some tests to verify how deep the fix needs to go.
If the user agent is not detected, that's the priority, along with testing that supporting it doesn't break too many pages. It might require including fallbacks to plain "Linux" user agent behaviour when "Linux x86_64" is not a valid option (locale not available is the most obvious case).
By the way, Linux x86_64 is a tier-1 platform, but approval from Fx Product (or someone else) might be required to implement this.
https://developer.mozilla.org/en/Supported_build_configurations
Keywords: 64bit,
ux-discovery
Comment 3•12 years ago
|
||
How is this different from bug 527907?
Bug 527907 intends to make Linux x86_64 builds accessible in a sensible way (no FTP navigation, no magic URLs), and the solution will be to include them in the Systems & Languages page.
With this bug I express my conviction that Linux x86_64 should be treated as the tier-1 platform it is, which means that every service offered to Windows/Linux/Mac users should be offered to users of supported 64bit systems. The most basic service I can think of is being able to download the latest version of Firefox from the official page without having to navigate to a secondary page few others ever need to visit.
What's more important, someday Windows 64bit will become a tier-1 platform, and Mozilla should be ready when the moment comes to offer its users a seamless experience. Implementing all this for Linux x86_64 will help find issues and test the systems currently implemented.
Updated•12 years ago
|
Summary: Offer linux64 builds to Linux x86_64 user agents if localization available → [download buttons] Offer linux64 builds to Linux x86_64 user agents if localization available
Comment 6•12 years ago
|
||
I would like to underline the fact that this might have serious consequences in Aurora/Beta usage on Linux. IIRC, this is a platform where most people use the distribution builds (which is usually the latest official release).
Detecting "Linux x86_64" in the UA string provides the 64bits tarball instead of the 32bits one might get people actually using those binaries.
I would also note that I had this issue yesterday, trying to download Aurora from mozilla.org, this isn't only for localization builds as the summary might let one think.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: [download buttons] Offer linux64 builds to Linux x86_64 user agents if localization available → [download buttons] Offer linux64 builds to Linux x86_64 user agents
Updated•12 years ago
|
Blocks: download-buttons
I'll take the Aurora and Beta builds into account, then. These channels are partly affected by the changes I'm doing, so their fix should require little more effort (only the aurora URL construction, I think).
URLs in https://www.mozilla.org/en-US/firefox/channel/ should be:
Aurora: https://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/firefox-18.0a2.en-US.linux-x86_64.tar.bz2
Beta: https://www.mozilla.org/products/download.html?product=firefox-17.0b6&os=linux64&lang=en-US
So far, I'm developing a fix in https://github.com/Elideb/bedrock/tree/bug-809697-offer-linux64-builds
The user agent detection was considering all Linux systems as linux. I've added a new platform linux64, which seems to work properly, and updated the tests. More testing is required for localized builds (plus Aurora and Beta), so I'm trying to build a server offering several locales.
The bug is also constrained by the product_details project. Since the Json files with platform information are generated from the PHP files used by the old PHP site, I first need to test that adding Linux x86_64 builds to those files doesn't break the pages still in use from the old site.
Once that has been tested, I can upload the PHP files with the new platform, generate their Json counterparts and roll everything out.
I've tested the channels page (https://www.mozilla.org/en-US/firefox/channel/) in my local installation of the site and, with the changes I've made, and both Beta and Aurora builds are Linux x86_64. The platform name is also nicely displayed.
I am currently unable to run the updated mozorg tests in bedrock. If someone could sync my branch (https://github.com/Elideb/bedrock/commits/bug-809697-offer-linux64-builds) and run the tests I'd be very glad. I'm trying to learn how to run them myself and any help is welcome.
Reporter | ||
Comment 10•12 years ago
|
||
Preliminary version of the fix is available at https://github.com/Elideb/bedrock. Theoretically, if no linux64 build is available for the desired locale, it should revert to en-US, x86_64. Remember to add Linux64 entries to firefox_primary_builds.json or firefox_beta_builds.json, depending on your locale.
Example:
"ach":{"19.0a2":{"Windows":{"filesize":0},"OS X":{"filesize":0},"Linux":{"filesize":0},"Linux64":{"filesize":6.1}},"18.0b7":{"Windows":{"filesize":7.8},"OS X":{"filesize":19},"Linux":{"filesize":9.6},"Linux64":{"filesize":6.1}},"17.0.1":{"Windows":{"filesize":7.8},"OS X":{"filesize":19},"Linux":{"filesize":9.6},"Linux64":{"filesize":6.1}}}
I'd be glad if other people could test it works. Due to browser and server caching I'm not sure my tests with just on computer have been thorough enough.
Reporter | ||
Comment 11•12 years ago
|
||
By the way, the fix is applied to download buttons in the desktop and channel pages.
Reporter | ||
Comment 12•12 years ago
|
||
This fix now has its own branch: https://github.com/Elideb/bedrock/tree/bug-809697-offer-linux64-builds.
I'll wait to make the pull request until a couple of fixes are accepted, because they add proper support of Linux x86_64 in product details.
Updated•11 years ago
|
Priority: -- → P4
Assignee | ||
Comment 15•11 years ago
|
||
I'm revisiting this bug. We probably can offer linux x86 builds without adding those entries to product details. I have added ARMv6 and x86 builds for Android in Bug 776101, and I'll take a look at this.
Assignee: nobody → kohei.yoshino
Status: NEW → ASSIGNED
Whiteboard: [kb=1246386]
Assignee | ||
Comment 16•11 years ago
|
||
Sent a PR.
Comment 17•11 years ago
|
||
This problem still occurs on:
http://www.mozilla.org/en-US/firefox/all-aurora.html
http://www.mozilla.org/en-US/firefox/all-beta.html
It is quite disturbing especially since the beta files do not contain any information about the arch (example: firefox-27.0b9.tar.bz2) and are clearly 32 bit:
$ file firefox
firefox: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, BuildID[sha1]=a6571d763338bbbe8df3a88dc7520376dc2eb9f6, stripped
My users agent for Firefox & Chromium:
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20131215 Firefox/24.0 Iceweasel/24.2.0
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36
Checking for x86_64 should do it.
Assignee | ||
Comment 19•11 years ago
|
||
(In reply to Sylvestre Ledru [:sylvestre] from comment #17)
> This problem still occurs on:
> http://www.mozilla.org/en-US/firefox/all-aurora.html
> http://www.mozilla.org/en-US/firefox/all-beta.html
We are working on it, and this will be resolved by
https://github.com/mozilla/bedrock/pull/1605 and
https://github.com/mozilla/bedrock/pull/1612
Comment 21•11 years ago
|
||
How are 64-bit OSX systems affected?
Assignee | ||
Comment 22•11 years ago
|
||
(In reply to Will Pittenger from comment #21)
> How are 64-bit OSX systems affected?
Firefox for OS X is already a 64-bit app; it won't be affected.
Firefox for Windows is still a 32-bit app. The 64-bit version will be added in the future. (Bug 558448)
Assignee | ||
Comment 23•11 years ago
|
||
Bug 527907 has been fixed and Linux 64 builds are now listed on the /all/ pages:
http://www.mozilla.org/en-US/firefox/all/
http://www.mozilla.org/en-US/firefox/beta/all/
http://www.mozilla.org/en-US/firefox/aurora/all/
http://www.mozilla.org/en-US/firefox/organizations/all/
This bug, for the download *buttons*, is still under review but it won't take long to be landed to the production site.
Comment 24•11 years ago
|
||
I've put this change up on a demo server for testing:
https://www-demo3.allizom.org/
Raymond, would you please be able to verify the download button are working as expected on Linux, and also that this doesn't appear to affect any other systems?
Flags: needinfo?(mozbugs.retornam)
Comment 25•11 years ago
|
||
It's not, I get this url on the french homepage:
https://www-demo3.allizom.org/en-US/products/download.html?product=firefox-27.0.1-SSL&os=linux64&lang=en-US
->lang=en-US should be lang=fr
Comment 26•11 years ago
|
||
(In reply to Pascal Chevrel:pascalc from comment #25)
> It's not, I get this url on the french homepage:
> https://www-demo3.allizom.org/en-US/products/download.html?product=firefox-
> 27.0.1-SSL&os=linux64&lang=en-US
>
> ->lang=en-US should be lang=fr
Kohei has made a change to fix this issue, so I've pushed the latest changes to demo3 again:
https://www-demo3.allizom.org/
Comment 27•11 years ago
|
||
Comment 28•11 years ago
|
||
fixed on demo3 https://www-demo3.allizom.org/en-US/products/download.html?product=firefox-27.0.1-SSL&os=linux64&lang=en-US
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Flags: needinfo?(mozbugs.retornam)
Resolution: --- → FIXED
Comment 29•11 years ago
|
||
Commits pushed to master at https://github.com/mozilla/bedrock
https://github.com/mozilla/bedrock/commit/880afdcdb6b5ff474e71e4f36829cb06e9cf1a89
Fix Bug 809697 - [download buttons] Offer linux64 builds to Linux x86_64 user agents
https://github.com/mozilla/bedrock/commit/d4d4846838c7593ed9fa2d3a9882385e3cfec772
Merge pull request #1604 from kyoshino/bug-809697-linux64-btn
Fix Bug 809697 - [download buttons] Offer linux64 builds to Linux x86_64 user agents
Comment 30•11 years ago
|
||
You need to log in
before you can comment on or make changes to this bug.
Description
•