[ROM][UNSTABLE][unlocked][karnak] Lineage-18.1[25 October 2021]

Search This thread

xeenon

Senior Member
Apr 26, 2011
115
17
Hello,

Thank you for this ROM. I love it. But I am a little bit confused.

I want to install Netflix and Disney+ from the play store. But I can't find the apps. In the web version of play store, it says there are no compatible devices.

I downloaded the Netflix app from the official Netflix page. After installing the app stopped due incompatibility.

Best regards
 

eris170

Member
Aug 30, 2013
39
3
Thanks for all the work on this! I flashed this to my hd8 a couple weeks ago. Not sure if I have the wrong Gapps or what (should be using Gapps 11 with 18.1-20211028-UNOFFICIAL-karnak, right?). Typing any text at all results in 3-4-many random characters being injected into the text field with each "key press". I disabled auto-correct and auto-fill and that seems to have fixed it. Also Brave and Firefox crash after a minute or so when playing back video on youtube. I have a logcat (https://pastebin.com/56cexaiP) which I tried to capture as far back as "normal" playback was happening. If someone could have a look and let me know if this is "normal"? I read something in this thread about codec issues but not sure it's related.
 

eris170

Member
Aug 30, 2013
39
3
Gapps 11 should be the correct version, no idea why there is random characters being injected maybe try a different keyboard,

There is still some codec issue(s?) so thats probably why your web browser is crashing,
I have found NewPipe with the "Default video format" set to WebM or using a invidious instance works most of the time.
Thanks again! Installed NewPipe (what a great app!) and set to WebM. Playing videos just fine now.

I'll check into a different keyboard if I run into more issues.
 

mikef1

Member
Jun 6, 2010
18
0
Thank-you for this android 11 ROM; for the most part, it works great!
While using it I discovered "Scoped Storage" is something new, and it's a pain.
Is there a way to disable it?
I tried a Magisk module: Scoped Storage Disabler but it doesn't seem to work right.
I also tried a few other methods, but no dice.
I'm trying to copy game files into the 'obb' directory.

Thank-you,
Mike F.
 

kingladar

Member
Nov 3, 2016
17
12
I bought a few 2017 and 2018 Fire HD 8's during the pre-xmas sale. I was able to unlock and reflash the 7th gen (douglas) devices. pardon the pun, a flas. Unfortunately, I had to open up the case on the 8th gen's to get the karnak bootloader unlocked, but once I got that process worked out, I was able to load the 18.1 ROM onto them no problem.

But I was a nit surprised when some of my APKs failed to installed. I didn't realize all the 8th gen ROMs, at least those I could find, are only 32 bit. Especially since the ROMs I loaded on my 7th gen models were 64 bit, and the two have nearly identical hardware. Given that they both use the same 64bit CPU, and benchmark the same, I'm actually wondering if these 8th gen models are even worth the extra dollars.

I (now) realize Amazon shipped both models with a 32 bit version of Android, but beyond that, can someone tell me why there isn't a 64 ROM for karnak, like there is for douglas? And what the technical differences are between the douglas and karnak models? They're spec sheets appear identical, so I assume the changes are rather low level.

I apologize if this info I'm seeking is somewhere else, but after a couple hours on Google, I couldn't find any technical answers to these questions.If it does exist, just post a link please!

Here are the Amazon specs for both models. And as far as I can tell, the only difference between them is which version of Android they support:



Oh, and the 2018 models come in various colors.
 

kingladar

Member
Nov 3, 2016
17
12
If i has to guess i would assume its easier to build LineageOS as a 32-bit ROM instead of having to port the drivers, firmware, kernel, etc to 64-bit, but i might be completely wrong.
My first throught was the Android 11 ROM was built as a 32 bit ROM because the CPU didn't support the new features in Android 11 which require hardware support. Only I quickly realized all of the ROMs that have been posted for karnak are 32 bit.

If it's a question of BLOBS, the OS can be 64 bit, even if the drivers/blobs are 32 bit. It should just involve changing a few flags, and remapping a few pointers inside the build config. I'm tempted to try, but I have enough projects on my plate already. I bought these as cheap test devices, and for use as low power, network monitoring bots, IoT remote controls, etc. I ned to be careful I don't fall down the rabbit hole to far.

So I thought I'd post, and ask the question? It feels like an even bigger mystery to me given this work has already been done for the almost identical, and less popular, douglas variant. The douglas tablets also shipped with a 32 bit ABI.
 
  • Like
Reactions: Reynald0
My first throught was the Android 11 ROM was built as a 32 bit ROM because the CPU didn't support the new features in Android 11 which require hardware support. Only I quickly realized all of the ROMs that have been posted for karnak are 32 bit.

If it's a question of BLOBS, the OS can be 64 bit, even if the drivers/blobs are 32 bit. It should just involve changing a few flags, and remapping a few pointers inside the build config. I'm tempted to try, but I have enough projects on my plate already. I bought these as cheap test devices, and for use as low power, network monitoring bots, IoT remote controls, etc. I ned to be careful I don't fall down the rabbit hole to far.

So I thought I'd post, and ask the question? It feels like an even bigger mystery to me given this work has already been done for the almost identical, and less popular, douglas variant. The douglas tablets also shipped with a 32 bit ABI.

@Kaijones23 tried it as I remember on LOS14. But it resulted in Bootloops.
The Hardware between douglas and karnak is almost similar, but they run diffrent Fire OS. Douglas runs on FireOS 5 (5.1 Lolipop) and Karnak runs on FOS 7 (9 Pie).
I guess they removed from 5 to 6 everything Kernelside to not support 64bit at all for a reason?
I think its possible to run 64 OS on 32 BLOPS, but in this case it requires a lot of Kernel rewrite and trial/error.
 

Rortiz2

Senior Member
Mar 1, 2018
2,409
1,794
Barcelona
@Kaijones23 tried it as I remember on LOS14. But it resulted in Bootloops.
The Hardware between douglas and karnak is almost similar, but they run diffrent Fire OS. Douglas runs on FireOS 5 (5.1 Lolipop) and Karnak runs on FOS 7 (9 Pie).
I guess they removed from 5 to 6 everything Kernelside to not support 64bit at all for a reason?
I think its possible to run 64 OS on 32 BLOPS, but in this case it requires a lot of Kernel rewrite and trial/error.
We actually booted 64 bit LineageOS 14.1 on karnak (using blobs from some Asus MT8163 tab). However, almost nothing worked.
 
Last edited:

kingladar

Member
Nov 3, 2016
17
12
Cat anyone provide up-to-date instructions for compiling the 18.1 ROM forkarnak? I think there are steps I'm missing and/or something is missing from the GitHub repos. For example, I can't find the manifest with the linaro tool chain. But there are other issues. Like the mt8163/android_kernel_mediatek_mt8163_4.9 repo has no lineage-18.1 branch. So I'm not sure if it was never committed, it isn't needed, or it's identical to lineage-17.1.

It almost feels a like some of the changes weren't committed/pushed., or perhaps there is some other build process/script that I haven't found, or isn't on GitHub.

I've tried a number of different strategies, but at the moment I have the following device_manifest.xml file:

XML:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
    <!-- Device Tree -->
    <project name="mt8163/android_device_amazon_karnak" path="device/amazon/karnak" remote="github" revision="lineage-18.1"/>

    <!-- Kernel sources -->
    <project name="mt8163/android_kernel_amazon_karnak_4.9" path="kernel/amazon/karnak" remote="github" revision="lineage-18.1"/>
    <project name="mt8163/android_kernel_mediatek_mt8163_4.9" path="kernel/mediatek/mt8163/4.9" remote="github" revision="lineage-17.1"/>

    <!-- Vendor trees -->
    <project name="mt8163/android_vendor_amazon_karnak" path="vendor/amazon/karnak" remote="github" revision="lineage-18.1"/>
    <project name="mt8163/android_vendor_amazon_mt8163" path="vendor/amazon/mt8163" remote="github" revision="lineage-18.1"/>
    <project name="mt8163/android_vendor_raffy" path="vendor/raffy" remote="github" revision="lineage-18.1"/>
</manifest>

And I've recently tried pulling in the linaro tool chain with variations on this linaro_manifest.xml file:

XML:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
  <!-- Repositories -->
  <!-- Linaro Repositories -->
  <remote name="linaro-android" fetch="git://android-git.linaro.org/" />
  <!-- Linaro Toolchains -->
  <project name="prebuilts/gcc/linux-x86/aarch64/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu" path="prebuilts/linaro/linux-x86/aarch64/aarch64-linux-gnu" remote="linaro-android" revision="master" />
</manifest>

As for build commands, the simplified version would be:

Bash:
mkdir -p $HOME/temp && mkdir -p $HOME/cache && mkdir -p $HOME/android/lineage
cd $HOME/android/lineage
git config --global user.name "Build Robot"
git config --global user.email "[email protected]"
git config --global color.ui false
repo init -u git://github.com/LineageOS/android.git -b lineage-18.1 -g default,-darwin
mkdir -p .repo/local_manifests/
cp $HOME/device_manifest.xml .repo/local_manifests/
cp $HOME/linearo_manifest.xml .repo/local_manifests/
repo sync --jobs=32
export USE_CCACHE=1
export CCACHE_COMPRESS=1
export CCACHE_DIR="$HOME/cache"
export ANDROID_JACK_VM_ARGS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4G"
source build/envsetup.sh
rm -rf out/target/product/karnak/obj/KERNEL_OBJ/.version
rm -rf out/target/product/karnak/obj/KERNEL_OBJ/.config.old
lunch lineage_karnak-userdebug
cmka
 
  • Like
Reactions: Reynald0

rbronco21

Member
Dec 3, 2015
26
0
I've gone back and forth from your 14.1 and 16.0 ROMs with some success. What are the advantages and disadvantages of 18.1? My daughter currently uses it for kid games and some games stop or don't even load. I'd try this out in a second if it didn't mean facing the wrath of a 4yo.
 

moritzm

New member
Dec 1, 2010
1
0
@Kaijones23

Thanks a lot for this ROM. I finally freed the kids tablet from FireOS and can now use a decent adblocker ;)

Just one think is a bit annoying:
Wifi is not working as expected. When my access point is using WPA2/WPA3 in mixed mode, the tablet will not connect to the wifi.
Just tried it with 17.1 and there wifi works fine with the same config. As the camera and some apps are not working on 17.1 I can't switch to 17.1.

Any chance that it can be fixed in 18.1?
 

kingladar

Member
Nov 3, 2016
17
12
I'm able to build the code just fine now. There were 3 typos in the kernel code that were keeping my early attempts from compiling. At least when I was using the v7.5 of the Linaro tool chain.

The only issue in which I was unsure how to fix, was the framerate. It was being calculated at 1520, when building one of the files, but the kernel config had CONFIG_FRAME_WARN=1500. Since warnings were treated as errors, the build was failing. I couldn't figure out how the 1520 value was being derived, so I simply increased the kernel config limit to 1520.

I'm playing around now, to see if I can build a ROM with support for the arm64-v8a ABI. I benchmarked the douglas with 15.1 and karnak with 18.1 and the douglas ROM was about 20% faster. I suspect that was in part because of the ABI.
 
  • Like
Reactions: Reynald0

kingladar

Member
Nov 3, 2016
17
12
This is the error, in kd_sensorlist.c, in the function CAMERA_HW_Ioctl. Anybody know the best way to fix this?

Code:
./error.log:../../../../../../kernel/amazon/karnak/drivers/misc/mediatek/imgsensor/src/mt8163/.c: In function ‘CAMERA_HW_Ioctl’:
./error.log:../../../../../../kernel/amazon/karnak/drivers/misc/mediatek/imgsensor/src/mt8163/kd_sensorlist.c:3394:1: error: the frame size of 1520 bytes is larger than 1500 bytes [-Werror=frame-larger-than=]

I've been using this workaround:

Code:
sed -i 's/CONFIG_FRAME_WARN=1500/CONFIG_FRAME_WARN=1520/g' kernel/amazon/karnak/arch/arm64/configs/lineageos_karnak_defconfig
sed -i 's/CONFIG_FRAME_WARN,COMMON,,,1500,1500,1500,1500,1500,1500/CONFIG_FRAME_WARN,COMMON,,,1520,1520,1520,1520,1520,1520/g' kernel/amazon/karnak/scripts/kcrs/correct_config.csv

But that just increases the threshold. It doesn't set the frame rate to 1500. I'm not sure how important this is... older kernel builds for mt8163 used a frame rate of 1400.
 
  • Like
Reactions: Reynald0

flatherskevin

Senior Member
Mar 26, 2013
144
43
Boston
Really enjoying the ROM, but on this this version, and the Lineage 16 build, browser keeps crashing whenever trying to download something like gapps
 

Top Liked Posts

  • There are no posts matching your filters.
  • 22
    7652ffeccaa6bbdcda57289d991b093d.gif
    Disclaimer
    Code:
    /*
    * This ROM will eat your cat
    * I am 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 the products you find here before flashing it!
    * YOU are choosing to make these modifications.
    */

    LineageOS is based on the Android Open Source Project with extra contributions from many people within the Android community. All the source code for LineageOS is available in the LineageOS Github repo. And if you would like to contribute to LineageOS, please visit Gerrit Code Review.

    - This ROM only works with unlocked Fires!

    Rules
    - Please search the thread before asking questions
    - Please report bugs here
    - Report only one issue per bug report
    - When reporting bugs please post a logcat and/or dmesg if possible

    Prerequisites for Installation
    - Unlocked Bootloader
    - TWRP Installed

    Install/Upgrade the ROM
    - Boot to TWRP
    - Go to wipe and wipe: system, data, cache
    - Go to install and flash ROM.zip
    - Flash G-APPS (Optional)
    - Reboot

    Downloads
    Lineage-18.1- for Amazon Fire HD 8" 2018
    G-APPS (ARM)

    Source Code
    - Kernel Source: https://github.com/mt8163/android_kernel_amazon_karnak
    - Device Tree: https://github.com/mt8163/android_device_amazon_karnak/

    XDA:DevDB Information
    Lineage-18.1 for Fire HD8 (karnak), ROM for the Amazon Fire HD 8 and HD 10

    Contributors
    Kaijones23, Rortiz2, t0x1cSH, k4y0z
    ROM OS Version: Android 11
    ROM Kernel: Linux 4.x

    Version Information
    Status:
    Testing
    Current Beta Version: 0.1
    Beta Release Date: 2021-10-28

    Created 2020-10-25
    Last Updated 2021-10-28
    6
    Worklist / Tasks

    - [Fixed] Codecs not working
    - [Fixed] Camera not working
    - [Fixed] switch to userdebug build
    - [Fixed] Fixed glitches in the codecs
    - [Fixed] persistent notification from "Android System"
    - [Fixed] Live Display Flickering
    - [Fixed] fix Codecs fdsan being crashed.
    - [Fixed] Updated Signature spoofing To Pixel 5
    - [todo] Fix Camera Dim in Recording Mode
    - [todo] Make graphics smoother
    5
    Released the update for Fixing livedisplay issues by adding the vendor hal with the lineage
    4
    When "Advanced restart" is enabled and I use the reboot to recovery option it hangs on the Amazon screen with "=>RECOVERY Mode..." in the bottom left corner.
    do you have the latest twrp? if not you can download here
    4
    Well the glitching seems to be gone but instead the apps that were glitching before now just wont play content,

    I attached a adb logcat below (used Newpipe to recreate the error
    i would use vandced instead of newpipe temporary until we work on fixing the issues