Subject: bug#44678: closed (Re: bug#44678: Set a Firefox user agent for our Icecat build)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 05 Aug 2021 16:49:01 +0000

Your bug report

#44678: Set a Firefox user agent for our Icecat build

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
44678: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=44678
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#44678: Set a Firefox user agent for our Icecat build
From: Maxim Cournoyer <[email-masked]>
To: Efraim Flashner <[email-masked]>
Cc: [email-masked], Arun Isaac <[email-masked]>
Date: Thu, 05 Aug 2021 12:48:12 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

Efraim Flashner <[email-masked]> writes:

> On Wed, Aug 04, 2021 at 11:22:58PM -0400, Maxim Cournoyer wrote:
>> Hi Arun,
>> 
>> Arun Isaac <[email-masked]> writes:
>> 
>> > Hi,
>> >
>> > Many sites---jitsi among many others---don't work properly when they see
>> > an Icecat user agent. Instead, when the user agent is set to a Firefox
>> > user agent, these sites work as expected. Users can do this manually by
>> > installing user agent switching extensions such as uaswitcher, but it
>> > would be much better if our Icecat package, by default, came with a
>> > Firefox user agent, and everything worked normally without any user
>> > intervention.
>> >
>> > This bug report arose out of a discussion on help-guix. See
>> > https://lists.gnu.org/archive/html/help-guix/2020-11/msg00082.html
>> >
>> > I would normally volunteer a patch, but building Icecat takes too long
>> > (> 24 hours) on my slow computer. It would be nice if someone with a
>> > faster build machine handled this.
>> 
>> I thought the default user agent was already that of Firefox for Windows
>> (!), purportedly to make it less unique (thus making fingerprinting of
>> browsers/users more difficult).
>> 
>> Isn't it the case?  I changed mine long ago so I don't remember (to
>> please some broken site).
>> 
>> Thank you,
>> 
>> Maxim
>
> I remember a discussion forever ago about making the User-Agent Guix
> specific but we ended up not going that way in order to try to provide
> more anonymity. I don't believe I've changed my user agent ever, and
> here's what I'm told mine is:
>
> User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0
>
> If you want to experiment with it you can send a patch (and tag me) and
> I'll build icecat locally and check it out and let you know how it goes.
> Icecat builds fairly quickly for me.

Thanks for the information.  I got curious and did some archeology in
the gnuzilla repository [0] and found the commit that made Windows NT user
agent string go away:

--8<---------------cut here---------------start------------->8---
a25c630a21d78be6515648d8d65cf13fb633c3b5
Author:     Ruben Rodriguez <[email-masked]>
AuthorDate: Thu Sep 13 20:47:06 2018 -0400
Commit:     Ruben Rodriguez <[email-masked]>
CommitDate: Thu Sep 13 21:02:13 2018 -0400

Parent:     f70c9f0 Some customizations to the UI
Contained:  master
Follows:    v52.1.0 (21)
Precedes:   v60.2.0 (3)

Preserve Firefox as UserAgent

1 file changed, 8 insertions(+), 2 deletions(-)
makeicecat | 10 ++++++++--

modified   makeicecat
@@ -405,6 +405,11 @@ sed 's/mozilla-bin/icecat-bin/' -i build/unix/run-mozilla.sh
 
 find -type f | grep run-mozilla | xargs prename s/mozilla/icecat/
 
+# do not alter useragent/platform/oscpu/etc with fingerprinting countermeasure, it makes things worse
+sed '/ShouldResistFingerprinting/,/}/s/^/\/\//' -i ./netwerk/protocol/http/nsHttpHandler.cpp
+sed '/If fingerprinting resistance is on/,/}/s/^/\/\//' -i ./dom/base/Navigator.cpp
+
+# Leave user agent as Firefox
 sed "/MOZILLA_UAVERSION/ s:IceCat/:Firefox/:" -i netwerk/protocol/http/nsHttpHandler.cpp
 
 find . -name region.properties |xargs -i /bin/sed 's_https://www.mibbit.*__' -i {}
@@ -421,9 +426,9 @@ cat << EOF >> browser/app/profile/icecat.js
 // Set useragent to Firefox compatible
 //pref("general.useragent.compatMode.firefox",true);
 // Spoof the useragent to a generic one
-pref("general.useragent.compatMode.firefox",true);
+//pref("general.useragent.compatMode.icecat",true);
 // Spoof the useragent to a generic one
-pref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:${FFMAJOR}.0) Gecko/20100101 Firefox/${FFMAJOR}.0");
+//pref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:${FFMAJOR}.0) Gecko/20100101 Firefox/${FFMAJOR}.0");
 pref("general.appname.override", "Netscape");
 pref("general.appversion.override", "${FFMAJOR}.0");
 pref("general.buildID.override", "Gecko/20100101");
@@ -433,6 +438,7 @@ EOF
 
 cat << EOF >> browser/confvars.sh
 # IceCat settings
+MOZ_APP_UA_NAME=IceCat
 MOZ_APP_VENDOR=GNU
 MOZ_APP_VERSION=$FFVERSION
 MOZ_APP_PROFILE=mozilla/icecat
--8<---------------cut here---------------end--------------->8---

Closing.

Thanks,

Maxim

[0]  git://git.savannah.gnu.org/gnuzilla.git

Subject: Set a Firefox user agent for our Icecat build
From: Arun Isaac <[email-masked]>
To: [email-masked]
Date: Mon, 16 Nov 2020 11:47:24 +0530
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

Many sites---jitsi among many others---don't work properly when they see
an Icecat user agent. Instead, when the user agent is set to a Firefox
user agent, these sites work as expected. Users can do this manually by
installing user agent switching extensions such as uaswitcher, but it
would be much better if our Icecat package, by default, came with a
Firefox user agent, and everything worked normally without any user
intervention.

This bug report arose out of a discussion on help-guix. See
https://lists.gnu.org/archive/html/help-guix/2020-11/msg00082.html

I would normally volunteer a patch, but building Icecat takes too long
(> 24 hours) on my slow computer. It would be nice if someone with a
faster build machine handled this.

Thanks,
Arun