How to Run Netflix on the Raspberry Pi

In this tutorial, we will be showing you how to get Netflix up and running on your Raspberry Pi.

Raspberry Pi Netflix

Netflix has been one of the hardest things to get working on the Raspberry Pi thanks to its reliance on a DRM (Digital Rights Management) that tends only to be distributed for closed platforms.

With this guide, we will be making use of a plugin for the popular media center Kodi. We found this plugin combined with Kodi is one of the best ways of getting Netflix to run on your Raspberry Pi.

We have chosen to go down the Kodi route to run Netflix on the Pi due to the web browser methods becoming unreliable and being broken easily.

Getting Netflix to run on your Raspberry Pi requires a few different steps as the software will need to obtain a version of the DRM library so that you can stream videos.

You can make use of operating systems that package Kodi, such as OSMC, as these same steps should work as long as you have terminal access.

Throughout this tutorial we will be making use of the Raspbian operating system.

Equipment List

Here is a list of all the equipment that we recommend you have for completing this Raspberry Pi Netflix tutorial.

Recommended

Raspberry Pi 2, 3 or 4

Micro SD Card 16GB+ recommended

Power Supply

USB Keyboard

USB Mouse

HDMI Cable

Ethernet Cord or WiFi dongle (The Pi 3 and 4 has WiFi inbuilt)

Optional

Raspberry Pi Case

Preparing for Netflix on the Raspberry Pi

1. Before we can get Netflix working on the Raspberry Pi, we will have to do a few things.

The first thing we should do is update all the packages already installed on your Pi.

Doing this ensures that any out of date packages won’t end up breaking the tutorial.

To update all your packages, go ahead, and run the following two commands.

sudo apt update
sudo apt upgrade

2. Once the update process has completed, we can now go ahead and install Kodi to the Raspberry Pi.

The reason that we are using Kodi is that it is currently the most reliable way of accessing Netflix on the Raspberry Pi.

Web browser methods for accessing Netflix appear to get broken often and can be painful to set up and maintain. Kodi is also pretty well optimized for the Raspberry Pi.

If you are running a distribution like OSMC, you can skip to the next step of this guide as you will have Kodi installed already.

To install Kodi and all the packages we require, run the following command.

sudo apt install kodi kodi-peripheral-joystick kodi-pvr-iptvsimple kodi-inputstream-adaptive kodi-inputstream-rtmp

You will see that we are installing several other packages alongside Kodi. These extra packages are required for the Kodi Netflix plugin to function correctly on our Raspberry Pi.

3. We need to now install some extra packages to go alongside our Kodi installation.

These packages contain the Python package manager “pip” as well as some extras that are needed for us to run the Kodi Netflix Plugin.

Run the following command to install the last few packages we require.

sudo apt install build-essential python-pip python-dev libffi-dev libssl-dev

4. Next, we will install the Python packages that are required by the Netflix plugin for Kodi.

We can install these Python packages to our Pi by making use of the pip package manager.

Use the command below to install all the required Python packages.

sudo pip install setuptools wheel pycryptodomex

5. With all the required packages now installed, there is one last thing we need to do.

We need to download the CastagnaIT repository. This repository will allow us to install the Netflix plugin for Kodi and have it automatically updated.

We can download the latest version of the repository directly from the project’s GitHub by running the following command.

wget https://github.com/castagnait/repository.castagnait/raw/master/repository.castagnait-1.0.0.zip

Once the repository plugin has finished downloading, you can proceed with getting Netflix working on your Raspberry Pi.

Adding the Repository for Netflix on Kodi

In this section, we will be showing you how to make use of all the packages we just installed to run Netflix on your Raspberry Pi.

1. The first step is to launch Kodi on your Raspberry Pi.

You can do this by clicking the start menu icon in the top left-hand corner, hovering over “Sound & Video” then clicking “Kodi“.

2. To get started, we will need to change Kodi’s settings to allow unknown sources to be installed. If we don’t change this option, we won’t be able to install the Netflix plugin.

To do this, we need to open up the settings page within Kodi. If you are using the default theme, the button to get to this page is the cog symbol at the top of the sidebar.

Go to Kodi Settings Cog

3. Within this menu, you need to click “System” in the bottom right-hand corner of the screen.

Go to Kodi System Settings

4. Now that we are in the system settings page we need to go and click “Add-ons” in the side bar.

System Settings - Add-on settings

5. Next, click the toggle for the “Unknown sources” option.

You will get a few warning messages. It is safe to ignore these warnings as long as you are only installing plugins from reputable sources like we are.

Changing this option will allow us to install the repository that we downloaded to our Raspberry Pi in the previous section.

Add-on Settings Allow Unknown Sources

Once you have enabled “Unknown Sources“, press the ESC key to return to the main settings page.

6. Now that we are back on the main settings page, go ahead and click the “Add-ons” menu button.

This button will take us to the Add-ons settings page and allow us to install the CastagnaIT repository from which we can download the Netflix Plugin for our Raspberry Pi.

Go to Add-on Settings

7. Once in the “Add-ons” settings page, click the “Install from zip file” option to continue.

Install add-on from zip file

8. With the “Install from zip file” dialog now open, click “Home folder” as that is where we downloaded the repository to.

Select Home Folder

9. Scroll to the bottom of the next dialog, then double-click the file called “repository.castagnait-1.0.0.zip” to install the repository.

Install CastagnaIT Repository

Now that we have set up the repository, we can proceed to install the Netflix Plugin to our Raspberry Pi and also set up anything else we may need.

Installing the Netflix Plugin to the Pi

1. With the required repository now installed to our Raspberry Pi, we can go ahead and install the Netflix plugin through Kodi’s interface.

Click the “Install from repository” option in the “Add-ons” page to proceed.

Install From Repository

2. In this menu, look for the “CastagnaIT Repository” option and select it to open the repository.

Load CastagnaIT Repository

3. Now that we are within the CastagnaIT repository, we can now locate and install the Netflix plugin.

To find the Netflix plugin, we need to open the “Video add-ons” category.

Video Add-ons Category

4. Open the only entry on this page, the “Netflix” plugin.

We will be able to start the installation process on the next screen.

Select Netflix Add-on to install

5. On this screen, click the “Install” button in the bottom right-hand corner.

Install Netflix Add-on

6. Before the installation begins, you will be asked if you are okay with installing some additional plugins.

As the Netflix plugin relies on all of these to function, the only real option is to select “Ok“.

Install Additional Plugins

This process can take a little bit of time as it will need to install these additional add-ons that the Netflix plugin relies on.

7. With the Netflix plugin now installed to the Raspberry Pi, there are a couple more things that we will need to do before we are ready to open it.

To start with, we need to go ahead and enable the “Adaptive Inputstream” plugin.

We can enable this plugin by first going into the “My Add-ons” page.

Go To My add-ons

8. Now that we are in the “My Add-ons” page, we need to go into the “VideoPlayer Inputstream” category.

VideoPlayer InputStream Add-ons

9. On this screen, go ahead and open up the “InputStream Adaptive” plugin.

This plugin is what the Netflix add-on relies on for streaming video data from the Netflix servers to your Raspberry Pi.

Select InputStream Adaptive

10. On this screen, click the “Enable” button to activate the InputStream Adaptive plugin.

 Enable InputStream Adaptive

With the InputStream Adaptive plugin now enabled, we can finally go ahead and run the Netflix plugin. Return to the main menu for the next section.

Running Netflix on the Raspberry Pi

1. Back on the main menu, click “Add-ons” (1.) in the sidebar.

Once the “Add-ons” page is open, go ahead and click “Netflix” (2.) to open up the Netflix add-on.

Launch Netflix on the Raspberry Pi

The first time that you open the Netflix add-on, you will be asked to enter your login details. The plugin needs these details to log you in to Netflix.

Enter your details to proceed using Netflix on your Raspberry Pi.

2. Now within the Netflix add-on, go ahead and pick a show that you want to watch.

The first time you watch a show, you will have to run through the process of installing the DRM modules the plugin requires to work.

Without these DRM modules the plugin will not be able to stream the video content from Netflix. These modules are the same reason web browsers on the Raspberry Pi struggle to deal with Netflix.

3. When notified that Widevine CDM is required, click the “Install Widevine” button to begin the installation process.

Install Widevine CDM

4. You will then see another notification stating that you must have at least 3.1GB of free disk space. The reason for this is that the installer has to obtain Widevine CDM from a ChromeOS image.

There are a few legal reasons why we can’t just download the Widevine CDM directly.

Click the “Yes” button to proceed with the installation process.

Download ChromeOS for Widevine CDM

5. Before your Raspberry Pi can start the process of obtaining the required files to use Netflix, you will need to first agree to a EULA from Google.

Click “I Accept” to agree to the EULA and proceed with the download process.

Accept ChromeOS and Widevine EULA

6. You will now see a message stating that the plugin will need to make use of tools with root permissions to be able to extract the required file from the ChromeOS image.

To proceed with this process, click the “I Accept” button.

 Running with root perms

7. Now, wait for the download and extraction process to finish. This process can take some time, so now is a good time to grab a cup of coffee.

If it ever appears that the progress bar is stuck, please give the program more time to run, as it has to extract a single file from a large image.

Download and Extraction process of ChromeOS

8. Once the Widevine process has completed, you will now be able to watch any videos that you want straight from Netflix to your Raspberry Pi.

Below you can see us running the Netflix exclusive TV show, “The Crown” on our Raspberry Pi.
Netflix Successfully Running on Kodi

Hopefully at this point you will now successfully be able to watch Netflix on your Raspberry Pi.

If you have ran into any issues with running Netflix within Kodi, then feel free to drop a comment below.

4 Comments

  1. Lenny on

    Thanks you so much. I’ve been looking for a good step-by-step tutorial on this. One minor thing, and I’m not a linux expert, but I think Step 2 in “Preparing for Netflix on the Raspberry Pi” is missing an install, as in:

    sudo apt install kodi kodi-peripheral-joystick kodi-pvr-iptvsimple kodi-inputstream-adaptive kodi-inputstream-rtmp

    At least that is the only way I could get it to work.

    1. Gus on

      Hi Lenny, thanks for pointing this out! We have fixed it now.

  2. Isaac on

    Great tutorial!

    Unfortunately, I I’m having this issue locating packages early in the installation steps:

    E: Unable to locate package kodi-peripheral-joystick
    E: Unable to locate package kodi-inputstream-adaptive
    E: Unable to locate package kodi-inputstream-rtmp

    1. Emmet on

      Hi Isaac,

      I see that you are making use of OSMC.

      Sorry, I should have split the install steps in the original tutorial, you don’t need to worry about installing the Kodi packages on OSMC as they should already exist.

      I have now corrected this in the tutorial by splitting the install steps into two.

      Let me know if you run into any more issues.

      Cheers,
      Emmet

Leave a Reply

Your email address will not be published. Required fields are marked *