[Thinkpad Tablet General] SomeoneNormal07:
Ok guys, here are some news.

I am completely sure that this thing will start, even so, I have prepared an alternative, in this link you will find some downloads of Lineage GSIs, the version "ARM32 A-only device with Android Go gapps" as I am reading inside the build.prop was made to work with 32-bit systems.

Now, as I have been researching and also testing on my own on this device, what we now need is a COMPILED KERNEL FOR THIS DEVICE that can run the ROM, since with the boot.img files and Android Image Kitchen for Windows 10 I am not able to get it to work in any way, so I will have to compile the kernel from 0, at first this may sound complicated, but luckily Lenovo published all the source code for both devices (for Linux), apparently including all the hardware files required for both boards on their support website.

So next on my to-do list is compiling the kernel, but here's when the bad news comes:

College is getting a bit heavy now, so I'll take a break from this project to put 100% of my attention on the exams.

But don't worry, before that, I have updated the project folder with new files, and also, I have prepared the next notes for you:

Through experimentation and research, I have learned how the android update works, here are some notes for other newbies on this topic.

As we already know, android is updated using a file called updater-script, found in /META-INF/com/google/android, in modern versions of this file (Android 5 onwards) we can find the following line:

block_image_update("/dev/block/bootdevice/by-name/system", package_extract_file ("system.transfer.list"), "system.new.dat", "system.patch.dat");

This is the line responsible for updating the system, it is a very simple method, and that is why I will adopt it to launch the rom, it is very important to have the 3 files that this code mentions in the ROM, otherwise, the system files will not be copied (TWRP will skip any command with missing files.)

The system.new.dat file can be created from our system folder using 2 Tools:

- The first one is Tool Unpack Repack 3.0, but I do not recommend it very much since the way it is made only allows you to directly convert .img files into .dat, and not a system folder directly to .dat, this happens because instead to unzip the rom directly to a folder that you can modify, the tool store the files for recompression in a hidden file called new.system.img, also the program should include a tutorial where it tells you that the size of the final image must be the same as the file in /System_Unpack/temp_working/new.system.img, because I spent about half an hour looking for the correct size.

- The second tool is IMG extractor, which in addition to creating .dat files can also create .img files that you can convert to .dat with the first tool in case you get an error with it, this tool is included with another program called Brotli Extractor.

To create system.new.dat, you need to have file_contexts from the /boot.img/ramdisk of the ROM you are building, and the system.transfer.list (you can find one in the update_files.zip), once the system.new.dat has been created, a new system.transfer.list should appear next to it, you must copy and replace this file in your ROM.

The Lollipop ROM has provided me a 0 byte system.patch.dat file, the sole purpose of which here is to allow the line of code to run, since there is nothing to patch.

Also, in the project folder you will find:

- Source code of both devices (the code of the tb-x104f is of the normal Oreo version, not Oreo go).

- ROMs (these are not flash files, you need to convert the system folder to .dat and add the META-INF folder and the patch and list files).

- Unzipped boot.img from both devices (Android L and M come from the YT3).

- system_test.zip, which is the image that I am trying to run (this time I used android 6 as a base instead of android 5).