How To Run Zwift on Linux

How To Run Zwift on Linux

Getting Zwift to run on Linux was a journey I started just over a year ago. I didn’t get very far with my effort, but since then a lot of progress has been made by the Wine developers and others in the community, and Zwift is now (mostly) playable on Linux. I’ll admit there are some workarounds required, like having to use the Zwift Companion app to connect sensors. But on the whole, it works well. So I wanted to summarise the process for anyone who wants to try it for themselves.

I’m using Lutris, a gaming client for Linux, to script out all the steps needed to make games playable on Linux. If you’ve never used it before, I’d really recommend it for gaming on Linux in general. First things first, you’re going to have to download and install Lutris for your Linux distribution. Thankfully Lutris has a great help page explaining how to do this for most distributions.

Installation

Once you’ve got Lutris installed, installing Zwift is pretty easy. In Lutris search for Zwift, select the only result, and click the “Install” button to start the installation process. You can also start the installer from the command line by running lutris install/zwift-windows.

This might take a while, and depending on your Internet speed could be anywhere from 10 minutes to around an hour.

Once the Zwift launcher has finished downloading and updating, we’ve hit the first hurdle that can’t be scripted with Lutris.

The launcher will appear as a blank white window. Actually, the launcher is displaying a web page, but Wine can’t render properly. Thankfully all the files are already downloaded, so all you need to do is quit the launcher window, and exit Zwift from the Wine system menu. After that, the Lutris installer should complete.

Running Zwift

Zwift requires the Launcher to be running all the time while in-game. However, Lutris only allows 1 application to launch from the “Play” button. So before you hit the play button, first you need to click “Run EXE inside wine prefix” and browse to drive_c\Program Files (x86)\Zwift\ZwiftLauncher. You should see that familiar blank white screen.

Finally, you can hit the “Play” button and Ride On 👍

About The Author

Jamie Magee

Jamie is an avid triathlete and all-round geek. When he's not swimming, cycling, or running you'll find him tinkering with some code.

Subscribe
Notify of
guest
40 Comments
oldest
newest most voted
Inline Feedbacks
View all comments
mike
mike
6 months ago

I really enjoy linux and its many varints on the Raspberry Pi.
Im hoping zwift finds its way to nvidia shields sometime soon.

andre
andre
6 months ago

Thanks for sharing it, I have a laptop with Ubuntu installed and really wanna stop using my iphone to run zwfit. Did you know how many devices can be paired using companion app?

Strobes27
Strobes27
6 months ago

I just read a similar how to on slowtwitch the other day. Any chance that was written by the same person?

Thanks a lot for this!

One issue on my side with zwift on linux: my pc gets very hot. So hot that I have to stop after 5 minutes otherwise I fear that something gets damaged. Spec wise it should not be an issue. Any idea what might be the problem?

David Cooper
David Cooper
6 months ago
Reply to  Strobes27

Could be your cooling fan has conked out.

Andy
Andy
6 months ago

I have been using Zwift on Debian via Wine since the start of lockdown. I have to type 3 commands across 2 terminals to get it to run but have no other issues. I seem to have less problems than those trying to us it with Apple products.
The only thing that frustrates me is when you save you have to re-launch whereas Windows takes you back to that webpage which Wine can’t render.
I pair 3 things with the companion App and have no issues with an overheating laptop.
Oh, USB support in Wine would be great…

Marty Henderson
Marty Henderson
6 months ago

Nicely done! What’s your hardware setup and what sort of frame rates are you getting?

David
David
6 months ago

We need to get Zwift on Stadia or any other streaming gaming platform. Then we will get rid of Wine and all the portability problems we face in Linux with games. I wish this could be an option.

nathan
nathan
6 months ago

Yea having tos companon app to pair sensors is a bit crap but it works

Mike Elder
Mike Elder
6 months ago

Obvious question…. Why?!

Yatesmyth
Yatesmyth
6 months ago
Reply to  Mike Elder

Bluetooth functionality doesn’t work in Wine.

Tim
Tim
6 months ago
Reply to  Mike Elder

Obvious question…. Why what ? Zwift on Linux, thought that might be easy to comprehend (it’s a widely used platform in the tech, VFX and graphics world, becoming more popular in the end-user gaming one) – so something else more specific ?

Evo
Evo
6 months ago
Reply to  Mike Elder

Why what?

BobS
BobS
5 months ago
Reply to  Mike Elder

Why not?!

Sam
Sam
6 months ago

That’s a fantastic Howto, Thanks for sharing this !

Colin Peerman
Colin Peerman
6 months ago

Why go thru all that ballache, for no gain at all?

GMan
GMan
5 months ago
Reply to  Colin Peerman

Because some of us don’t use windows or mac, so it is actually a “gain” of being able to zwift over not being able to.

Pete Watson
Pete Watson
6 months ago

Is there any way to pair ant+ sensors via the companion app? I’m having no luck (using android phone).

matt
matt
5 months ago

Hey, thanks for putting together the how-to. I’ve got Lutris installed and the Zwift install seems to have worked but after clicking ‘Run EXE inside wine prefix’ and getting the blank screen, I click ‘Play’ and get ‘zwiftapp.exe is not responding’ before it dies. Any ideas on how to troubleshoot? I’m unfamiliar with Lutris and Wine so any tips on where to find logs or anything else to try is appreciated!

matt
matt
5 months ago

https://forum.slowtwitch.com/forum/Slowtwitch_Forums_C1/Triathlon_Forum_F1/Zwift_running_on_any_Linux_Distro_P6811732/?search_string=lutris#p7347982

Seem to have found the answer here, export MESA_GL_VERSION_OVERRIDE=3.1 in the terminal, then launch lutris from the same terminal and do the whole launch from wine then play thing. I’ve got integrated graphics, along the lines of what the forum poster mentioned.

Jonathan Gagnon
Jonathan Gagnon
5 months ago

Maybe someone can help me with this. Try to install Zwift from Lutris but when update page prompt its seem it cannot get internet connection? I try a another method with Wine and the same problem. Maybe I miss something in procedure?

Jonathan Gagnon
Jonathan Gagnon
5 months ago

Ok I’m good finally installed it with update

bikingyom
bikingyom
5 months ago

Thanks for this amazing tutorial! Works fine by me, is there a way to avoid typing my zwift password everytime I launch it?

Roshan Mani
Roshan Mani
5 months ago

Has this broken with the latest update from zwift?

Jonathan Crissey
Jonathan Crissey
5 months ago
Reply to  Roshan Mani

Seems like it, I keep getting an error about .net 4xxx required, tried to update the installer and got it installed but when I try to hit play after running from prefix it say specified process cannot be found

Jonathan Crissey
Jonathan Crissey
5 months ago

I got it working after changing the config to use the 64 bit run from process exe

Jonathan Crissey
Jonathan Crissey
5 months ago

Check my draft installer script on lutris

Eicke Hecht
Eicke Hecht
4 months ago

How can I get it to work now. Where can i find the draft installer?

Eicke Hecht
Eicke Hecht
4 months ago
Reply to  Eicke Hecht

The exact error message i get is:
ZwiftLauncher.exe
To run this application you first must install one of the following versions of the .Net Framework
v4.0.30319
Contact your application publisher….

Jonathan Crissey
Jonathan Crissey
3 months ago
Reply to  Eicke Hecht

the draft installer is on the lutris site

Roshan Mani
Roshan Mani
3 months ago
Reply to  Eicke Hecht

See if you can get an old version of Zwift installer, which has the ZwiftLauncher.exe dated 5/Sep/2019. Just use that and let Zwift normally update the game components through that package.

Roshan Mani
Roshan Mani
3 months ago

I went back to the original ZwiftLauncher.exe dated 5/Sep/2019, and everything started working again.. Have archived an old copy of the install package for if/when this happens again..

Dupont gérome
Dupont gérome
2 months ago

Hello, can you précise your solution plz ? thx

Dimi
Dimi
4 months ago

I get a Zwift error just after the installation and then an alert that the required process was not found

Dimi
Dimi
4 months ago
Reply to  Dimi

ok I fixed that by changing the wine version but now I have another problem with javascript: fixme:msctf:InputProcessorProfileMgr_GetActiveProfile

Eric
Eric
4 months ago
Reply to  Dimi

What version did you change to? Stuck with same issue.

Dimi
Dimi
4 months ago
Reply to  Dimi

all good finally but it can’t find my hammer 🙁

Eric
Eric
4 months ago
Reply to  Dimi

As I understand it, you have to use the companion app on your phone to sync with sensors since Bluetooth support in Wine is currently pretty weak.

Roshan Mani
Roshan Mani
3 months ago

While running Zwift this way works well for me, stopping the game after a ride causes some Wine error and I have to kill the process. Is there any way to get a clean shut-down as well?

lirit
lirit
24 days ago

Hi,
I followed all the instructions till “Finally, you can hit the “Play” button and Ride On 👍”
my machine gets me out this error: RunFromProcess/ Cannot find the specified process

the terminal shows this: ERROR: ld.so: object ‘/usr/$LIB/libgamemodeauto.so.0’ from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.

Kishan
Kishan
21 days ago
Reply to  lirit

were you able to solve?

40
0
Would love your thoughts, please comment.x
()
x