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

[ROM][S9+/S9][UNOFFICIAL][LineageOS 18.1][Weekly]

Search This thread

whuupwhuup

Member
Feb 6, 2021
9
4
With regards to safety and trustworthiness:
  • Everything is open source so anyone can see what is going into the all the builds. This includes the kernel, Lineage OS, and Samsung device trees. These links are in the OP.
  • I don't make any changes of my own because I am not knowledgeable enough to do that, but I do copy kernel patches from the Linux Long-term Maintenance team run by Linus and Greg for the 4.9y branch; I can at least bug-test and roll them into the weekly ROM builds. Linus & Greg pretty much head up Linux entirely, so the patches they approve are as trustworthy as you can get :D
  • I also got the Wireguard kernel patch into this build, which is pretty awesome, but without the help of the contributors in the OP, I really wouldn't have been able to do it on my own.
With regards to making it official:
  • I was using the official Lineage OS, but when the support for official status was dropped, I started learning how to build Lineage for unsupported devices. Then I came across Synt4x's repos, which gave me all the resources needed to build Lineage 18.1 for the S9 and S9+. I simply maintain kernel patches that come out weekly by the Linux Long-term Maintenance team (Linus & Greg et al.), work with the community here to maintain the device trees, and then compile the builds as often as needed.
  • After I got the hang of all this, I figured everyone who has an S9 or S9+ should be able to benefit form Lineage OS 18.1 support. These phones have great hardware and I think it a shame not to allow users the option to de-google it or take full control of it so soon after it has been released. Besides, the 4.9y kernel is going to be maintained until 2023. So I upgraded from a 3600 to a 5900x and 16gb RAM to 32gb RAM to speed up the builds (each build is only about 8 minutes now) and support the community!
  • I would like to see an official build, but I can't maintain it all by myself. I am not a programmer, and most of the code I look at is jibberish to me; I just trust the Linux team and Lineage OS team. So we need the community here to help me with build errors when the Lineage team makes changes to their OS; I'm not knowledgeable enough yet to tackle those problems on my own. But I am learning, and have successfully tackled two compile errors so far with the help of the community, and I've learned from them :D
What you will get with this build, even though it is unofficial is:
  • Kernel updates straight from the Linux Long-term Maintenance team; this is very official and safe;
  • AOSP security patches straight from the Lineage group; this is very official and safe;
  • Lineage OS updates as they roll out; this is very official and safe;
I literally can't do anything else because of my limited skillset.
Thanks for the comprehensive answer, I highly appreciate it and I admire your dedication :) Unfortunately I have no knowledge at all so I cannot not support you apart of reporting bugs.. :p
 
  • Like
Reactions: Neurotical

LooPhei

Member
Sep 14, 2021
5
1
With regards to safety and trustworthiness:
  • Everything is open source so anyone can see what is going into the all the builds. This includes the kernel, Lineage OS, and Samsung device trees. These links are in the OP.
  • I don't make any changes of my own because I am not knowledgeable enough to do that, but I do copy kernel patches from the Linux Long-term Maintenance team run by Linus and Greg for the 4.9y branch; I can at least bug-test and roll them into the weekly ROM builds. Linus & Greg pretty much head up Linux entirely, so the patches they approve are as trustworthy as you can get :D
  • I also got the Wireguard kernel patch into this build, which is pretty awesome, but without the help of the contributors in the OP, I really wouldn't have been able to do it on my own.
With regards to making it official:
  • I was using the official Lineage OS, but when the support for official status was dropped, I started learning how to build Lineage for unsupported devices. Then I came across Synt4x's repos, which gave me all the resources needed to build Lineage 18.1 for the S9 and S9+. I simply maintain kernel patches that come out weekly by the Linux Long-term Maintenance team (Linus & Greg et al.), work with the community here to maintain the device trees, and then compile the builds as often as needed.
  • After I got the hang of all this, I figured everyone who has an S9 or S9+ should be able to benefit form Lineage OS 18.1 support. These phones have great hardware and I think it a shame not to allow users the option to de-google it or take full control of it so soon after it has been released. Besides, the 4.9y kernel is going to be maintained until 2023. So I upgraded from a 3600 to a 5900x and 16gb RAM to 32gb RAM to speed up the builds (each build is only about 8 minutes now) and support the community!
  • I would like to see an official build, but I can't maintain it all by myself. I am not a programmer, and most of the code I look at is jibberish to me; I just trust the Linux team and Lineage OS team. So we need the community here to help me with build errors when the Lineage team makes changes to their OS; I'm not knowledgeable enough yet to tackle those problems on my own. But I am learning, and have successfully tackled two compile errors so far with the help of the community, and I've learned from them :D
What you will get with this build, even though it is unofficial is:
  • Kernel updates straight from the Linux Long-term Maintenance team; this is very official and safe;
  • AOSP security patches straight from the Lineage group; this is very official and safe;
  • Lineage OS updates as they roll out; this is very official and safe;
I literally can't do anything else because of my limited skillset.

I am a bit afraid that this build will not be supported in the future. It is often a problem in open source projects where only one person is responsible.

What do you think about uploading your build scripts to an official repository? Maybe even a github organization where several people are involved?

It would be easier for people to track the builds, reproduce them or even build them themselves without you in the middle. Maybe this would create some transparency?

People could easier create pull requests when they see how everything comes together, here I unfortunately still lack a bit the overview.

We could even use (self-hosted) github action runner to create the builds.

All this could also be written up in a small help page.

Maybe I could contribute with my devops skills as well.
 
Sep 14, 2017
24
7
I sideloaded the last build from September 14. over robs last github release. And it worked flawlessly, I hesitated at first, but I am glad I dit it. Maybe it assures someone.
Thanks so much to all contributors 🙏🏻

One question though, everything works fine except the search button doesn't work anymore since I dirty flashed, does anyone else have the same issue, or is it just me?
Thanks again, I am so happy that I get sec updates again :)
 

king1990

Senior Member
Oct 13, 2012
433
792
I am a bit afraid that this build will not be supported in the future. It is often a problem in open source projects where only one person is responsible.

What do you think about uploading your build scripts to an official repository? Maybe even a github organization where several people are involved?

It would be easier for people to track the builds, reproduce them or even build them themselves without you in the middle. Maybe this would create some transparency?

People could easier create pull requests when they see how everything comes together, here I unfortunately still lack a bit the overview.

We could even use (self-hosted) github action runner to create the builds.

All this could also be written up in a small help page.

Maybe I could contribute with my devops skills as well.
Op did his best and listed everything with links and sources, then you came here and ask for more transparency !! What a nonsense, his builds on GitHub , the trees are public on GitHub , anyone can build the ROM without him being "Middle man". Just sync the source/device trees then type brunch lineage_starlte-userdebug , wait until finish compiling and its done.
Op did extremely good job learning how to build / fix errors , asked the community for help when needed and continued pushing updates for a long time.
He should be thanked and appreciated , this take time and effort.
you clearly don't understand what you are talking about.
 

LooPhei

Member
Sep 14, 2021
5
1
Op did his best and listed everything with links and sources, then you came here and ask for more transparency !! What a nonsense, his builds on GitHub , the trees are public on GitHub , anyone can build the ROM without him being "Middle man". Just sync the source/device trees then type brunch lineage_starlte-userdebug , wait until finish compiling and its done.
Op did extremely good job learning how to build / fix errors , asked the community for help when needed and continued pushing updates for a long time.
He should be thanked and appreciated , this take time and effort.
you clearly don't understand what you are talking about.
that's not how i meant it, actually i was just trying to help. op is doing outstanding work and i will hold back. I'm sorry.
 

Neurotical

Senior Member
Feb 7, 2011
136
160
I sideloaded the last build from September 14. over robs last github release. And it worked flawlessly, I hesitated at first, but I am glad I dit it. Maybe it assures someone.
Thanks so much to all contributors 🙏🏻

One question though, everything works fine except the search button doesn't work anymore since I dirty flashed, does anyone else have the same issue, or is it just me?
Thanks again, I am so happy that I get sec updates again :)
Hi there :) Thanks for the feedback on the Bixby button. I can understand the frustration with it not working, so I did some testing today and found that updating the gpio_keys.kl for defining key 703 was the solution to get some functionality out of it.

Unfortunately I cannot get the CAMERA functionality to work when you press the button, but I was able to get MENU functionality to work! So when you are in any app, if you press the Bixby button, the app's menu will show up! How cool is that?! You can have this functionality by running the OTA update on your ROM, it should download the updated version with Bixby functionality.

Enjoy!
 
Sep 14, 2017
24
7
Hi there :) Thanks for the feedback on the Bixby button. I can understand the frustration with it not working, so I did some testing today and found that updating the gpio_keys.kl for defining key 703 was the solution to get some functionality out of it.

Unfortunately I cannot get the CAMERA functionality to work when you press the button, but I was able to get MENU functionality to work! So when you are in any app, if you press the Bixby button, the app's menu will show up! How cool is that?! You can have this functionality by running the OTA update on your ROM, it should download the updated version with Bixby functionality.

Enjoy!
Just wow, didn't even expect a direct response from you, but that was unbelievable fast.

I am absolutely not frustrated, this build is just awesome, I was just used to using the Bixby button to open my search assistant, I am using "Just Search". Anyway there are other ways to open it, with gesture navigation for example you can just swipe up from to lower left or right side of the screen, so its not really a limitation :)
I already updated to the newest build.
That release was in light speed btw.

Thanks a lot for making the button usefull again 🙏 It seems to work.

The long press function didn't work under Robs build either. But the short press worked with every setting.

I am just explaining this hoping it helps, I am so happy with this build that I would like to buy you a Pizza. So you don't have to fix it if it would be just for me :)

Edit: don't get me wrong I do know that you don't have to do anything :D just don't want to waste your time with such a banality.

Edit: I found a "workaround", maybe someone wants to use it too.
Just use the app "Key Mapper" from the F-Droid Store :)
 
Last edited:
  • Like
Reactions: Neurotical

Olangu

Senior Member
Oct 29, 2011
154
35
Is there any work ongoing for getting this rom/device to be officially supported by lineageos again? There's some downstream projects that build on top of the official releases that I have personal interest in (namely the microg-linage).

Is there anything I could help out with to get this officially supported?
 

gnarf49

Member
Jan 21, 2013
38
17
Building for MicroG is easy, I put it into my semi-script somewhere in the original Synt4x thread but can't find it anymore.
Copying it again below.
The MicroG stuff is in two places, 1. copy patches in env preparation and 2. applying patches in building section. The patches will enable signature spoofing in your build. With this, you can simply install MicroG from FDroid.

# ---------------- Env preparation, first time only
# prep folders
mkdir -p ~/bin
mkdir -p ~/android/lineage

# I keep the device-specific stuff on my Nextcloud, please replace with your locations.
# You'll find the MicroG patches on the MicroG Git and roomservice.xml locations in Synt4x or Neurotical threads
# copy roomservice.xml for target device and MicroG patches
# cp ~/Nextcloud/Install/Android/BuildStarlte/lineage/ ~/android/ -r

# add private ~/bin to path if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
source ~/.profile

# configure git
git config --global user.email "yourmailhere"
git config --global user.name "yournamehere"

# enable caching
export USE_CCACHE=1
export CCACHE_EXEC=/usr/bin/ccache
ccache -M 50G

# init repo
cd ~/android/lineage
repo init -u https://github.com/LineageOS/android.git -b lineage-18.1


# ---------------- env preparation complete. From here for rebuilds

# --force-sync only needed if issues in repo sync or build
repo sync --fail-fast --force-sync

# apply signature spoofing patches for MicroG
cd ~/android/lineage/frameworks/base
patch -p1 -i android_frameworks_base-R.patch
git commit -a

cd ~/android/lineage
source build/envsetup.sh

# choose correct target (e.g. 33-starlte user)
brunch

# ------------------ NOTEs
# NOTE01: If build fails due to out of system resources issues,
# run 1. lunch 2. mka bacon -j 4 (or -j something smaller)
# NOTE02: In case of ckati error 1 "overriding commands..." add flag
# "BUILD_BROKEN_DUP_RULES := true" to BoardConfig.mk file
 
Hi Neurotical,
thank you also from my side for your time and involvent for this ROM.
After several OTA updates I recognized that the build time is every time after a restart/reboot been used and tested with the current release if this changes when I manually set the time via settings. But neither manually changing it nor syncing it via NTP (ru.org.amip.ClockSync) the time is after every reboot on build time. Currently 0:15 UTC+2.
Via # date 16:30 Set it is also on build time after reboot
# date
Fri Sep 17 00:15:35 CEST 2021

Build time Thu Sep 16 18:15:08 EDT 2021

What would be a solution and how can be this debugged more.

Best,
Tobias
 
Last edited:

Olangu

Senior Member
Oct 29, 2011
154
35
Building for MicroG is easy, I put it into my semi-script somewhere in the original Synt4x thread but can't find it anymore.
Copying it again below.
The MicroG stuff is in two places, 1. copy patches in env preparation and 2. applying patches in building section. The patches will enable signature spoofing in your build. With this, you can simply install MicroG from FDroid.

# ---------------- Env preparation, first time only
# prep folders
mkdir -p ~/bin
mkdir -p ~/android/lineage

# I keep the device-specific stuff on my Nextcloud, please replace with your locations.
# You'll find the MicroG patches on the MicroG Git and roomservice.xml locations in Synt4x or Neurotical threads
# copy roomservice.xml for target device and MicroG patches
# cp ~/Nextcloud/Install/Android/BuildStarlte/lineage/ ~/android/ -r

# add private ~/bin to path if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
source ~/.profile

# configure git
git config --global user.email "yourmailhere"
git config --global user.name "yournamehere"

# enable caching
export USE_CCACHE=1
export CCACHE_EXEC=/usr/bin/ccache
ccache -M 50G

# init repo
cd ~/android/lineage
repo init -u https://github.com/LineageOS/android.git -b lineage-18.1


# ---------------- env preparation complete. From here for rebuilds

# --force-sync only needed if issues in repo sync or build
repo sync --fail-fast --force-sync

# apply signature spoofing patches for MicroG
cd ~/android/lineage/frameworks/base
patch -p1 -i android_frameworks_base-R.patch
git commit -a

cd ~/android/lineage
source build/envsetup.sh

# choose correct target (e.g. 33-starlte user)
brunch

# ------------------ NOTEs
# NOTE01: If build fails due to out of system resources issues,
# run 1. lunch 2. mka bacon -j 4 (or -j something smaller)
# NOTE02: In case of ckati error 1 "overriding commands..." add flag
# "BUILD_BROKEN_DUP_RULES := true" to BoardConfig.mk file
Thank you.
It's really appreciated, but for a lot of people, including myself, there's no time to build your own image.
Having it official would make a world of difference, and I'd be happy to support a bit of time, effort or money to get there.
 

Neurotical

Senior Member
Feb 7, 2011
136
160
Thank you Neurotical. I've been away a while from the flashing scene.

1. What kind of backup do you recommend?
2. If the new ROM fails, how do i get to your ROM succesfully?
I am not familiar with any backup tools. To backup my phone, I:
  1. Write down what apps I have and reinstall them;
  2. Copy any important files to my PC before wiping;
If your dirty flash fails, you can use the most recent ROM by installing the latest Lineage recovery, then sideload the ROM in recovery.
 

Klaus20

Senior Member
Nov 20, 2013
369
61
@ SymbionTT - Backup
I work since years with MyBackup Pro.
The app restored back the secured apps (apk and data) flawlessly.
I always do the following is something awkward but certainly:
1. Backup with MyBackup Pro
2. Restart to Recovery Menu, Wipe and Installation of Rome and Gapps
3. restart into the system to see if everything works
4. Restart to Recovery Menu - installation of the magisk.zip (so I can restore the APK's and data in MyBackup).
5. Restart into the system and installation of MyBackup Pro
6. Restore the APK's and data with MBP.
This has been working on all Android phones and tablets
 

4timepi

Member
Sep 24, 2018
12
5
Great ROM. Thank you. Anyway I struggeling with 2 problems since I started to use it.

1. Audio (multimedia) is not always routed via bluetooth to headphones or car-audio. Connecting is always fine, also calls works fine, but multimedia works only sometimes. Temporary solution is to go to Developer settings and change "Bluetooth Audio Channel Mode" to other value. It's going to start route audio, but ofter some time I'm getting into same problems.

2. Wifi stops working after some time. It's not connecting to saved network and not finding any networks. Reboot resolve problem but again only for some time.

I already tried to factory reset networking settings (bluetooth and wireless lan) and upgrade to 12/09 build but no luck. Any one have similar problems?
 

Top Liked Posts

  • 1
    Thanks a lot for the new update :)
    I have two quick generally question.

    1. When I update over OTA my recovery does not get updated, I have to manually load it over Heimdall. Is this normal? In the Updater preferences the "Update recovery" is checked.

    2. After every update over OTA I have to reflash Magisk because root is then gone, is this also normal?

    Sorry if the questions are a bit dump :D I hope you guys are not mad with me.
    I would be very happy for a short classification. Thank you very much :)

    1. I haven't updated my recovery for quite some time, so it's not necessary to reinstall the recovery each time.
    2. If you have to reflash Magisk v23 each time, that is not normal. Every time I update via OTA, my root access and Magisk v23 stays.

    No worries on the questions :) They help the community learn :)
  • 6
    FYI, new build available via OTA and OP includes:

    New kernel 4.9.286
    AOSP October 2021 security update
    Power and charger enhancements
    Full 4G set as default network protocol

    Enjoy!
    3
    FYI:

    New kernel 4.9.284 now available!
    Please update via OTA or download ROM via OP.

    Have a nice day!
    2
    FYI:

    New kernel 4.9.283 now available!
    Please update via OTA or download ROM via OP.
    Have a nice day!

    :):coffee::geek:
    2
    Hi, I have todays release update installed. However, I do not see any wireguard settings or menus. Have I missed something?
    You have to install the Wireguard app. There you will see that the kernel module is installed.
    1
    Sorry for the S9+ novice question.
    Would this rom work on a G965N Exnyos Korean model?
    I only know that this ROM is designed for the S9 Exynos and S9+ Exynos. Snapdragon is not compatible.
  • 14
    2okPze5.png


    ROM DOWNLOADS:

    ROM INSTALL INSTRUCTIONS:
    • From OEM:
      • Lineage Recovery
      • Format /system + /data + /cache
      • Flash
      • Reboot
      • Root is not included. To root, install Magisk yourself.
    • From existing Unofficial weekly:
      • Use OTA, or
      • Sideload via ADB in recovery

    BASEBAND UPDATING:
    1. Install Samsung USB drivers
    2. Install Odin 3.14 (or later)
    3. Download updated baseband firmware from the XDA thread for your model phone.
    4. Unzip and re-pack "modem.bin" into a .tar file such as "modem.tar"
    5. Reboot phone into download mode
    6. Open Odin
    7. Load your modem.tar file into CP in Odin
    8. Start flash
    9. Reboot

    CONTRIBUTORS:

    SOURCE CODE:

    REFERENCES:

    REQUIREMENTS:
    • Stock Samsung Oneui 2 - 2.5 (Android 10) Firmware. (Bootloader + Vendor)

    WORKING:
    • GPS
    • NFC
    • Wi-Fi
    • Audio
    • HDMI
    • Camera
    • Ethernet
    • Bluetooth
    • MTP/ADB
    • Encryption
    • Glove Mode
    • Android Auto
    • OTA Updates
    • Call Recording
    • Mobile Network
    • SELinux Enforcing
    • Fingerprint Sensor
    • Wireguard (via kernel)

    BROKEN:
    • Iris Scanner
    • VoLTE

    XDA DevDB Information
    • LineageOS 18.1, ROM for the Samsung Galaxy S9

    Version Information
    • Status: Stable
    • ROM Firmware Required: Oneui 2 - 2.5

    My work will always be free for everyone to use and I will never hide anything behind a paywall.

    * We are not responsible for anything that may happen to your phone by installing custom ROMs/kernels.
    * You do it at your own risk. You take responsibility upon yourself and are not to blame us or XDA.
    * Your warranty will likely be voided by installing custom ROMs.
    12
    Good day,

    I just want to take a moment to say thank you to everyone who has tried this ROM, given feedback, and even helped out along the way! It is with all of your help that I can keep the builds coming and I look forward to doing this for as long as I can for the S9 and the S9+ :) Our community deserves the best and that only happens when we all work together :)

    Have a great day, and thank you again to everyone in this community :)
    7
    A couple of questions as I am somewhat new:
    1. Why is this build unofficial resp. what is preventing this build to become official again (as starlte official was discontinued after LOS 17.1)?
    2. How trustworthy is an unofficial build compared to an official build?
    With regards to safety and trustworthiness:
    • Everything is open source so anyone can see what is going into the all the builds. This includes the kernel, Lineage OS, and Samsung device trees. These links are in the OP.
    • I don't make any changes of my own because I am not knowledgeable enough to do that, but I do copy kernel patches from the Linux Long-term Maintenance team run by Linus and Greg for the 4.9y branch; I can at least bug-test and roll them into the weekly ROM builds. Linus & Greg pretty much head up Linux entirely, so the patches they approve are as trustworthy as you can get :D
    • I also got the Wireguard kernel patch into this build, which is pretty awesome, but without the help of the contributors in the OP, I really wouldn't have been able to do it on my own.
    With regards to making it official:
    • I was using the official Lineage OS, but when the support for official status was dropped, I started learning how to build Lineage for unsupported devices. Then I came across Synt4x's repos, which gave me all the resources needed to build Lineage 18.1 for the S9 and S9+. I simply maintain kernel patches that come out weekly by the Linux Long-term Maintenance team (Linus & Greg et al.), work with the community here to maintain the device trees, and then compile the builds as often as needed.
    • After I got the hang of all this, I figured everyone who has an S9 or S9+ should be able to benefit form Lineage OS 18.1 support. These phones have great hardware and I think it a shame not to allow users the option to de-google it or take full control of it so soon after it has been released. Besides, the 4.9y kernel is going to be maintained until 2023. So I upgraded from a 3600 to a 5900x and 16gb RAM to 32gb RAM to speed up the builds (each build is only about 8 minutes now) and support the community!
    • I would like to see an official build, but I can't maintain it all by myself. I am not a programmer, and most of the code I look at is jibberish to me; I just trust the Linux team and Lineage OS team. So we need the community here to help me with build errors when the Lineage team makes changes to their OS; I'm not knowledgeable enough yet to tackle those problems on my own. But I am learning, and have successfully tackled two compile errors so far with the help of the community, and I've learned from them :D
    What you will get with this build, even though it is unofficial is:
    • Kernel updates straight from the Linux Long-term Maintenance team; this is very official and safe;
    • AOSP security patches straight from the Lineage group; this is very official and safe;
    • Lineage OS updates as they roll out; this is very official and safe;
    I literally can't do anything else because of my limited skillset.
    7
    FYI:
    • Updated kernel 4.9.277
    • Wireguard kernel access persists through ROM update :)
    • Root with Magisk v23 persists through ROM update :)
    Enjoy!
    6
    FYI, new build available via OTA and OP includes:

    New kernel 4.9.286
    AOSP October 2021 security update
    Power and charger enhancements
    Full 4G set as default network protocol

    Enjoy!