flypig.co.uk

Install

On this page you'll find instructions for how to install Sailfish Browser running the ESR 91 gecko engine on your Sailfish OS phone. Following this are instructions for how to revert back to ESR 78, which is the default engine on Sailfish OS 4.6.

I've done my best to make it easy to restore your phone to its previous state, but it's important to understand that installing ESR 91 may break your phone, or cause individual apps to break. You'll need to perform actions on the command line. Please only do this if you're comfortable with the risks.

Prerequisites

Before performing these steps you'll need the following:

  1. An aarch64 Sailfish OS phone running 4.6 (Sauna).
  2. Developer mode activated on your phone.
  3. SSH configured on your phone so you can access the command line over the network.
  4. Root privileges set up on your phone (devel-su).
  5. Zypper installed on your phone (devel-su pkcon install zypper).
  6. The courage to continue!

Install ESR 91

How to install the ESR 91 gecko packages on your device.

  1. Download the tarball to your phone.
    $ curl -O https://www.flypig.co.uk/dnload/dnload/sailfishos/gecko/gecko-dev-esr91-release.tar.bz2
    
  2. Unpack the tarball:
    $ tar -xvf gecko-dev-esr91-release.tar.bz2
    
  3. Ensure the browser and any apps using the WebView are closed.
  4. Make a copy of your browser profile:
    $ cp -r ~/.local/share/org.sailfishos/browser/ ~/.local/share/org.sailfishos/browser.esr78.bak/
    
  5. Remove settings that need to be updated for ESR 91:
    $ rm ~/.local/share/org.sailfishos/browser/.mozilla/ua-update.json
    $ rm -rf ~/.local/share/org.sailfishos/browser/.mozilla/startupCache
    $ rm ~/.local/share/org.sailfishos/browser/.mozilla/prefs.js
    $ rm ~/.local/share/org.sailfishos/browser/__PREFS_WRITTEN__
    
  6. Install the ESR 91 packages:
    $ devel-su rpm -U --force \
        xulrunner-qt5-91.*.rpm \
        xulrunner-qt5-misc-91.*.rpm \
        qtmozembed-qt5-1.*.rpm \
        sailfish-components-webview-qt5-1.*.rpm \
        sailfish-components-webview-qt5-pickers-1.*.rpm \
        sailfish-components-webview-qt5-popups-1.*.rpm \
        embedlite-components-qt5-1.*.rpm \
        sailfish-browser-2.*.rpm \
        sailfish-browser-settings-2.*.rpm \
        mapplauncherd-booster-browser-0.*.rpm
    
  7. Symlink the old ESR 78 library directory to the new location:
    $ devel-su ln -s /usr/lib64/xulrunner-qt5-91.9.1/ /usr/lib64/xulrunner-qt5-78.15.1
    
  8. Finally kill the browser booster:
    $ killall booster-browser
    
  9. You're good to go!

Restore ESR 78

How to restore your device to ESR 78.

  1. Ensure the browser and any apps using the WebView are closed.
  2. Restore your original ESR 78 profile directory.
    $ mv ~/.local/share/org.sailfishos/browser/ ~/.local/share/org.sailfishos/browser.esr91.bak/
    $ cp -r ~/.local/share/org.sailfishos/browser.esr78.bak/ ~/.local/share/org.sailfishos/browser
    
  3. Remove the symlink:
    $ devel-su rm /usr/lib64/xulrunner-qt5-78.15.1
    
  4. Install all of the original packages from the Jolla repository.
    $ devel-su zypper install --oldpackage \
        xulrunner-qt5-78.15.1+git39-1.19.1.jolla \
        xulrunner-qt5-misc-78.15.1+git39-1.19.1.jolla \
        qtmozembed-qt5-1.53.25-1.22.2.jolla \
        sailfish-components-webview-qt5-1.5.21-1.13.1.jolla \
        sailfish-components-webview-qt5-pickers-1.5.21-1.13.1.jolla \
        sailfish-components-webview-qt5-popups-1.5.21-1.13.1.jolla \
        embedlite-components-qt5-1.24.35-1.26.1.jolla \
        sailfish-browser-2.2.63-1.12.1.jolla \
        sailfish-browser-settings-2.2.63-1.12.1.jolla \
        mapplauncherd-booster-browser-0.2.2-1.1.1.jolla
    
  5. Finally kill the booster if it's running.
    $ killall booster-browser
    
  6. You're back to ESR 78!