• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[ROM] LineageOS 17.1/18.1 UNOFFICIAL - (Update: 2021-09-18)

Shall F-Droid be included in the ROM(s)?


  • Total voters
    74
Search This thread
Which repos to use for Android R /e/ OS builds?

I have been making unofficial and custom Android Q /e/ OS builds for a while now. I started using the Whatawurst github repos, then moved to @Flamefire repos for more recent builds as there was more recent activity in the lineage-17.1 branch there.

I am about to start on the adventure of an Android R build, and I was wondering which repos to use for that. I have noticed a fair bit of recent activity in the whatawurst repos, some of which seems to be coming from Flamefire. Is the plan to pull (some, many, most, all) Flamefire's commits into the whatawurst repos, or are they likely to stay diverged?

Thanks for any ideas, and thanks for all the work on these LOS ROMs for lilac

Edited: the question relates to Android R builds, not Q
 
Last edited:

toejam119

Senior Member
I had to switch to 18.1 in order to get my banking app (Nordea Codes 1.12.0) to work (previous version 1.11.2 would work just fine). The app would just crash or stay open doing nothing with no way to interact with it. I did notice that removing Magisk and reinstalling the banking app would work, but I want my root. I did use MagiskHide and had safetynet working just fine, but the 1.12.0 version would just not work. For some reason LOS 18.1 + Magisk works fine with it.
Well, I noticed a feature missing that was in 17.1, it's in the notification light settings when you want to add applications and select colors for the blinking light for each app, the "+" button on top right is gone, so I cannot add applications to the list. I had to resort to 3rd party app called Light Manager 2, it's fine but it needs to have a notification icon on the status bar and I don't like it. I already have 1 other icon in there permanently (Call Blocker) and it took forever for me to get used to it. Anyway to get the button back?

Screenshot_20210918-121110_LineageOS_Settings arrow added.png

edit: the "+" appears when you select "Use custom values"
 
Last edited:

moofesr

Member
Jan 30, 2014
42
28
London
Has anyone else faced issues where the phone shows the wrong date/time on startup?

The issue resolves itself soon after startup (once the phone is part the "Android is starting" phase).

Any thoughts what's causing this?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 6
    "Major performance improvement" sounds great!

    This would be for both 17.1 and 18.1, yes?

    By the way, would it be worthwhile donating a device to allow you to develop and test both 17.1 and 18.1 simultaneously?
    No only 17.1. Basically building with the same compiler as 18.1 which has better optimizations (3 versions difference) and found a few bugs through that...

    This is a kind offer but no. I don't really have time to do much dev on this. When building the 17.1 I use it myself and see that works. Then I provide this here for others to benefit too. The 18.1 is just a bonus as changes to 17.1 usually work on 18.1. But as mentioned I don't have time for dev or testing on something I don't use myself anyway :)
    2
    In my 18.1 i see screen record,i see restart option and open camera work fine. I've tried both and prefer 18.1. With magisk,on 18.1,work perfect sony album and sony music,but not on 17.1!
    1
    First of all I would like to agree with the previous speakers - thank you for keeping the OS alive!

    @Flamefire I've been using your device and kernel trees, with my own vendor blobs* to build unofficial and custom /e/ OS ROMs for a while now, and everything has been working fine - thanks.

    In my most recent builds, based on your 17.1 branch, I get a problem when trying to play audio through some connected BT devices. The audio does not get routed to the connected BT device, but plays through the phone loudspeaker. The 'Settings | Sounds' page shows that the audio is being played though the BT device even though it is not. This applies to both phone calls and music streaming. Also, it only applies to *some* devices - others seem to work fine.

    Your 17.1 ROM works fine, and I suspect the problems are in the depths of vendor/sony/lilac. I wonder whether you have any idea where I should start looking? Do I need to extract the latest vendor blobs from your 17.1 ROM?

    * My vendor blobs were extracted from Modpunk's LOS 17.1 v1.6. in December 2020
    I notice something similar - yet for some devices it works (e.g. for a bluetooth box) and for other devices it doesnt (or at least only sometimes with some bluetooth crashes).
    I checked the log and found the following:

    Code:
    08-21 11:14:53.890 10069 10117 I bt_stack: [INFO:device.cc(1363)] f8:30:02:88:03:e6 : HandlePlayPosUpdate
    08-21 11:14:53.890 10069 10095 D AvrcpTargetJni: getCurrentPlayStatus
    08-21 11:14:53.890 10069 10095 D AvrcpNativeInterface: getPlayStatus
    08-21 11:14:53.891 10069 10117 I bt_stack: [INFO:device.cc(520)] f8:30:02:88:03:e6 : PlaybackPosNotificationResponse: Queue next play position update
    08-21 11:14:53.903 10069 10095 D AvrcpTargetJni: getCurrentPlayStatus
    08-21 11:14:53.903 10069 10095 D AvrcpNativeInterface: getPlayStatus
    08-21 11:14:53.904 10069 10117 I bt_stack: [INFO:device.cc(520)] f8:30:02:88:03:e6 : PlaybackPosNotificationResponse: Queue next play position update
    08-21 11:14:53.989 10069 10124 D BluetoothAtPhonebook: handleCpbsCommand - atString = ="RC"
    08-21 11:14:53.989 10069 10124 D BluetoothAtPhonebook: handleCpbsCommand - set command
    08-21 11:14:53.994  2505  2524 E DatabaseUtils: Writing exception to parcel
    08-21 11:14:53.994  2505  2524 E DatabaseUtils: java.lang.IllegalArgumentException: Invalid token LIMIT
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.SQLiteQueryBuilder.enforceStrictGrammarOrderBy(SQLiteQueryBuilder.java:846)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.SQLiteQueryBuilder.lambda$RN4X37kr4P69Zco8q57M-c-6Pcc(Unknown Source:0)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.-$$Lambda$SQLiteQueryBuilder$RN4X37kr4P69Zco8q57M-c-6Pcc.accept(Unknown Source:4)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.SQLiteTokenizer.tokenize(SQLiteTokenizer.java:108)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.SQLiteQueryBuilder.enforceStrictGrammar(SQLiteQueryBuilder.java:808)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:569)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:514)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at com.android.providers.contacts.CallLogProvider.queryInternal(CallLogProvider.java:362)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at com.android.providers.contacts.CallLogProvider.query(CallLogProvider.java:291)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.content.ContentProvider.query(ContentProvider.java:1214)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.content.ContentProvider.query(ContentProvider.java:1307)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.content.ContentProvider$Transport.query(ContentProvider.java:267)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:104)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.os.Binder.execTransactInternal(Binder.java:1021)
    08-21 11:14:53.994  2505  2524 E DatabaseUtils:     at android.os.Binder.execTransact(Binder.java:994)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime: FATAL EXCEPTION: HeadsetService.StateMachines
    08-21 11:14:53.995 10069 10124 E AndroidRuntime: Process: com.android.bluetooth, PID: 10069
    08-21 11:14:53.995 10069 10124 E AndroidRuntime: java.lang.IllegalArgumentException: Invalid token LIMIT
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:170)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:140)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.content.ContentProviderProxy.query(ContentProviderNative.java:423)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.content.ContentResolver.query(ContentResolver.java:944)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.content.ContentResolver.query(ContentResolver.java:880)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.content.ContentResolver.query(ContentResolver.java:836)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.AtPhonebook.queryPhonebook(AtPhonebook.java:423)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.AtPhonebook.getPhonebookResult(AtPhonebook.java:392)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.AtPhonebook.handleCpbsCommand(AtPhonebook.java:247)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.HeadsetStateMachine.processAtCpbs(HeadsetStateMachine.java:1745)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.HeadsetStateMachine.processUnknownAt(HeadsetStateMachine.java:1888)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.HeadsetStateMachine.access$3200(HeadsetStateMachine.java:74)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.HeadsetStateMachine$ConnectedBase.processMessage(HeadsetStateMachine.java:957)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.bluetooth.hfp.HeadsetStateMachine$Connected.processMessage(HeadsetStateMachine.java:1083)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.internal.util.StateMachine$SmHandler.processMsg(StateMachine.java:992)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at com.android.internal.util.StateMachine$SmHandler.handleMessage(StateMachine.java:809)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:107)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.os.Looper.loop(Looper.java:214)
    08-21 11:14:53.995 10069 10124 E AndroidRuntime:     at android.os.HandlerThread.run(HandlerThread.java:67)
    08-21 11:14:53.997  1389 10225 I DropBoxManagerService: add tag=system_app_crash isTagEnabled=true flags=0x2
    08-21 11:14:54.000  1389  1421 I ActivityManager: Showing crash dialog for package com.android.bluetooth u0
    08-21 11:14:54.171   791 10114 I [email protected]_handler: ProcessIbsCmd: Received IBS_SLEEP_IND: 0xFE
    08-21 11:14:54.173   791 10114 I [email protected]_handler: ProcessIbsCmd: Received IBS_WAKE_IND: 0xFD
    08-21 11:14:54.173   791 10114 I [email protected]_handler: ProcessIbsCmd: Writing IBS_WAKE_ACK
    08-21 11:14:54.406 10069 10095 I bt_stack: [INFO:btif_config.cc(756)] hash_file: Disabled for multi-user
    08-21 11:14:54.406 10069 10095 I bt_stack: [INFO:btif_config.cc(798)] write_checksum_file: Disabled for multi-user, since config changed removing checksums.
    08-21 11:14:54.455 10069 10095 D AvrcpTargetJni: getCurrentPlayStatus
    08-21 11:14:54.456 10069 10095 D AvrcpNativeInterface: getPlayStatus
    08-21 11:14:54.667   790   888 D audio_hw_primary: out_standby: enter: stream (0xe600d000) usecase(0: deep-buffer-playback)
    08-21 11:14:54.853   790   888 D audio_hw_primary: disable_audio_route: reset and update mixer path: deep-buffer-playback
    08-21 11:14:54.854   790   888 E soundtrigger: audio_extn_sound_trigger_update_stream_status: invalid input device 0x0, for event 2
    08-21 11:14:54.854   790   888 D soundtrigger: audio_extn_sound_trigger_update_stream_status: uc_info->id 0 of type 0 for Event 2, with Raise=1
    08-21 11:14:54.854   790   888 D sound_trigger_platform: platform_stdev_check_and_update_concurrency: concurrency active 0, tx 0, rx 0, concurrency session_allowed 1
    08-21 11:14:54.854   790   888 D hardware_info: hw_info_append_hw_type : device_name = speaker
    08-21 11:14:54.854   790   888 D audio_hw_primary: disable_snd_device: snd_device(2: speaker)
    08-21 11:14:54.862   790   888 D hardware_info: hw_info_append_hw_type : device_name = vi-feedback
    08-21 11:14:54.862   790   888 D audio_hw_primary: disable_snd_device: snd_device(182: vi-feedback)
    08-21 11:14:54.862   790   888 D msm8974_platform: platform_split_snd_device: snd_device(182) num devices(0) new_snd_devices(1684960623)
    08-21 11:14:54.862   790   888 I soundtrigger: audio_extn_sound_trigger_update_device_status: device 0xb6 of type 1 for Event 0, with Raise=0
    08-21 11:14:54.862   790   888 D audio_hw_primary: disable_audio_route: reset and update mixer path: spkr-vi-record
    08-21 11:14:54.862   790   888 D soundtrigger: audio_extn_sound_trigger_update_stream_status: uc_info->id 48 of type 1 for Event 2, with Raise=0
    08-21 11:14:54.867   790   888 I soundtrigger: audio_extn_sound_trigger_update_device_status: device 0x2 of type 0 for Event 0, with Raise=0
    08-21 11:14:54.867   790   888 D audio_hw_extn: audio_extn_get_anc_enabled: anc_enabled:0
    08-21 11:14:54.867   790   888 D audio_hw_extn: audio_extn_get_anc_enabled: anc_enabled:0
    08-21 11:14:54.867   790   888 D audio_hw_primary: out_standby: exit
    08-21 11:14:54.904 10069 10117 I bt_stack: [INFO:device.cc(1363)] f8:30:02:88:03:e6 : HandlePlayPosUpdate
    08-21 11:14:54.904 10069 10095 D AvrcpTargetJni: getCurrentPlayStatus
    08-21 11:14:54.904 10069 10095 D AvrcpNativeInterface: getPlayStatus

    Hope this is helpful in finding the problem.
    1
    Tried dirty upgrade to the latest release with TWRP 3.2.1 and got boot loop. Fixed after upgrade TWRP to the latest 3.3.1. So I think 3.3.1 is required and not recommended as stated in the first post.
    1
    What benefits do you see for 18.1 ?
    - no sony camera app
    - no screen record
    - no restart options
    - limited sharing options
    Just camera, in my case. It is enough. But I have a partly broken second xz1c for 18.1, just for testing, and battery is clearly better.
  • 25
    LineageOS 17.1/18.1 for Sony Xperia XZ1 Compact

    logo.png


    RELEASE

    This is an alternative ROM for the Sony Xperia XZ1 Compact.

    Creating this to honor the great work of modpunk and derf elot from https://forum.xda-developers.com/t/rom-lineageos-18-1-unofficial-2-0-update-2021-01-20.4047763/ which seems to be discontinued. Posting an own thread to keep the latest versions visible, I'm NOT claiming authorship over the ROM.
    I basically just build the ROM using the latest changes from upstream LineageOS/Google and kernel updates (usually incorporated by derf elot ) See my post.

    FEATURES
    • Signed with dev keys
    • EAS kernel
    • Passes SafetyNet out of the box (thanks Rooted_Ansh, Havoc-OS Team and kdrag0n)
    • Seedvault (Video)
    • IMS support (thanks to Rooted_Ansh and also Shujath)
    • 17.1 has stock Sony camera (not possible on 18.1)

    DOWNLOAD

    You can download the latest release here.
    HINT: Download both the ZIP and md5sum file so TWRP can check the consistency of the upload/download.
    REQUIRED FIRMWARE: 47.2.A.11.228

    IMPORTANT:
    I only test the 17.1 releases myself. The 18.1 are build from mostly the same sources and hopefully work.

    INSTALLATION

    Put the zip file of the ROM on you sdcard or internal store and boot into recovery.
    I suggest to use modpunks TWRP recovery. Again: Don't forget the md5sum file!
    TWRP 3.3.1-0 by modpunk for LineageOS 17.1
    TWPR 3.5.0-0 by derf elot for LineageOS 18.1
    Or use the latest TWRP from https://twrp.me/sony/sonyxperiaxz1compact.html.

    I heavily recommend to make a full backup before any installation so you can go back in case of issues. Flashing an older ROM usually helps to recover bootloops etc.

    KNOWN ISSUES
    • UnifiedNlp doesn't work with LineageOS 18.1 yet
    • Spell checking doesn't switch if you change keyboards
    SUPPORT

    There is NONE. If you have any issues or question ask in the thread so maybe someone else knows the answer.
    I'm just providing the ROM (Lineage 17.1 variant) I use myself for others to try to and just build the Lineage 18.1 ROM without any chance to actually test it myself.
    If you prefer to use a more well-tested Android 11 ROM, I suggest to look at Havoc-OS.
    Contributions to the sources are welcome and likely get integrated into the next release.

    Contributors
    modpunk, derf elot, Rooted_Ansh, Flamefire
    Source Code: https://github.com/Flamefire/android_device_sony_lilac, Original: https://github.com/whatawurst/

    If you want to buy me a coffee/beer, I'll appreciate it but it is not necessary.
    Also please consider donating to the original authors too or to local charities as requested by @modpunk

    ROM OS Version: Android 10/11
    ROM Kernel: Linux 4.x
    Based On: LineageOS

    Version Information
    Status:
    Stable
    Stable Release Date: 2021-07-20
    9
    CHANGELOG

    2021-09-18

    • September security patches
    • Include some more security patches from AOSP
    • Clang 11 for LOS 17.1 version (same as 18.1, improved optimizations)
    • Misc bugfixes backported from Android 11 to Android 10
    • Kernel 4.4.283
    2021-08-11
    • August security patches
    • Fix bug with switch 3G->4G in XperiaParts not working on slow boot
    • Include some more security patches from AOSP
    • Kernel 4.4.279
    2021-07-20
    • July security patches
    • Kernel 4.4.275
    2021-07-03
    • June security patches
    • Update to Linux Kernel 4.4.272
    • Updated APNs
    6
    Updated with the July security patches.
    Note: AndroidFileHost was quite quirky today, so use the md5sum files to verify the integrity of the files
    6
    "Major performance improvement" sounds great!

    This would be for both 17.1 and 18.1, yes?

    By the way, would it be worthwhile donating a device to allow you to develop and test both 17.1 and 18.1 simultaneously?
    No only 17.1. Basically building with the same compiler as 18.1 which has better optimizations (3 versions difference) and found a few bugs through that...

    This is a kind offer but no. I don't really have time to do much dev on this. When building the 17.1 I use it myself and see that works. Then I provide this here for others to benefit too. The 18.1 is just a bonus as changes to 17.1 usually work on 18.1. But as mentioned I don't have time for dev or testing on something I don't use myself anyway :)
    6
    Im confused so u continue with updating the security patches every month correct ?
    Im confused about the 18.1 u also only update it with securitypatches or also other stuf like making stable and fixing problems orwhatnot ?
    I'm using an XZ1C with 17.1 myself and am keeping that updated as much as possible. This includes security patches and kernel patches and updates. I also included some stuff I need for myself (e.g. the SafetyNet fix w/o Magisk to use GooglePay) But I'm not really doing any development, e.g. adding new features beyond that.
    What I do for 17.1 I also add to 18.1 but I have no way to test that myself as I only have that one device, hence the disclaimer at the top. Adding stuff or fixing bugs in 18.1 is hence to dangerous for you guys, as I won't know if that bricks your phones. So I really only add what I tested in 17.1 and assume to be fine in 18.1

    TLDR: 99.9% security patches only. The ROM is already stable enough thanks to the original authors.