I’ve rewritten the instructions from @david.hamner’s video here in more direct language in a few simple steps. See if this helps.
Flashing the Librem 5 (Evergreen version)
These instructions are for the Evergreen version only, not the earlier development models. All data and downloaded apps will be erased, so back up any files you want to keep to either the micro-SD card or some other separate drive. Make note of any apps you will want to reinstall later.
On a computer running PureOS 10 byzantium
or later, or Ubuntu 22.04 LTS jammy
or later, or Debian 11 bullseye
or later, or another Linux distribution that is based on those releases or later, and…
with the Librem 5 not yet attached:
1- Open the terminal, copy and paste the following to the command line, then press Enter to execute:
sudo apt install git python3-jenkins python3-tqdm uuu
That installs the needed python
dependencies (Python is a programming language), and the uuu
package: “Universal Update Utility.”
2- Now copy and paste the following to the command line, then press Enter to execute:
git clone https://source.puri.sm/Librem5/librem5-flash-image.git
That creates a directory (i.e. folder) on your computer, called “librem5-flash-image” and downloads the available flashing scripts to it. (Git is used by software developers to coordinate their work and keep track of changes in a software project.)
3- Now copy and paste the following to the command line, then press Enter to execute:
cd librem5-flash-image
That puts you inside the librem5-flash-image
directory so that you can run the following commands. (“cd” is a terminal command meaning change to directory x.) Stay in this directory.
4- Now copy and paste only one of the following to the command line, then press Enter to execute:
(If you don’t want to bother with luks
encryption, use:)
sudo ./scripts/librem5-flash-image --variant plain
(If you do want to use luks
to encrypt the Librem 5:)
sudo ./scripts/librem5-flash-image --variant luks
That downloads the chosen OS image (disk image) and verifies the integrity of the download, and creates the needed .lst
file, whereupon it executes uuu
to flash the disk image to the Librem 5.
5- Once the scripts download has finished, follow the on-screen prompt to attach the Librem 5 for flashing. The phone itself will not provide an indication of the boot mode – the script will simply continue once you follow these steps. With the USB-A end of the cable attached to the computer, next:
Ensure that the phone is switched off.
Turn all Hardware-Kill-Switches off
Remove battery
Hold volume-up
Insert the USB-C cable into the Librem 5: (red light blinks, no green light)
Reinsert the battery: (red light is constantly on, the script will continue)
Release volume-up
Note: If the instructions above do not appear to work, try flipping the USB-C end of the cable over and replugging it into the phone.
In the terminal, you should see output similar to this, but not exactly the same:
uuu (Universal Update Utility) for nxp imx chips -- libpureos/1.2.91+0git6b465-62-g9c56e46
Success 1 Failure 0
6- Remove the USB-C cable and hold down the power button for 15-18 seconds to reset the phone.
Your phone should now be running the latest stable image.
EDIT: The package librem5-flash-image
is now available from the latest Ubuntu-based repositories for direct install, and includes all dependencies. However, as it may necessitate alterations to the above steps, and no official instructions have been made available yet, the new procedure will be left for another time.