So you love Linux but you want to watch Netflix? That used to be a big problem, but it’s not any more. I’ve found two main solutions on different blogs which required a few compromises. Those were:
- Watch Netflix in a virtual machine. For this you need a Windows license and a virtual machine set up to run Windows which runs in your Linux OS. Not a lot of fun and not for those who refrain from using Windows for (among other things) ideological reasons, like me.
- Watch Netflix using wine. This required a lot of configuring or installing the netflix-desktop package, which is available for OpenSUSE and may or may not be available for your distribution. I’m not crazy about wine but I’d been doing this for a while until Netflix stopped letting me watch because the browser’s user agent mysteriously was being broadcast as the Linux version of Firefox. Probably the best way to get around it would have been to just install the Windows Firefox in wine and configure everything myself, but that would have been a lot of work.
Fortunately, there is an easier way of doing this. If you’re using OpenSUSE, you can use these instructions verbatim – otherwise you may need to adapt a few things to your distribution, but that shouldn’t be a problem.
This solution isn’t entirely free of wine, but at least it’s in the background. Everything you watch will be in your native Firefox window, so you’ll have a completely seamless Netflix experience within your Linux desktop.
1. Install pipelight
Netflix relies on the proprietary Microsoft Silverlight to broadcast its videos, apparently because this allows it to send over its video with a DRM. The Mono-based Moonlight is able to stream videos sent out for Silverlight, but it can’t handle DRMs. Pipelight can. It supports video with DRM by using a plugin that uses wine to load the necessary Silverlight libraries, so the video can be streamed without an error. All you have to do to use Pipelight is have it installed and navigate to a page that’s streaming video with Silverlight. Pipelight will notice and take care of the rest – installing any necessary libraries in the background, or, if they’re already installed, just passing through the video to you.
I got a dependency error when I tried to install pipelight, so I used rbos’ pipelight repository at http://download.opensuse.org/repositories/home:/rbos:/pipelight/openSUSE_13.1/. You can add it with YAST or in a shell with:
zypper ar --refresh http://download.opensuse.org/repositories/home:/rbos:/pipelight/openSUSE_13.1/home:rbos:pipelight.repo zypper refresh zypper install pipelight
Of course, you need to replace “13.1” with your version of OpenSUSE if you’re using another version. After that, pipelight should be installed.
At this point, you would technically be able to load videos from Netflix, but Netflix actually checks and makes sure you’re using Windows, so you need to change your browser user agent to make Netflix happy. Stupid, but true.
2. Set your browser’s user agent to claim it’s using Windows
There are all kinds of ways to do this, including manually configuring your browser to override its user agent string. I found the simplest way was to use a Firefox plugin called User Agent Overrider. It’s pretty self-explanatory: You click on the icon to activate it and can also set your user agent from a pull-down list. Set it to Windows and you’re done.
3. Enjoy Netflix!
Not navigate to the Netflix page and start streaming movies. It’s as simple as that!
If you’re not in the United States, you will need to tunnel your connection to look like it’s coming from there (e.g. Tor or Hide My Ass, I’ve had good experience with both), but that’s a whole different post.