Skip to content

Installation

Adam Pigg edited this page Aug 30, 2023 · 7 revisions

Installation

Flashing a fresh image

Currently supported installation modes are:

  • Pinephone / Pinetab : EMMC or SD Card
  • Pinephone Pro : EMMC or Card

The user is responsible for first installing Towboot to the device. For the Pinephone, this should be installed to the start of the EMMC, for the PinephonePro, this should be installed to the SPI flash as per the recommended instructions

If installing onto the Pinephone EMMC, boot the device using JumpDrive (see https://wiki.pine64.org/index.php/PinePhone_Installation_Instructions) for instructions on how to do this.

To install the latest release of SailfishOS, use our script "flash-it.sh" available from https://github.com/sailfish-on-dontbeevil/flash-it/blob/master/flash-it.sh . Download the script and run it with bash: bash ./flash-it.sh

You can pass the -h parameter to list the supported options, but this is not normally required.

Running the script will first check that all required programs are available, and if not it is up to the user to install them. The rest of the installation will operate as:

  1. Menu is displayed asking for user to choose the appropriate device
  2. Rootfs installation files are downloaded
  3. A list of block devices is displayed and the user is asked to enter the installation device
    This will typically be /dev/sdX for the EMMC or /dev/mmcblkX for an SD card
  4. The chosen device is wiped, partitions are created and filesystems created
  5. Installation files are written to the new partitions
  6. Some questions are asked about the installation, answer these questions with y/n

After installation you should be able to reboot the device and boot into the operating system. For the first-boot guide see FirstBoot.

Upgrading over-the-air

Sailfish uses the RPM utility zypper to handle package management, so regular zypper tools can be used to upgrade packages. Ontop of zypper sits ssu, which adds a layer if indirection to the zypper repositories, and lets you specify a Sailfish release. Upgrading to a new release involves setting the release number with ssu, and upgrading packages involves zypper.

To upgrade a new sailfish release:

  1. Enter root with
    devel-su
  2. Set the release number with:
    ssu re
    eg 4.4.0.72
  3. Update the repository URLs
    ssu ur
  4. Refresh the packages:
    zypper ref
  5. Upgrade:
    zypper dup

There is also a utility on Storeman called sfos-upgrade which can automate this task

To upgrade any packges without changing release version:

  1. devel-su
  2. zypper ref
  3. zypper up (or dup)