Comments (23)
Closing this as OS spoofing is getting removed (See #209), and also Genshin Impact is only available on GFN on Windows.
from gfn-electron.
It is a website after all, and the web is open and platform agnostic. Until they say it goes against their terms to get a decent settings menu and access to all games by obfuscating your OS, I see no reason to accept their odd preferential treatment of windows. I respect your decision even if I don't agree, thank you for your work up until this point.
from gfn-electron.
I mentioned it here for others because it's a place you'll find if you're looking for a workaround, as I haven't found one yet.
from gfn-electron.
Same. Used appimage.
I suspect that the problem may be with navigator.userAgentData (which allows to get real userAgent platform, even if you spoof it with Windows one).
I encountered this problem few month ago when trying to play on gfn through Chrome. I used --disable-features=UserAgentClientHint
flag when running Chrome which seemed to solve the problem (it just disables userAgentData which in turn forces geforce to check spoofed user agent, believing that you are on windows).
Maybe you can add support to such flag for gfn-electron and it may solve the problem.
Would be great if you do )
from gfn-electron.
I am seeing this too, i no longer have the higher resolution options I had yesterday.
from gfn-electron.
Same here! Literally two days ago and no longer showing.
from gfn-electron.
Here to say the same, spoof option seems to fail.
from gfn-electron.
Good hint, thank you.
I used
--disable-features=UserAgentClientHint
flag when running Chrome which seemed to solve the problem (it just disables userAgentData which in turn forces geforce to check spoofed user agent, believing that you are on windows).
Does this still work, though? I just ran the Chrome flatpak (flatpak run com.google.Chrome --disable-features=UserAgentClientHint
) and GFN still seems to know that I'm not on Windows.
from gfn-electron.
I believe that argument is something for chrome, not necessarily GFN. Unless GFN has all these flags built in it will probably require a fix in a new release. I don't know much about UA hints or I'd try to troubleshoot it myself
from gfn-electron.
Does this still work, though? I just ran the Chrome flatpak (
flatpak run com.google.Chrome --disable-features=UserAgentClientHint
) and GFN still seems to know that I'm not on Windows.
Did you install user agent switcher extension with windows user agent?
I use this one: https://chrome.google.com/webstore/detail/user-agent-switcher/kchfmpdcejfkipopnolndinkeoipnoia
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36
from gfn-electron.
I believe that argument is something for chrome, not necessarily GFN. Unless GFN has all these flags built in it will probably require a fix in a new release. I don't know much about UA hints or I'd try to troubleshoot it myself
I'm not sure on which logic gfn-electron works. I noticed in logs that it uses UserAgent, so I thought that maybe it can also pass this flag. (It doesn't work now, I tried passing this flag to gfn-electron and it just ignores it I think)
from gfn-electron.
Does this still work, though? I just ran the Chrome flatpak (
flatpak run com.google.Chrome --disable-features=UserAgentClientHint
) and GFN still seems to know that I'm not on Windows.Did you install user agent switcher extension with windows user agent? I use this one: https://chrome.google.com/webstore/detail/user-agent-switcher/kchfmpdcejfkipopnolndinkeoipnoia
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36
I just did that on Chrome. It still detects it as non Windows.
from gfn-electron.
BTW, just out of curiosity, this is a very interesting discussion on the subject:
https://security.stackexchange.com/questions/47467/can-a-website-determine-what-os-or-webbrowser-a-visitor-is-using-if-the-useragen
from gfn-electron.
I just did that on Chrome. It still detects it as non Windows.
Strange, it works for me... Also I turned off cache for geforce now in developer tools > network (there is a checkbox)... Maybe you can try this...
Also what I want to note - even if it works fine in chrome, if I open incognito mode (still with user agent, with flag and turn off the cache) - geforce still is able to detect me as non windows and block some games...
from gfn-electron.
I just did that on Chrome. It still detects it as non Windows.
Strange, it works for me... Also I turned off cache for geforce now in developer tools > network (there is a checkbox)... Maybe you can try this... Also what I want to note - even if it works fine in chrome, if I open incognito mode (still with user agent, with flag and turn off the cache) - geforce still is able to detect me as non windows and block some games...
It doesn't change anything. It is strange indeed, because whatismybrowser.com detects WINDOWS NT 10.0
from gfn-electron.
Supposing the issue is not on my side alone, i wonder if they could write a Java exploit to blindly parse uname -r
on every accessing client.
from gfn-electron.
You can install the windows version of chrome via wine which seems to be working (my mouse input is really laggy through but playing via a controller works fine). The option to pick 1440p is showing at least, which is more than the Linux Chrome version is showing.
from gfn-electron.
Respectfully, the point of raising the issue is to get it fixed, most of us know there are workarounds. The point of this client is to not have that overhead. I hope the dev comments soon, I use this to play genshin on steam deck currently, and it's been broken for a few weeks now
from gfn-electron.
I do not know if that can help, but when I opened the devtools, I saw that the header "Sec-Ch-Ua-Platform" changed after a particular request.
It starts with requests having the spoofed header with "Windows", as intended.
Then 1 or 2 requests are made to https://www.nvidia.com/auth/hints/
, without the spoofed header.
And after that every other requests are made with the value "Linux" in this header.
ATM, I am not sure what this hints script does, but it succeed in finding it runs on a linux, and then it totally bypass the parameters done in electron, overriding them with its own finding.
EDIT : just to add the precision that I had it run after rm -rf ~/.config/GeForce\ NOW/
, and I get the same thing everytime
from gfn-electron.
I do not know if that can help, but when I opened the devtools, I saw that the header "Sec-Ch-Ua-Platform" changed after a particular request. It starts with requests having the spoofed header with "Windows", as intended. Then 1 or 2 requests are made to
https://www.nvidia.com/auth/hints/
, without the spoofed header. And after that every other requests are made with the value "Linux" in this header.![]()
![]()
ATM, I am not sure what this hints script does, but it succeed in finding it runs on a linux, and then it totally bypass the parameters done in electron, overriding them with its own finding.
EDIT : just to add the precision that I had it run after
rm -rf ~/.config/GeForce\ NOW/
, and I get the same thing everytime
Are you sure you disabled User Agent Client Hints before taking the test?
from gfn-electron.
Here is the command line I used : geforcenow --spoof-windows --disable-rpc
.
It's here :
Line 20 in 35a386a
And in the file
/opt/geforcenow-electron/resources/app/scripts/main.js
, I added these lines at line 28, to be sure :
app.commandLine.appendSwitch(
'disable-features',
'UserAgentClientHint'
);
As well as I added the second details.requestHeaders
here between lines 71 and 85, even if I am pretty sure it does nothing :
if (process.argv.includes('--spoof-windows')) {
session.defaultSession.webRequest.onBeforeSendHeaders((details, callback) => {
details.requestHeaders['sec-ch-ua-platform'] = 'Windows';
details.requestHeaders['Sec-Ch-Ua-Platform'] = 'Windows';
callback({ cancel: false, requestHeaders: details.requestHeaders });
})
}
from gfn-electron.
Could it be related to this bug ?
electron/electron#30201 (comment)
from gfn-electron.
Closing this as OS spoofing is getting removed (See #209), and also Genshin Impact is only available on GFN on Windows.
This is a useful feature that exposes existing functionality. Removing it is lame and I find the reasoning unconvincing.
from gfn-electron.
Related Issues (20)
- [BUG] Support for Ultrawide missing HOT 5
- [BUG] Hardware decoding not working, works fine in Chrome HOT 5
- [BUG] Streaming is not supported on this browser HOT 4
- [BUG] [Steam Deck] - controller only works in game and no full screen on startup HOT 3
- HDR support for Steam Deck OLED [Feature] [Steam Deck] HOT 3
- [BUG] Low resolution HOT 1
- [improvement] add support for environment variables on top of command line args (flatseal)
- Keyboard Layout Changer
- [BUG] In regions using Cloud.GG, the log-in sites Cloudflare is stuck
- [BUG] [Steam Deck] - No Control Input even after doing the commands in the wiki HOT 2
- [BUG] Starting the app without the `--disable-rpc` argument and without running the Discord app, results in a 'Could not connect' error.
- [BUG] [FEATURE] Identifying a possible stable 'use-gl' implementation across systems
- [BUG] Termux Support HOT 5
- [BUG] It works but cannot log in HOT 1
- [BUG] Add native wayland support HOT 5
- [BUG] Flatpak crashes HOT 1
- Pressing Esc key stops capturing input HOT 1
- [BUG] Keyboard release on hyprland / wayland HOT 2
- Off Topic: Install Reshade with Shader Depth3D (Stereoscopic 3D) HOT 3
- [BUG] Esc key not working outside the app HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gfn-electron.