FS#9243 - Useragent BonEcho not recognized by some pages as Firefox

Attached to Project: Arch Linux
Opened by Alberto Gonzalez (Luis) - Thursday, 17 January 2008, 15:03 GMT
Last edited by Jan de Groot (JGC) - Sunday, 10 February 2008, 17:10 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Alexander Baldeck (kth5)
Architecture All
Severity Low
Priority Normal
Reported Version 2007.08-2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description: Firefox in Arch is called Bon Echo for branding reasons, which is fine. But one problem is that the useragent string also has BonEcho instead of Firefox, and some pages rely in finding "Firefox" to know that you have a supported browser. And if they don't find it, they won't serve you the content. This creates many headaches to many users who are not aware of it and they're really puzzled as of why they can't access their bank website with Arch, or why they can't use the advanced features in Yahoo mail, etc...

The fix is simple enough (change BonEcho to Firefox in about:config), but I think this should be the default setting unless it is illegal to do so (I'm not sure what's Mozilla's position about this).
This task depends upon

Closed by  Jan de Groot (JGC)
Sunday, 10 February 2008, 17:10 GMT
Reason for closing:  Won't fix
Comment by Dan McGee (toofishes) - Saturday, 19 January 2008, 22:28 GMT
Not an Arch bug...
Comment by Alberto Gonzalez (Luis) - Saturday, 19 January 2008, 23:18 GMT
What do you mean by "Not an Arch bug"? A default install does have BonEcho in the useragent string, so Arch users are affected by this problem. Just do a quick forum search and you'll find this question asked several times.

If you mean that the "bug" belongs to the web page, I don't see that as a valid argument. Some pages need to check if the browser is supported or not, and the only way they can do it is by checking the useragent string for known browsers. "Firefox" is a well known browser, but "BonEcho" is not. We can't blame those pages for not knowing BonEcho. Anyone can rename Firefox to their liking and they just can't keep track of all those names. We need to stay compatible with the official Firefox or otherwise it's us who lose. Blaming others won't help us, I'm afraid.
Comment by Dan McGee (toofishes) - Sunday, 20 January 2008, 00:09 GMT
Yes, I do mean the web sites are broken. The following user agent string is working just fine for me.
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9b2) Gecko/2008011401 Minefield/3.0b2

What I also mean is that this is not something the Arch Linux copy of Firefox/BonEcho should really have to deal with, as far as I am concerned. The *only* part websites should look at is the "Mozilla/5.0" part, and maybe notice that Gecko is used as the rendering engine.

We don't like to hand-hold here at Arch. Changing the browser user-agent string seems like hand-holding to me.
Comment by Jan de Groot (JGC) - Sunday, 20 January 2008, 00:17 GMT
Websites should check for gecko and optionally the rv:version tag in the useragent. There's some upstream bug where these things can be reported. These websites are all broken: only supporting firefox while there's also seamonkey, iceweasel, bon echo (deer part in next version), epiphany, galeon, etc in the world that support the same features as firefox do. Sure, there's firefox-only extensions, but a bank site should check for the correct string in the useragent.
Comment by Alberto Gonzalez (Luis) - Sunday, 20 January 2008, 01:15 GMT
>The *only* part websites should look at is the "Mozilla/5.0" part

Konqueror has that part too. Even IE has "Mozilla/4.0". It's not what web developers should check, sorry.

>and maybe notice that Gecko is used as the rendering engine.

Yes, that would be much more helpful.

>There's some upstream bug where these things can be reported.

I'm not sure what you mean by "upstream", but please point me to where I can report it and I'll do.

>These websites are all broken: only supporting firefox while there's also seamonkey, iceweasel, bon echo (deer part in next version), epiphany, galeon, etc in the world that support the same features as firefox do.

You see, that's the problem for web developers. They can't keep track of all the different names that gecko based browsers have. And just checking for Gecko might work most of the time, but they can't guarantee it will. It's not safe to support a browser that you haven't tested just because it's gecko based. But anyway, this is another discussion that doesn't belong here...

>this is not something the Arch Linux copy of Firefox/BonEcho should really have to deal with

So it's better to ship a browser that doesn't work in certain websites instead of fixing this problem which is quite easy to fix (unless there are legal reasons, of course)? I don't see any benefit in that approach. It's bad for Arch users, who are the only ones we should care about.
Comment by Roman Kyrylych (Romashka) - Sunday, 20 January 2008, 09:50 GMT
Web sites should not support *browsers* (well, except MSIE6 - but this is done on CSS level anyway) ever!
They should support *standards*. Period.
See http://www.quirksmode.org/js/detect.html and http://www.quirksmode.org/js/support.html
and http://www.webreference.com/tools/browser/javascript.html if you really need browser detection.

> So it's better to ship a browser that doesn't work in certain websites instead of fixing this problem which is quite easy to fix (unless there are legal reasons, of course)?
What's the status in other distros that use non-vanilla-Mozilla Firefox sources, e.g. Debian?
Comment by Alberto Gonzalez (Luis) - Sunday, 20 January 2008, 10:33 GMT
Roman, we probably agree about how things *should be*. But I hope we also agree about how things actually *are*.

Now, real Arch users can't access their bank's website because of it. Others can't use their mail correctly because of it. Others can't watch the online results of their favorite tennis tournament because of it, etc...

I don't have the problem myself. I'm just reporting this because I care about other users. Now it's up to the developers to decide what should be done about it (if anything).
Comment by Roman Kyrylych (Romashka) - Sunday, 20 January 2008, 10:53 GMT
from that logic the best solution would be to use MSIE as it's the most supported browser. ;)
The situation won't change if users do nothing. Look at http://my.opera.com/community/forums/forum.dml?id=29 (sorry, I don't know about a similar link for Firefox).
Anyway, we're just discussing here, maintainer decides.
Comment by Jan de Groot (JGC) - Sunday, 20 January 2008, 13:22 GMT
"And just checking for Gecko might work most of the time, but they can't guarantee it will. It's not safe to support a browser that you haven't tested just because it's gecko based."

Gecko = Gecko. The only difference between one gecko and another gecko is the platform it runs on and the version it has. Both are detectable (Gecko, rv:1.8.1.11, linux or windows, all are in the useragent).

Some reference:
http://www.geticeweasel.org/useragent/
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=399633
https://bugzilla.mozilla.org/show_bug.cgi?id=334967

Last one is the bug where you can report broken sites that check for firefox.
Comment by Alberto Gonzalez (Luis) - Sunday, 10 February 2008, 16:41 GMT
I've been fighting for some time with Yahoo!'s customer service, but all I could finally get was a "we'll consider your suggestions for our next round of upgrades". And that's with an internet company. I guess with a bank it will be impossible to even contact the web developers...

So, my conclusion is the same. We have a problem. I shouldn't have it, but we have it. And this is life. Shit happens, and you either deal with it or you're screwed. I'm all for real fixes, but when these are not feasible and not in your hand, you really need a workaround, at least temporarily.

Options?
1- Do nothing and let users change the useragent on their own, if they know how to do it and if they know that's the problem.
2- Change the useragent in the package and save users from trouble.

It's that simple, basically. And both options can be valid from a certain POV. For example, Debian prefers to leave its users out in the cold rather than use the doomed word Firefox in their useragent string. Not strange, since Debian folks were the ones who had the dispute with Firefox and they're quite a political distro. Then we have Ubuntu, a more practical distro that puts users first and change the useragent in Epiphany to look something like this:

Mozilla/5.0 (X11; U; Linux x86_64; en; rv:1.8.1.4) Gecko/20061201 Epiphany/2.18 Firefox/2.0.0.4 (Ubuntu-feisty)

So it's up to you now.
Thanks.
Comment by Jan de Groot (JGC) - Sunday, 10 February 2008, 17:10 GMT
The epiphany change was done upstream, so our epiphany package also has it.

I don't like to change upstream behaviour when the things that it should fix are broken by itself. Remember that nightly snapshots don't have firefox in the useragent either. Are those browsers broken too then?

I can understand shitty webdevelopment though, when I use the Request.Browser object in ASP.Net, I can't get anything else than Firefox out of a firefox browser. No Gecko, no rv: string, just firefox and 2.0.0.12. Looking at the raw useragent is possible though.

Loading...