Since more and more people will start exploring their Evergreen devices, the same questions will most likely arise as in this first forum thread here.
The intention of this section is to collect and conserve knowledge with respect to Tips & Tricks in dealing with the Librem 5 while ramping up and constantly improving.
First steps for new Librem 5 users
- Check out this post and watch the Librem 5 Video Walkthrough.
- For a full list of PureOS-related issues see the issue tracker entries
WiFi does not connect: If the Librem 5 won't connect to your network, verify that the phone's date, time, and time zone are set correctly in
Date & Time. At present, it's necessary to turn off the automatic date/time settings and set these manually. After successful connection, you can return the settings to automatic. If you're using MAC filtering on your router, don't forget to allow your Librem 5 in the router settings first. Using hidden SSID on your router may cause intermittent disconnection.
PureOS updates fail after first setup: This is caused by an improper timezone or date/time setting required to configure the WiFi connection initially. Solution: Re-enable the "Automatic Date & Time" setting in
Date & Time
- Standby mode: Currently no standby / suspend mode available. Screen just gets dark.
- Battery fuel meter needs adjustments and for the time being is not precise. E.g. when fully loaded, the red charging led turns off and battery fuel meter indicates 70%. Recent improvements have synced the battery level indicator in the notifications area to the level in the Power settings panel.
GPS seems to work internally but user interfaces in PureOS are still missing (except switching GPS on and off in
Location Services). See https://forums.puri.sm/t/app-for-gps-settings-on-librem-5/12136
- Screen Orientation: At present this is done manually from the notifications area.
- Convergence is not yet supported by the software
- Backup: See this thread: https://forums.puri.sm/t/new-post-app-showcase-backups/11459. Alternatively: Example of a quick backup solution using rsync and a systemd timer
Dark mode: Not available out-of-the-box. Can be tweaked by using GNOME Tweaks app and set any theme you want there.
Alternatively, use gsettings:
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"
Firewall: To enable ufw (uncomplicated firewall), open terminal and enter
sudo ufw statusand if it's not yet enabled, enter
sudo ufw enable. The default is usually all you need, but you have the options of adding additional rules. Use
sudo ufw disableto disable the firewall. To call up a graphical interface inside the terminal, first install gufw and install x11-xserver-utils. Next type the following command:
DISPLAY=:0 xhost +and hit enter, resulting in:
access control disabled, clients can connect from any host. Now type:
DISPLAY=:0 GDK_BACKEND=x11 sudo gufwand the graphical version will appear right in the terminal. Note that after you close the terminal, the app icon in the phone's app list will not be operational unless you repeat the above process, at least unless someone adapts it later.
IMEI: To find the IMEI of your Librem 5, go to
- Notifications: Accessed by touching the battery icon at the top right corner of the screen.
- Ringtones: Customize rintones following this blog post.
Root account: Locked by default. So there is no root password available. More technical details here. Unlock root account with
sudo passwd, check out this discussion for more background.
Terminal: Access additional Terminal keyboard controls by clicking on the globe icon (reveals Ctrl, Alt, and arrow keys, plus other symbols, controls, and Function keys - including Esc and Tab; press the
>_key to see the extras). // Here's a quick and fun introduction to basic Terminal commands: https://ubuntu.com/tutorials/command-line-for-beginners#1-overview
User name: Default user name is:
purism. Additional user names can be added from the terminal; at present this is not supported in the
Auto-mounting directories: When manually adding entries in /etc/fstab, specify the
nofailoption (in the 4th field) so that any problem with the device will not prevent the operating system from booting.
Software installations and updates (apps and OS)
Install Software: In case installing software from PureOS store does not work --> Do it from terminal e.g.
sudo apt install firefox-esr. Note that PureOS store, by default, lists software that has been adapted to the Librem 5's screen. Other packages can be found and installed using the search tool within the store, but may not scale well to the screen without further modification. Using
Scale Screenapp, a part of
librem5-goodies, to temporarily reduce scale, may help with such non-adaptive apps.
System/Software Updates: Click Updates tab within PureOS Store (and per this issue , hit the
Restart & Updatebutton twice); or, install from Terminal by entering
sudo apt update && sudo apt upgrade. (sudo = superuser do / i.e. admin level action)
Enable Flatpak with Flathub repository: Flatpak support and PureOS store integration are installed by default. Only need to add the Flathub repository via the terminal as described in their setup description step 3
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo)
Add App to favorites: To add an app from your app list to the Favorites section (i.e. pin to the top of the list), long-press on the app, then select
Add to Favorites. The Favorites section expands to accommodate the new favorite app. To remove an app from Favorites, long-press the app, then select
Remove from Favorites.
- Web Apps: You can create an app icon from a web page in the browser as shown in the Video Walkthrough at position 2m:20s. Deletion / adaption via Web Application Manager
Recommended applications for common use cases
- See this comprehensive list of mobile-optimized apps
nemo scales well without additional tweaks, especially in landscape. It can be installed with the command:
sudo apt install nemo, or search and install within PureOS store. Alternative: Install
nautilus(not yet adaptive). Download this and scale it to fit the screen. From the directory where the script is run
scale-to-fit org.gnome.nautilus on.
librem5-goodies(eg. in the terminal with the command
sudo apt install librem5-goodies). After the installation it will add several apps to the app tray:
Scale Screen... along with other included apps.
- To close an application tip on the "roof" symbol on the bottom of the screen which shows a carousel of open apps. From there you can close an app by tipping and swiping it up to the upper part/top of the mobile phone
- To close a blocked/hanging application you can use the terminal and the
killallcommand or use the app
Usage(installed by default) where you can find the process of the app if you scroll down, tip on the app name and choose "Force quit".
- Mount USB sticks: USB drives are automatically recognized and mounted (you get a notification where you can open the mounted folder in a file manager).
Unmount (eject) USB sticks: This requires to use the
umountcommand in the terminal or (easier) eject via the
nemofile manager: Select the mounted USB drive in the device tree node in nemo, the choose
Filemenu so safely unmount the USB drive
Calls/Voice quality: Adjust Internal Microphone volume in
Soundfor optimal clarity.
Calls from terminal:
xdg-open tel://<phone-number>as seen here.
- Mobile Settings: While Mobile is disabled, either by the settings toggle or by the kill switch, granular Mobile Settings are inaccessible. Also, at the moment, saved messages in Chats cannot be viewed, nor new messages composed; a fix for this is being worked on, and the issue does not affect other installed messaging apps, and also not other chat protocols used by chatty (e.g xmpp), if any.
- If the incoming mail server or the outgoing mail server require a port number then specify the hostname as
- There is no support for the POP protocol. Mail can only be received using the IMAP protocol.
- Config information is stored in
_01with subsequent numbers if more than one account)
Import contacts from .vcf file: Install the
librem5-goodiespackage from the command line, one of the scripts it has is a small yad/bash application to import contacts from a *.vcf file to GNOME Contacts. Import from SIM card is currently not supported.
- Contacts information appears to be stored in
General Carddav and Caldav functionality: Install
evolutionpackage from the command line, add regular Carddav and Caldav accounts via Evolution interface, attach external screen (Evolution is not adaptive for Librem 5).
If you have set a specific locale (e.g. en_AU.UTF-8) then you will probably get warnings all over the place (e.g. from
locale itself, from
perl during an install). The solution appears to be
sudo dpkg-reconfigure locales
then page down to your chosen locale, press the space bar to select it -
[ ] will change to
[*], then Tab to move to Ok then Enter.
That will then take an eternity generating all the selected locales and eventually doing the one that you just selected.
Network Manager stores the configuration in
/etc/NetworkManager. Specifically, information that is per-connection is stored in the
system-connections subdirectory in files called
xyz.nmconnection where xyz is the connection name.
The proper way to 'get' and 'set' per-connection settings, if wanting to do from the command line, is via the
- show the connections that exist:
nmcli conn show
- show a specific connection where uuid is as listed by the first command:
nmcli conn show uuid | grep whatever
- retrieve a specific field:
nmcli -g fieldname conn show uuid
- modify a specific field:
nmcli conn modify uuid fieldname fieldvalue
To get modem information:
to list the modems. For example, gives: /org/freedesktop/ModemManager1/Modem/1
So the modem index to use at this moment in time is ‘1’.
mmcli -m 1
You can check, in passing, your own phone number (
| grep own:) and get the SIM index (
| grep SIM)
The output for the SIM index looks like: SIM | dbus path: /org/freedesktop/ModemManager1/SIM/1
So the SIM index is 1.
mmcli -i 1
That will show you your IMSI, among other pieces of information.
-m are abbreviated forms of