We have moved to a new Sailfish OS Forum. Please start new discussions there.

Revision history [back]

click to hide/show revision 1
initial version

posted 2018-12-28 01:10:45 +0200

*Working* microg working on Sailfish X 3.0.0.8 F5121 TL;DR

So thanks to many others posting on this subject (listed below). I presume that you know about command line shells in linux, and how to traverse a file tree to find directories and generally poke about. This is not a HOWTO, but a 'HOWI'.

I needed the Curve banking app working on Sailfish X, to make it my daily driver. I tried adding Google Play (the real google play and play services), but it always hung when it tried to update. The Curve app always requested a google play upgrade, and it always failed.

I mucked about with deodex and signature spoofing tools, and broke alien dalvik completely. So I reinstalled Sailfish X on my Xperia X F5121, using the 3.0.0.8 files from the Jolla store (I paid).

This is the story of how I got micro-g installed and working so that my Curve app now runs.

My setup: A linux laptop, running KDE Neon, based on Ubuntu bionic (18.04). Xperia X, connected to the laptop by USB. Developer settings on, ssh enabled, IP 192.168.2.15.

Getting stuff ready: Plugging the Xperie X into the laptop and choosing developer as the USB connection provided a new wired network adapter. Use whatever GUI tool you have to set this IP to 192.168.2.1. The routing for connecting to the phone over USB should now be ready. Test this link from the linux shell with:

ssh nemo@192.168.2.15

Stop the android services:

systemctl stop aliendalvik

The process in outline.

  1. copy system files from the phone to the pc
  2. Deodex all the files
  3. Apply signature spoofing patch to a few important system files
  4. copy the files back to the phone
  5. Install the required android software

1. Use rsync to get the file you need from the phone: Make a new working directory somewhere simple (like your home directory). Do this at the linux shell.

rsync -rv nemo@192.168.2.15:/opt/alien/system/* .

2. Go to github and get simple-deodex github.com/jareddantis/simple-deodexer. You will need to install the Oracle version of Java 8 to run simple-deodex. Download it as a zip and unpack it. This gives you a file tree under directory 'simple-deodexer-master'. This software operates by processing all the files that you put under a directory 'triage'. Copy the files you got from the phone into this triage directory. You should copy all three directories 'framework', 'app' and 'priv-app' under 'triage' Run

./deodex.sh -l 19

NB '-l 19' states that you have Android API level 19, which is what Alien Dalvik has (Android 4.4).

The files are now deodex'ed. You can delete any *.odex files that remain in the framework, app, priv-app directories.

3. Get haystack signature spoofing patches github.com/Lanchon/haystack This has two steps. Unpack the zip file into your working directory. You will have a directory tree under 'haystack-master'. The script to run is patch-fileset. The shell command I used for this:

./patch-fileset patches/sigspoof-hook-4.1-6.0/ 19 ../simple-deodexer-master/triage/framework/

From this you can see that I didn't move the deodex'ed files from their previous position, just pointed the haystack script to where they are. Also you notice only the 'framework' directory needs to be processed.

4. Put the files back with rsync, and get the permissions corrected. So as root on the phone (by devel-su), make the /opt/alien/system/{framework,app,priv-app} directories writable:

cd /opt/alien/system
chmod a+w framework app priv-app

Then put the files back - from the linux shell:

cd simple-deodexer-master/triage
rsync -v framework/* nemo@192.168.2.15:/opt/alien/system/framework/
rsync -v app/* nemo@192.168.2.15:/opt/alien/system/app/
rsync -v priv-app/* nemo@192.168.2.15:/opt/alien/system/priv-app/

Now your three directories framework, app, priv-app on the phone will have some new files owned by your linux user, and some old files owned by root. Delete all the old files owned by root. CAREFULLY! These will be any now unwanted .odex files.

Change the ownership of the files in each directory (framework, app, priv-app) back to root: Change the permissions on the directories back to 755.

Tun the android services back on:

systemctl restart aliendalvik

5. Android stuff Go to f-droid.org and download and install the f-droid app. Add the micro-g repository. Install the signature spoofing check app (see the haystack page). If it works, then you have done the same as me. Cool beanz. Install micro-g core. Do the self-check. Be happy.

Others' work https://github.com/vermut/sailfish-signature-spoofing https://together.jolla.com/question/169496/xperia-x-microg/ https://together.jolla.com/question/117350/microg-on-alien-dalvik/ Plus many bits'n'pieces from other people on the internet, and of course http://forum.xda-developers.com.

HTH docmathoc

*Working* microg working on Sailfish X 3.0.0.8 F5121 TL;DR

So thanks to many others posting on this subject (listed below). I presume that you know about command line shells in linux, and how to traverse a file tree to find directories and generally poke about. This is not a HOWTO, but a 'HOWI'.

I needed the Curve banking app working on Sailfish X, to make it my daily driver. I tried adding Google Play (the real google play and play services), but it always hung when it tried to update. The Curve app always requested a google play upgrade, and it always failed.

I mucked about with deodex and signature spoofing tools, and broke alien dalvik completely. So I reinstalled Sailfish X on my Xperia X F5121, using the 3.0.0.8 files from the Jolla store (I paid).

This is the story of how I got micro-g installed and working so that my Curve app now runs.

My setup: A linux laptop, running KDE Neon, based on Ubuntu bionic (18.04). Xperia X, connected to the laptop by USB. Developer settings on, ssh enabled, IP 192.168.2.15.

Getting stuff ready: Plugging the Xperie X into the laptop and choosing developer as the USB connection provided a new wired network adapter. Use whatever GUI tool you have to set this IP to 192.168.2.1. The routing for connecting to the phone over USB should now be ready. Test this link from the linux shell with:

ssh nemo@192.168.2.15

Stop the android services:

systemctl stop aliendalvik

The process in outline.

  1. copy system files from the phone to the pc
  2. Deodex all the files
  3. Apply signature spoofing patch to a few important system files
  4. copy the files back to the phone
  5. Install the required android software

1. Use rsync to get the file you need from the phone: Make a new working directory somewhere simple (like your home directory). Do this at the linux shell.

rsync -rv nemo@192.168.2.15:/opt/alien/system/* .

2. Go to github and get simple-deodex github.com/jareddantis/simple-deodexer. You will need to install the Oracle version of Java 8 to run simple-deodex. Download it as a zip and unpack it. This gives you a file tree under directory 'simple-deodexer-master'. This software operates by processing all the files that you put under a directory 'triage'. Copy the files you got from the phone into this triage directory. You should copy all three directories 'framework', 'app' and 'priv-app' under 'triage' Run

./deodex.sh -l 19

NB '-l 19' states that you have Android API level 19, which is what Alien Dalvik has (Android 4.4).

The files are now deodex'ed. You can delete any *.odex files that remain in the framework, app, priv-app directories.

3. Get haystack signature spoofing patches github.com/Lanchon/haystack This has two steps. Unpack the zip file into your working directory. You will have a directory tree under 'haystack-master'. The script to run is patch-fileset. The shell command I used for this:

./patch-fileset patches/sigspoof-hook-4.1-6.0/ 19 ../simple-deodexer-master/triage/framework/

This stores the processed file, by default, in the 'framework__sigspoof-hook-4.1-6.0' directory. Then apply the second , core, patch to the files in this directory:

./patch-fileset patches/sigspoof-core 19 sigspoof-hook-4.1-6.0/

This step leaves the processed files, by default, in the 'framework__sigspoof-hook-4.1-6.0__sigspoof-core' directory.

From this you can see that I didn't move the deodex'ed files from their previous position, just pointed the haystack script to where they are. Also you notice only the 'framework' directory needs to be processed.

4. Put the files back with rsync, and get the permissions corrected. So as root on the phone (by devel-su), make the /opt/alien/system/{framework,app,priv-app} directories writable:

cd /opt/alien/system
chmod a+w framework app priv-app

Then put the files back - from the linux shell:

cd simple-deodexer-master/triage
 rsync -v framework/* haystack-master/framework__sigspoof-4.1-6.0__sigspoof-core/* nemo@192.168.2.15:/opt/alien/system/framework/
 rsync -v app/* simple-deodexer-master/triage/app/* nemo@192.168.2.15:/opt/alien/system/app/
 rsync -v priv-app/* simple-deodexer-master/triage/priv-app/* nemo@192.168.2.15:/opt/alien/system/priv-app/

Now your three directories framework, app, priv-app on the phone will have some new files owned by your linux user, and some old files owned by root. Delete all the old files owned by root. CAREFULLY! These will be any now unwanted .odex files.

Change the ownership of the files in each directory (framework, app, priv-app) back to root: Change the permissions on the directories back to 755.

Tun the android services back on:

systemctl restart aliendalvik

5. Android stuff Go to f-droid.org and download and install the f-droid app. Add the micro-g repository. Install the signature spoofing check app (see the haystack page). If it works, then you have done the same as me. Cool beanz. Install micro-g core. Do the self-check. Be happy.

Others' work https://github.com/vermut/sailfish-signature-spoofing https://together.jolla.com/question/169496/xperia-x-microg/ https://together.jolla.com/question/117350/microg-on-alien-dalvik/ Plus many bits'n'pieces from other people on the internet, and of course http://forum.xda-developers.com.

HTH docmathoc

*Working* microg working on Sailfish X 3.0.0.8 F5121 TL;DR

So thanks to many others posting on this subject (listed below). I presume that you know about command line shells in linux, and how to traverse a file tree to find directories and generally poke about. This is not a HOWTO, but a 'HOWI'.

I needed the Curve banking app working on Sailfish X, to make it my daily driver. I tried adding Google Play (the real google play and play services), but it always hung when it tried to update. The Curve app always requested a google play upgrade, and it always failed.

I mucked about with deodex and signature spoofing tools, and broke alien dalvik completely. So I reinstalled Sailfish X on my Xperia X F5121, using the 3.0.0.8 files from the Jolla store (I paid).

This is the story of how I got micro-g installed and working so that my Curve app now runs.

My setup: A linux laptop, running KDE Neon, based on Ubuntu bionic (18.04). Xperia X, connected to the laptop by USB. Developer settings on, ssh enabled, IP 192.168.2.15.

Getting stuff ready: Plugging the Xperie X into the laptop and choosing developer as the USB connection provided a new wired network adapter. Use whatever GUI tool you have to set this IP to 192.168.2.1. The routing for connecting to the phone over USB should now be ready. Test this link from the linux shell with:

ssh nemo@192.168.2.15

Stop the android services:

systemctl stop aliendalvik

The process in outline.

  1. copy system files from the phone to the pc
  2. Deodex all the files
  3. Apply signature spoofing patch to a few important system files
  4. copy the files back to the phone
  5. Install the required android software

1. Use rsync to get the file you need from the phone: Make a new working directory somewhere simple (like your home directory). Do this at the linux shell.

rsync -rv nemo@192.168.2.15:/opt/alien/system/* .

2. Go to github and get simple-deodex github.com/jareddantis/simple-deodexer. You will need to install the Oracle version of Java 8 to run simple-deodex. Download it as a zip and unpack it. This gives you a file tree under directory 'simple-deodexer-master'. This software operates by processing all the files that you put under a directory 'triage'. Copy the files you got from the phone into this triage directory. You should copy all three directories 'framework', 'app' and 'priv-app' under 'triage' Run

./deodex.sh -l 19

NB '-l 19' states that you have Android API level 19, which is what Alien Dalvik has (Android 4.4).

The files are now deodex'ed. You can delete any *.odex files that remain in the framework, app, priv-app directories.

3. Get haystack signature spoofing patches github.com/Lanchon/haystack This has two steps. Unpack the zip file into your working directory. You will have a directory tree under 'haystack-master'. The script to run is patch-fileset. The shell command I used for this:

./patch-fileset patches/sigspoof-hook-4.1-6.0/ 19 ../simple-deodexer-master/triage/framework/

This stores the processed file, by default, in the 'framework__sigspoof-hook-4.1-6.0' directory. Then apply the second , core, patch to the files in this directory:

./patch-fileset patches/sigspoof-core 19 sigspoof-hook-4.1-6.0/
framework__sigspoof-hook-4.1-6.0/

This step leaves the processed files, by default, in the 'framework__sigspoof-hook-4.1-6.0__sigspoof-core' directory.

From this you can see that I didn't move the deodex'ed files from their previous position, just pointed the haystack script to where they are. Also you notice only the 'framework' directory needs to be processed.

4. Put the files back with rsync, and get the permissions corrected. So as root on the phone (by devel-su), make the /opt/alien/system/{framework,app,priv-app} directories writable:

cd /opt/alien/system
chmod a+w framework app priv-app

Then put the files back - from the linux shell:

    rsync -v haystack-master/framework__sigspoof-4.1-6.0__sigspoof-core/* nemo@192.168.2.15:/opt/alien/system/framework/

rsync -v simple-deodexer-master/triage/app/* nemo@192.168.2.15:/opt/alien/system/app/

rsync -v simple-deodexer-master/triage/priv-app/* nemo@192.168.2.15:/opt/alien/system/priv-app/

Now your three directories framework, app, priv-app on the phone will have some new files owned by your linux user, and some old files owned by root. Delete all the old files owned by root. CAREFULLY! These will be any now unwanted .odex files.

Change the ownership of the files in each directory (framework, app, priv-app) back to root: Change the permissions on the directories back to 755.

Tun the android services back on:

systemctl restart aliendalvik

5. Android stuff Go to f-droid.org and download and install the f-droid app. Add the micro-g repository. Install the signature spoofing check app (see the haystack page). If it works, then you have done the same as me. Cool beanz. Install micro-g core. Do the self-check. Be happy.

Others' work https://github.com/vermut/sailfish-signature-spoofing https://together.jolla.com/question/169496/xperia-x-microg/ https://together.jolla.com/question/117350/microg-on-alien-dalvik/ Plus many bits'n'pieces from other people on the internet, and of course http://forum.xda-developers.com.

HTH docmathoc

*Working* microg working on Sailfish X 3.0.0.8 F5121 TL;DR

So thanks to many others posting on this subject (listed below). I presume that you know about command line shells in linux, and how to traverse a file tree to find directories and generally poke about. This is not a HOWTO, but a 'HOWI'.

I needed the Curve banking app working on Sailfish X, to make it my daily driver. I tried adding Google Play (the real google play and play services), but it always hung when it tried to update. The Curve app always requested a google play upgrade, and it always failed.

I mucked about with deodex and signature spoofing tools, and broke alien dalvik completely. So I reinstalled Sailfish X on my Xperia X F5121, using the 3.0.0.8 files from the Jolla store (I paid).

This is the story of how I got micro-g installed and working so that my Curve app now runs.

My setup: A linux laptop, running KDE Neon, based on Ubuntu bionic (18.04). Xperia X, connected to the laptop by USB. Developer settings on, ssh enabled, IP 192.168.2.15.

Getting stuff ready: Plugging the Xperie X into the laptop and choosing developer as the USB connection provided a new wired network adapter. Use whatever GUI tool you have to set this IP to 192.168.2.1. The routing for connecting to the phone over USB should now be ready. Test this link from the linux shell with:

ssh nemo@192.168.2.15

Stop the android services:

systemctl stop aliendalvik

The process in outline.

  1. copy system files from the phone to the pc
  2. Deodex all the files
  3. Apply signature spoofing patch to a few important system files
  4. copy the files back to the phone
  5. Install the required android software

1. Use rsync to get the file you need from the phone: Make a new working directory somewhere simple (like your home directory). Do this at the linux shell.

rsync -rv nemo@192.168.2.15:/opt/alien/system/* .

2. Go to github and get simple-deodex github.com/jareddantis/simple-deodexer. You will need to install the Oracle version of Java 8 to run simple-deodex. Download it as a zip and unpack it. This gives you a file tree under directory 'simple-deodexer-master'. This software operates by processing all the files that you put under a directory 'triage'. Copy the files you got from the phone into this triage directory. You should copy all three directories 'framework', 'app' and 'priv-app' under 'triage' Run

./deodex.sh -l 19

NB '-l 19' states that you have Android API level 19, which is what Alien Dalvik has (Android 4.4).

The files are now deodex'ed. You can delete any *.odex files that remain in the framework, app, priv-app directories.

3. Get haystack signature spoofing patches github.com/Lanchon/haystack This has two steps. Unpack the zip file into your working directory. You will have a directory tree under 'haystack-master'. The script to run is patch-fileset. The shell command I used for this:

./patch-fileset patches/sigspoof-hook-4.1-6.0/ 19 ../simple-deodexer-master/triage/framework/

This stores the processed file, by default, in the 'framework__sigspoof-hook-4.1-6.0' directory. Then apply the second , core, patch to the files in this directory:

./patch-fileset patches/sigspoof-core 19 framework__sigspoof-hook-4.1-6.0/

This step leaves the processed files, by default, in the 'framework__sigspoof-hook-4.1-6.0__sigspoof-core' directory.

From this you can see that I didn't move the deodex'ed files from their previous position, just pointed the haystack script to where they are. Also you notice only the 'framework' directory needs to be processed.

4. Put the files back with rsync, and get the permissions corrected. So as root on the phone (by devel-su), make the /opt/alien/system/{framework,app,priv-app} directories writable:

cd /opt/alien/system
chmod a+w framework app priv-app

Then put the files back - from the linux shell:

    rsync -v haystack-master/framework__sigspoof-4.1-6.0__sigspoof-core/* nemo@192.168.2.15:/opt/alien/system/framework/

rsync -v simple-deodexer-master/triage/app/* nemo@192.168.2.15:/opt/alien/system/app/

rsync -v simple-deodexer-master/triage/priv-app/* nemo@192.168.2.15:/opt/alien/system/priv-app/

Now your three directories framework, app, priv-app on the phone will have some new files owned by your linux user, and some old files owned by root. Delete all the old files owned by root. CAREFULLY! These will be any now unwanted .odex files.

Change the ownership of the files in each directory (framework, app, priv-app) back to root: Change the permissions on the directories back to 755.

Tun the android services back on:

systemctl restart aliendalvik

5. Android stuff Go to f-droid.org and download and install the f-droid app. Add the micro-g repository. Install the signature spoofing check app (see the haystack page). If it works, then you have done the same as me. Cool beanz. Install micro-g core. Do the self-check. Be happy.

Others' work https://github.com/vermut/sailfish-signature-spoofing https://together.jolla.com/question/169496/xperia-x-microg/ https://together.jolla.com/question/117350/microg-on-alien-dalvik/ Plus many bits'n'pieces from other people on the internet, and of course http://forum.xda-developers.com.

HTH docmathoc