How to install PureOS on the Librem 5

I wrote up some instructions for how to install PureOS on the Librem 5, because I found Purism’s documentation confusing:

It strikes me that we also need instructions for doing this in Windows, Mac OS and BSD. :wink:


Thank you for the great write-up.

git clone

I wonder if we have an option to check for authenticity and integrity of the image. This is quite important for a phone that has a lot of your private information. Qubes does this right.

Mobian provides a possibility to verify the signature with their key.

@fsflover , I checked the code of the librem5-flash-image/scripts/ file and it does verify that the downloaded image file is the correct size in bytes and its SHA256 hashing checksum is correct. However, it doesn’t verify whether the downloaded u-boot file is correct. I will file a bug report about that.

1 Like

Here is the bug report: Need to verify that the downloaded u-boot file is correct size and has correct SHA256 checksum (#15) · Issues · Librem5 / librem5-flash-image · GitLab

1 Like

For Windows there are 2 options:

  1. You create an USB-Live-Stick via Librem 5 (as long as the phone is able to run).
  2. You create it via Windows (may curse some troubles) or you create a VM on Windows, which is the easier way if Librem 5 does not function well anymore.

It shouldn’t be too hard to make it work in Windows, since NXP provides uuu for Windows and the script uses standard Python, but I did notice some lines in the code which assume using a Debian derivative:

   logging.error("Cannot load Jenkins\nTry running: sudo apt install python3-jenkins")

I tried all 3 ways I described above and only PureOS via live USB using Windows to prepare USB-device was not working correctly (didn’t load PureOS correctly - forgot about the issue). The easiest way was that via Librem 5 for sure. But using VM is also a valid option and just few steps more to do.