Unofficial client for Nvidia's GeForce NOW game streaming service, providing a native Linux desktop experince and some additional features such as Discord rich presence.
This project and its contributors are not affiliated with Nvidia, nor it's GeForce NOW product. This repository does not contain any Nvidia / GeForce NOW software. It is simply an Electron wrapper that loads the official GFN web application page, just as it would in a regular web browser.
- Go to the latest release.
- Download the specific file that best fits your disto.
If you've installed it through a package manager, then you can launch it directly from your desktop environment.
You can also run geforcenow
(or io.github.hmlendea.geforcenow-electron
if you're using flatpak) in the terminal.
- Super + F / F11: Toggles the fullscreen mode (Fullscreen is always forced ON while gaming)
- ALT + F4 / F4: Exits app
- ALT + Home: Switches back to the GeForce NOW Home page
- CTRL + M: Toggles the microphone
- F12: Toggles chrome dev tools
- --spoof-chromeos: Uses a ChromeOS UserAgent string
- --spoof-windows: Uses a Windows UserAgent string
- --disable-rpc: Disables the Discord Rich Presence
Currently NVIDIA doesn't allow changing the keyboard layout on Linux.
In order to get access to that setting, use one of the UA-spoofing CLI arguments mentioned above.
Discord RPC should work out-of-the-box in most situations, with no user input required. The exceptional cases are documented below.
Run the following commands in a terminal: (source)
mkdir -p ~/.config/user-tmpfiles.d
echo 'L %t/discord-ipc-0 - - - - app/com.discordapp.Discord/discord-ipc-0' > ~/.config/user-tmpfiles.d/discord-rpc.conf
systemctl --user enable --now systemd-tmpfiles-setup.service
Currently, the only way to disable it is to use the --disable-rpc
command-line argument (documented above)
In order to make this permanent, you can edit the applications desktop file launcher and add that argument to the Exec
line
You will need to install npm, the Node.js package manager. On most distributions, the package is simply called npm
.
Once you have npm, clone the wrapper to a convenient location:
git clone https://github.com/hmlendea/gfn-electron.git
npm install
npm start
On subsequent runs, npm start
will be all that's required.
Simply pull the latest version of master and install any changed dependencies:
git checkout master
git pull
npm install