Sailfish OS on a Sony Xperia XA2

Some Chapters have been split off to their own pages:
Applications and Tweaking.

I was lucky to get a device that already comes with Sailfish OS 3 preinstalled. This is the most recent free version of Sailfish OS; I assume I will be able to upgrade it to Sailfish X (same version + Android support) if I want to.

If you need to start from scratch (you will need a Jolla account), instructions are here.

The first boot-up-

... is familiar. I have to enter my account to be able to use the store and install some very basic applications. The Jolla store seems big enough, I can find an app for most of my needs.

Screenshot Gallery-up-

screenshot thumb
(made with custom Ambiences, see next chapter)


Essentially these are UI themes. A single image is used as a background and a few UI colours are derived from it. This happens automatically but it can be adjusted manually. Try looking at an image with the Gallery app, then tap the ambience icon:
ambience icon
Additionally sounds can be changed, volume levels adjusted etc.


There's an alternative repository of apps for Sailfish at openrepos.net. To use it one needs to install the Storeman package (be sure to find the newest package for armv7hl at the end of the list) manually:

  • enable installations from Untrusted software
  • copy the file to the device, tap it, drag down & install

Once that is done you can start installing all sorts of weird stuff; e.g. some Themes & Ambiences. Often it's a two step install:

  1. add the repository
  2. install the app

Connect to PC-up-

Sailfish OS uses MTP to copy files via USB cable.


Another option is to enable Developer mode & Remote connection, then ssh into the device or scp files to/from it via WLAN.
Example config section in ~/.ssh/config on the computer that wants to connect to the phone:

Host xa2
  User nemo

The IP can be different - tell your router to give your phone always the same IP.
Now ssh xa2 is enough. It asks for the password you entered when enabling developer mode & remote connections.

However, it is safer to use SSH keys for connecting. The procedure is exactly the same as on any other GNU/Linux system, see e.g. here for a tutorial.

One should also disable password and root login completely: edit /etc/ssh/sshd_config on the phone and add/edit/uncomment at least these lines:

PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no
AllowUsers nemo

I also defined a different port to listen on, but sshd continues to use port 22.

The entry in ~/.ssh/config on the computer that wants to connect to the phone should now look something like this:

Host xa2
  User nemo
  IdentityFile /home/me/.ssh/name-of-id_rsa

Becoming root-up-

devel-su asks for the user password.

Doing things from the command line-up-

The phone and my beloved URxvt terminal emulator have difficulties communicating. In the end I just installed xterm on my computer and am using this to connect to the phone.

You might want to install nano, a useful & ubiquitous CLI editor.