[ROM][Unofficial][10.0][signed][OTA] Lineage OS 17.1 for Xperia Z1 compact

Search This thread

115ek

Senior Member
Jan 30, 2017
550
618
It may be a stupid question, but why is it not possible? Shouldn't microG core be updateable like any other system app?
Is there a way to allow updating by F-Droid?

Android apks need to be signed with a developer's key. For the first installation of an app this signature doesn't matter. However, if you want to install an app with the same package name (typical update scenario) the android package installer checks if the apk was signed by the same key as the previously installed. If the signatures don't match, the installation aborts.
That way you can prevent installing non-trustworthy updates (you have to trust the first package signature anyway...).

All apps found in fdroid are signed with fdroid's keys. The microg apks published on the microg website are signed with some microg keys (and also the ones provided in the microg fdroid repo). And as we also build microg from source - you can already imagine - the packages are signed with our keys.
Building microg from source has a historical background. When we started, microg was lacking some commits. Making all things working correctly required applying own patches. Nowadays, the microg maintainer (@MaR-V-iN) is back in the game and these things are merged upstream. However, switching back isn't simply possible as the signatures differ. The only way (I currently know of) would be a manual deinstallation of the affected packages. In connection with OTA updates this is really tricky.

So if you want to update microG from fdroid, you have to remove the existing microg installation. But then any further OTA update will break ;)

Anyway: We provide builds every month including google's monthly ASB's. I think that's an acceptable timeframe. As this also happens as OTA update, there isn't a huge effort for you.
Once we stop the builds (as happened with 15.1 already), you could simply use the "original" microg to be able to update it further.

EDIT: Please have a look at the post below by @MSe1969 for more details. He's the one behind all the microg related stuff in our builds.
 
Last edited:
It may be a stupid question, but why is it not possible? Shouldn't microG core be updateable like any other system app?
Is there a way to allow updating by F-Droid?
The answer is more complicated. Originally, I was using the original apk (which means: updatable via F-Droid), which - about more than 7-8 months ago hadn't received any updates since long and due to developments by Google in the FCM area, more and more issues with apps depending on Google functionalities have occurred, when these apps were updated.
So I decided to switch to the /e/ fork, which has temporarily solved a lot of issues, as it was addressing these issues.
When the original microG started to be very actively maintained again some months ago, I decided to switch back - however, I have learned the hard way, that the switch isn't that trivial in fact:
Different apk signature means to factually deinstall and reinstall the app during a ROM update. The /e/ fork has FCM enabled by default, so all app registrations have "survived" the switch, despite microG app data being purged during switch. But the original microG apk has FCM disabled by default! This means that during a switch (ROM with different apk signature flashed), all FCM registrations of apps with respective dependencies would get lost! In that case, it is unfortunately not always possible to simply re-enable it - for specific apps, that would mean having to even reinstall them!
Therefore I build microG myself with a patch to have FCM enabled by default.
Further, often, I could ship a microG having already further commits than the official release and releases have appeared ~every 2 months. Only very recently, the release frequency seems to have become monthly. So in the past, you could even benefit from developments for EN api as part of my monthly ROM release, before they were officially available...
 
New builds available with January 2021 ASB patches

Hi all, new builds are available for download and also offered as OTA update:

A. Standard LineageOS 17.1 build
  • ASB Security string 2021-01-01
  • Kernel slightly upstreamed
  • System Webview: Fix of persistent histogram bug (eating space in some cases)

B. Pre-installed microG build variant with additional security patches
  • ASB Security string 2021-01-01
  • Bromite Webview on 87.0.4280.131
  • Updated microG from upstream to 0.2.16.204713-10 (picked until 2f29b93)
  • Updated F-Droid to 1.10-alpha1-212
Happy flashing!

@115ek :
Please update the changelog. Further, if your previous build still points to "your" OTA repo, you would need to copy the amami.json file from our org. to your repo as a one-time activity.
 

115ek

Senior Member
Jan 30, 2017
550
618
Please update the changelog.
Done.

Further, if your previous build still points to "your" OTA repo, you would need to copy the amami.json file from our org. to your repo as a one-time activity.
I should have adapted it in the last build already.
If someone can't find this update in the OTA updater: please report here. We'll give a quick instruction how to fix that. We could also fix that for you ;)
 
Last edited:
  • Like
Reactions: lm089 and tramp20

115ek

Senior Member
Jan 30, 2017
550
618
On two phones OTA does not find the update 14.01.2021. But no problem, I can flash it.
Thanks for reporting. I tracked down the problem. The build property ro.lineage.releasetype changed from UNOFFICIAL to UNOFFICIAL-signed.
As the updater checks for this property, you won't see the new OTA update if you're on my 20201218 standard version.

EDIT: This should be solved now automatically. No need for further user interaction.
There are 2 ways now to handle this:

1. Downloading the newest build manaully and dirty flash it. All further OTA updates are going to work then.
or

2. Change the build property manually and download the update via inbuilt OTA updater. All further OTA updates are going to work with this method as well.
  • enable adb and root over adb in developer options
  • connect device to PC with adb installed
  • adb root
  • adb remount
  • adb shell
  • nano /system/build.prop change ro.lineage.releasetype from UNOFFICIAL to UNOFFICIAL-signed
  • reboot
  • after restart check for updates again
Sorry for the inconvenience.
@MSe1969 Are you aware of a simpler way?
 
Last edited:
  • Like
Reactions: lm089
There are 2 ways now to handle this:
. . .​
Sorry for the inconvenience.
@MSe1969 Are you aware of a simpler way?
Yes, there is one simpler way:
Change the property in the amami.json file in branch lineage-17.1 in the OTA repo. Just this one time. Can you do it? I'll be online only later this afternoon.
 
  • Like
Reactions: tramp20 and 115ek

115ek

Senior Member
Jan 30, 2017
550
618
Yes, there is one simpler way:
Change the property in the amami.json file in branch lineage-17.1 in the OTA repo. Just this one time. Can you do it? I'll be online only later this afternoon.

Ah, right. Too simple :p

Please comment if someone is still not able to find the new version via inbuilt updater.
 
  • Like
Reactions: MSe1969 and tramp20

Schuwarth

Member
Nov 4, 2013
38
20
Ok, it's a bug in the Gallery App itself. So let's hope that it's already fixed upstream and the fix will be contained in your next build :cool:
Hello,
this problem still exists, also in google foto app. So it's not a gallery app problem. Pictures appear after a system reboot.
 

android666

Senior Member
Jun 19, 2010
51
5
latest release (2021.01.14) disabling magisk functionality on my device. another experiences from magisk users ?
I have no clue how to root at this moment and I need it :-(
 
Last edited:

115ek

Senior Member
Jan 30, 2017
550
618
latest release (2021.01.14) disabling magisk functionality on my device. another experiences from magisk users ?
I have no clue how to root at this moment and I need it :-(
I guess you're using a current magisk version.
Everything >20.4 is known to be broken as reported here.
However, magisk is absolutely not on my todo list as I don't use it and thus don't really care.
If someone comes up with a proper solution: We'll include it.
 
  • Like
Reactions: MSe1969

tramp20

Senior Member
Jan 15, 2012
733
138
Rosenheim
latest release (2021.01.14) disabling magisk functionality on my device. another experiences from magisk users ?
I have no clue how to root at this moment and I need it :-(

Do you have a TWRP backup from the previous release with root?
Then you have to restore only the boot partition with TWRP (without data and system!).
You have to do this after every ROM update.
If you have success with this method you should make a TWRP backup only from root after every Magisk (release and canaries) update.
 

tramp20

Senior Member
Jan 15, 2012
733
138
Rosenheim
If someone comes up with a proper solution: We'll include it.

See my previous post.

My experiancies:
LOS 17.1: to get root for the first time install Magisk 20.4, no higher version can be installed, so you should download the package before it disappears.
Then it is no problem to update Magisk in the Manager to the newest versions.

LOS 18.1: as Magisk 20.4 can not be installed (too old) there is no chance to get root. I tried all possibilities (flashing Magisk with TWRP or patching boot.img with the MM).
At least you get a boot loop, or at worst TWRP is broken (tried several times).


Btw has SpiritCroc stopped development?
 
  • Like
Reactions: MSe1969

Top Liked Posts

  • There are no posts matching your filters.
  • 3
    flashed the May build, tried to reboot to system - and again I ended up in a bootloop
    1. Before uninstalling Magisk you have to restore Magisk to the original name (unhide)!
    After uninstalling Magisk you have to flash the original boot.img from the new LOS ROM (this is very important because on our XPerias the uninstall routine does not remove all changes to ram disk):
    flashboot flash:raw boot boot.img

    2. Don't boot now!
    Instead do a "fastboot reboot" and press Vol down until the phone boots to TWRP.

    3. Install now in TWRP the patched Magisk_23.001p.zip.
    The patched Magisk installs correct, the Maggisk app (formerly Manager) is installed as a stub. Starting this stub downloads the full app.

    4. Then you have to config Magisk.

    5. Make a TWRP backup!

    Patching the boot.img from the Manager fails every time so you have to use this method.

    All Magisk updates can be installed without problems.

    Important: every ROM update destroys parts of the boot partition, you can boot normal but boot to TWRP does not work.
    So if the kernel has no important updates then after installing the update, restore the boot partition from #5.


    Patching the Magisk_xxx.zip:
    Please read my post in https://github.com/topjohnwu/Magisk/issues/3636
    Especially the patch from user bleckdeth (I can use it but I don't understand it).

    I can offer to download
    1. the actual patched boot_patch.sh
    2. the already patched Magisk app-debug_23001p.zip

    Link to 1: https://www.magentacloud.de/lnk/KqvysqQq
    Link to 2: https://www.magentacloud.de/lnk/jVvSM4Qu



    With this method you can flash Magisk on LOS 17.1 and 18.1.
    It seams that many XPeria are affected, topjohwu knows this problem since Jan 2021 :-(
    2
    @lm089:
    As stated here all magisk versions > 20.4 are causing trouble (either bootloops or a simply not installed magisk) after the rom update.
    So my recommandation would be to stick with 20.4 (with this release you would also be able to do the OTA updates furthermore) ..
    2
    I think it's not a problem of complexity. It's more a question of if we want to include it.
    If, then it would also only make sense for the microg builds.

    However, I don't really like the fact of including an arbitrary prebuilt apk.
    But in the end the microg builds are in @MSe1969's responsibility. So I'm just giving my opinion here.

    What about adding it on your own at first? Did you already try?
    Hello @115ek, correct, this would only make sense for the microG builds.

    @android666 Thanks for the interesting contribution, I will definitely have a look and do some testing.

    In fact, as this is a Stub, which requires to download the official AA app, which will then "update" the stub, it could be an interesting feature.

    Will get back on that, but no promises
    1
    Strange, same boot problems after updating as with the previous 2 verions: always reboots to trwp after installing from Ota. Will try the same as last time

    UPDATE:
    again tried to follow your hints from the March update (https://forum.xda-developers.com/t/...1-for-xperia-z1-compact.4007983/post-84656157), incl. full formatting of /data then restoring internal memory etc. Then, after the manual update of this full LOS version I again still end up in that bootloop that finally gets me back into twrp.
    I tried to uninstall Magisk 22.1 at various stages in my restore / update flow (first after an update, and then once again before the next update) , but that didn't help either.
    Wiped Dalvik multiple times, did multiple SELinux corrections + repair of /data and /system file systems, but I can't get the device to boot into the May update.
    Since I already did a complete fresh / clean install back in March I don't feel much like doing that once again.
    Instead, I'll stick with the April one for now.
    If you want to have some kind of log let me know.
    Hmm... Difficult to comment.
    Some thoughts:
    You use Magisk. Did you flash Magisk from recovery, so a "survival script" has been installed? Or did you use the "patch & flash boot.IMG" method? The former is meanwhile considered obsolete by Magisk docu.
    Could that survival script cause the trouble?
    Also, seems that most recent versions of Magisk in general cause trouble with our Z1c, there is an open issue right now.
    Also, when doing OTA update and using Magisk, it is key that the /data partition is accessible during the TWRP update execution, so never skip the decryption passphrase, in case your device is encrypted.
    Also, seems that for older devices not running on the latest Android main version, the newest Magisk versions introduce trouble, so may be wise to stick with an older version.
    Last, but not least, it may be an idea to temporarily deactivate all Magisk modules before the update. Also, do you maybe have an app requiring root, which auto-starts at boot? Also a potential troublemaker...
    I don't use Magisk myself, just some thoughts - maybe others have any idea?
    In my OP7T thread, a Magisk issue could be solved by using a version from Beta channel, but the OP7T has a crazy a/b partition layout, whilst the Z1c most probably requires an older version of Magisk...

    Edit: Yes, if you can produce a log, this could always help.
    1
    To be honest, I never heard of a "survival script" before. Any way to check whether tat still is there after uninstalling Magisk?

    How did I install Magisk? That's been years ago, back then flashing from recovery was the only way known to me, and since then I updated from the Magisk.apk every time there was an update. Right now I'm running the latest version (23), yesterday it was still V22.1
    What I call "survival script" is the stuff stored in /system/addon.d - please check, whether you find any file there with the name "magisk" in it.

    Normally, during an update, the entire /system partition is replaced. This however would mean, that everything, you have flashed via recovery onto the /system partition, like e.g. Gapps, would be lost after an update. Therefore, there is a mechanism within the flash process to execute the scripts in the /system/addon.d directory with a specific parameter, which first copies certain stuff and of course the scripts themselves into a temporary place, then the /system partition is replaced, and then the saved stuff is flashed again (by executing the same script again with a post-install parameter).

    Magisk normally does not aim at modifying the /system partition, but it also used to store such a script there, to simply re-patch /boot and restore Magisk. Later versions of Magisk work differently, and if for whatever reason such an old Magisk survival script still is present, it will do the things, which have been meaningful in an older version, but not now. Hence we have a potential trouble maker.

    You said you did a clean flash, but did you really wipe the /system partition, too? Or, did you maybe restore your old /system partition via TWRP, which would also restore /system/addon.d with those scripts ?
  • 19
    This thread aims at providing LineageOS 17.1 builds for the Sony Xperia Z1 compact with current security patches.
    You can consider this thread as a successor of our LineageOS 16.0 thread, where you may also find some useful information.
    This is the joint effort of 115ek and MSe1969 (contributions welcome).

    Code:
    #include <std_disclaimer.h>
    /*
    * Your warranty is now void.
    *
    * We are not responsible for bricked devices, dead SD cards,
    * thermonuclear war or you getting fired because the alarm app failed. Please
    * do some research if you have any concerns about features included in this ROM
    * before flashing it! YOU are choosing to make these modifications, and if
    * you point the finger at us for messing up your device, we will laugh at you. Hard & a lot.
    *
    */

    We offer two build variants:
    A. Standard LineageOS 17.1 build
    This build flavor aims at providing LineageOS 17.1 "as is" with most recent security patches.
    If you want to install Google Apps (GApps) you have to use this build variant.
    GApps are optional, of course. The smaller the GApps package, the better (pico). If you want "Okay google" support you need at least nano.
    Just check the package comparison to see what fits your needs.

    B. Pre-installed microG build variant with additional security patches
    For the security/privacy focused (more details about below feature list, see here)
    • Pre-installed microG and F-Droid same as the LineageOS for microG project
    • Pre-installed AuroraStore
    • eSpeak TTS engine (FOSS TTS solution)
    • Bromite as default browser
    • Additional security hardening features listed below
    • Cloudflare as default fallback DNS (instead of Google)
    • Privacy-preferred default settings
    • Optional blocking of Facebook- and Google-Tracking (Settings - Network & Internet)
    • Optional disable captive portal detection or choose from various providers (default is GrapheneOS and not Google; Settings - Network & Internet)
    • Increased max. password length of 64
    • No submission of IMSI/phone number to Google/Sony when GPS is in use
    • Default hosts file with many blocked ad/tracking sites
    • Privacy-enhanced Bromite SystemWebView
    • Extra control of sensor access for additionally installed user apps (Special access under app permissions)
    • Firewall (control internet access per app - under Trust)
    • Constified JNI method tables


    Status
    List template by AdrianDC
    Code:
    - Partitions (Data, Cache) : Ext4 and F2FS supported
    - Bluetooth : Ok
    - WiFi : Ok
    - WiFi Hotspot : Ok
    - RIL - Phone - Data : Ok
    - GPS : Ok
    - Camera : Ok
    - Camcorder : Ok
    - Lights : Ok
    - MicroSD : Ok
    - Accelerometer : Ok
    - Compass : Ok
    - Gyroscope : Ok
    - Touchscreen : Ok
    - FM Radio : Ok (mono)
    - ANT+ : Ok
    - Vibrator : Ok
    - Microphone : Ok
    - Audio & music : Ok
    - Bluetooth audio : Ok
    - MHL: broken
    - NFC : Ok
    - Kernel : Ok
    - Graphics : Ok
    - 3D Rendering : Ok
    - Clock : Ok
    - Offline Charging : Ok
    - USB : Ok
    - USB OTG : Ok
    - Encryption : Ok
    - SEPolicies : enforcing
    Limitations
    Following limitations are known:
    • NFC-HCE does not work (needed for example for google pay)
    • FM does not work in stereo mode (mono works fine, though)
    • MHL does not work
    • 5 GHz hotspot does not work (2.4 GHz hotspot works fine) (5 GHz option disabled with 2020-03-11 build as it isn't even available on stock)
    • GPS gets wrong time due to GPS week rollover since 3rd November 2019 (of importance when you record GPS tracks for example). fixed with 20200520 build
    • Using GApps AND encrypting the device may result in bootloops. More infos here.
    • Standard Trebuchet Launcher shows small artifacts in the fonts of app names in some situations.
    Download
    FAQ
    What recovery system to use?
    Please use this TWRP if you want to use OTA updates and/or encryption.

    What about root access?
    Root isn't included per default (except root over adb, but it's off by default).
    If you want to gain root access to your apps use magisk (everything > 20.4 is broken):
    ANT+ isn't working?
    You need the 2 apps:
    afterwards setting proper permissions is essential!
    1. Go to Apps & Notifications -> See All Apps
    2. Select 'ANT Radio Service'
    3. Select Permissions
    4. Select Additional permissions
    5. Slide switch to allow using of ANT hardware
    This refers to those instructions which worked for me :)
    I've got problems AND have magisk/exposed installed
    We won't support anything related to magisk/exposed/other heavily system modifying things.
    If you're encountering problems please make sure you're using a clean installation (at most gapps) to verify/reproduce the issue.

    Bugreports
    You'll find information about logging here.
    Please also note how you got the error or how it can be reproduced.
    Sources
    Credits
    • SpiritCroc: big thanks to him for maintaining the device trees and a lot of very useful hints
    • NeoArian: also big thanks to him ;)
    • rcstar6696
    • SuperLamic
    • drakonizer
    • AdrianDC
    • munjeni: thanks for tips and tricks
    • nailyk: thanks for tips and tricks
    • All the other contributors on sony msm8974 platform
    • LineageOS team

    Installation instructions


    XDA:DevDB Information
    Lineage OS 17.1 for Xperia Z1 compact - amami, ROM for the Sony Xperia Z1 Compact

    Contributors

    115ek, MSe1969, SpiritCroc, NeoArian, drakonizer, rcstar6696, SuperLamic, AdrianDC, nailyk, LineageOS team
    Source Code: https://github.com/lin17-microg/local_manifests

    ROM OS Version: Android 10
    ROM Kernel: Linux 3.4.x

    Version Information
    Status:
    Stable
    Stable Release Date: 2020-12-29

    Created 2019-11-22
    Last Updated 2021-05-12
    7
    New builds with March 2021 ASB patches available

    Hi all, new builds are available and offered as OTA updates via the updater app.

    A. Standard LineageOS 17.1 build
    • Security String 2021-03-05
    • System Webview on 88.0.4324.152

    B. Pre-installed microG build variant with additional security patches
    • Security String 2021-03-05
    • Bromite System webview updated to 88.0.4324.207
    • Bromite Browser updated to 88.0.4324.207
    • F-Droid 1.11
    • microG 0.2.18.204714

    @115ek - please update OP/Changelog

    Regards, M.
    7
    New builds with May 2021 ASB patches available

    Hi all,
    new builds are available and offered as OTA updates via the updater app.

    A. Standard LineageOS 17.1 build
    • Security String 2021-05-05
    • System Webview on 90.0.4430.82

    B. Pre-installed microG build variant with additional security patches
    • Security String 2021-05-05
    • Bromite System webview updated to 90.0.4430.204
    • Bromite Browser updated to 90.0.4430.204
    • microG upstreamed (but no new version)
    • Update: AuroraServices 1.1.1

    @115ek - please update OP/Changelog

    Regards, M.
    6
    Changelog

    12.05.2021

    • ASB Security string 2021-05-05
    • standard build only:
      • System Webview on 90.0.4430.82
    • microG build only:
      • Bromite System webview updated to 90.0.4430.204
      • Bromite Browser updated to 90.0.4430.204
      • microG upstreamed (but no new version)
      • Update: AuroraServices 1.1.1
    11.04.2021
    • ASB Security string 2021-04-05
    • standard build only:
      • System Webview on 89.0.4389.105
    • microG build only:
      • Bromite System webview updated to 90.0.4430.59
      • Bromite Browser updated to 90.0.4430.59
      • F-Droid 1.12
      • Update: AuroraStore 4.0.4 with AuroraServices 1.1.0
    09.03.2021
    • ASB Security string 2021-03-05
    • standard build only:
      • System Webview on 88.0.4324.152
    • microG build only:
      • Bromite System webview updated to 88.0.4324.207
      • Bromite Browser updated to 88.0.4324.207
      • F-Droid 1.11
      • microG 0.2.18.204714
    07.02.2021
    • ASB Security string 2021-02-05
    • misc. kernel patches
    • microG build only:
      • Bromite System webview updated to 88.0.4324.141
      • Bromite Browser updated to 88.0.4324.141
      • F-Droid 1.10-alpha-234
      • microG 0.2.17.204714-5
    14.01.2021
    • ASB Security string 2021-01-01
    • standard build only:
      • Kernel slightly upstreamed
      • System Webview: Fix of persistent histogram bug (eating space in some cases)
    • microG build only:
      • Bromite Webview on 87.0.4280.131
      • Updated microG from upstream to 0.2.16.204713-10 (picked until 2f29b93)
      • Updated F-Droid to 1.10-alpha1-212
    29.12.2020
    • introduce microG build variant (see this post or the OP for more information)
    18.12.2020
    • synced LineageOS sources (security patch level December 05, 2020)
    08.11.2020
    • synced LineageOS sources (security patch level November 05, 2020)
    • Seedvault is included officially now (inbuilt backup solution)
    07.10.2020
    • synced LineageOS sources (security patch level October 05, 2020)
    13.09.2020
    • synced LineageOS sources (security patch level September 05, 2020)
    17.08.2020
    • synced LineageOS sources (security patch level August 05, 2020)
    13.07.2020
    • synced LineageOS sources (security patch level July 05, 2020)
    16.06.2020
    • further GPS improvements
    • synced LineageOS sources (security patch level June 05, 2020)
    20.05.2020
    11.05.2020
    • synced LineageOS sources (security patch level May 05, 2020)
    16.04.2020
    • synced LineageOS sources (security patch level April 05, 2020)
    15.03.2020
    • fixed livedisplay
    • fixed OTA update URL
    11.03.2020
    • remove 5GHz hotspot option as it isn't available even on stock
    • start signing builds
    • enable OTA updates
    • synced LineageOS sources (security patch level March 05, 2020)
    28.02.2020
    • fixed sony bootlogo
    • fixed TWRP time bug
    25.02.2020
    • fixed buggy bootanimation
    11.02.2020
    • DRM fix (Netflix and co should work now)
    • synced LineageOS sources (security patch level February 05, 2020)
    01.02.2020
    • SE enforcing
    • synced LineageOS sources (security patch level January 01, 2020)
    22.11.2019
    • initial release
    5
    New build is up.
    17.08.2020
    • synced LineageOS sources (security patch level August 05, 2020)
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone