this post was submitted on 02 Mar 2024
27 points (90.9% liked)

Android

27089 readers
276 users here now

DROID DOES

Welcome to the droidymcdroidface-iest, Lemmyest (Lemmiest), test, bestest, phoniest, pluckiest, snarkiest, and spiciest Android community on Lemmy (Do not respond)! Here you can participate in amazing discussions and events relating to all things Android.

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules


1. All posts must be relevant to Android devices/operating system.


2. Posts cannot be illegal or NSFW material.


3. No spam, self promotion, or upvote farming. Sources engaging in these behavior will be added to the Blacklist.


4. Non-whitelisted bots will be banned.


5. Engage respectfully: Harassment, flamebaiting, bad faith engagement, or agenda posting will result in your posts being removed. Excessive violations will result in temporary or permanent ban, depending on severity.


6. Memes are not allowed to be posts, but are allowed in the comments.


7. Posts from clickbait sources are heavily discouraged. Please de-clickbait titles if it needs to be submitted.


8. Submission statements of any length composed of your own thoughts inside the post text field are mandatory for any microblog posts, and are optional but recommended for article/image/video posts.


Community Resources:


We are Android girls*,

In our Lemmy.world.

The back is plastic,

It's fantastic.

*Well, not just girls: people of all gender identities are welcomed here.


Our Partner Communities:

[email protected]


founded 1 year ago
MODERATORS
 

I have Tecno Spark 10 Pro and would like to install lineageOS or other degoogled firmware, but how can I do this if my phone is not in the list of supported ones?

top 12 comments
sorted by: hot top controversial new old
[โ€“] [email protected] 29 points 6 months ago* (last edited 6 months ago) (1 children)

First things first: I'd check to see if there's an Unofficial image. Consider that and, while you're at it, also consider the risks or making an unofficial build your daily driver. Phones are now vital infrastructure, and you can really strand yourself if an unreliable image bricks your device, or throws some weird comms error that strands you in an airport at the wrong end of your journey.

This is Advanced Technique, no matter how you dice it. One of those One Does Not Simply... ๐Ÿ‘Œ" things. Caveat emptor, here be dragons, ...

*** YOUR WARRANTY IS NOW VOID. ***

Still reading? Brave soul.

Broadly, you'll need the factory image for the device to extract the binary linked objects ("blobs") that drive the actual hardware: the modems, camera, SIM card and whatnot. The necessary blobs would be listed in the developer guide.

Then you'll need to configure and build the system image. You can do this on Windows, but it's certainly easier on some sort of Linux platform.. If you don't already have one handy, you could run one in a VM or Vagrant image (if windows) or whatever Apple the equivalent is for that platform. You'll need to build the compiler environment to wth mukti-arch support for cross-compiling your phone's architecture. Oh, you'll also need to know tour phone's architecture, I.e., what SoC and firmware it uses.

Finally, youlo need to unlock your bootloader and either find or build a compatible recovery image to load the system image, and the Gapps if you're using them.

Pretty much ALL if this is an exercise for the reader. The reason there aren't more official I mages for less popular platforms is because maintaining an official image is A Lot Of Work. For many maintainers it's a labor of love.

[โ€“] [email protected] 2 points 6 months ago (1 children)

you'll need the factory image for the device to extract the binary linked objects ("blobs") that drive the actual hardware: the modems, camera, SIM card and whatnot.

Does this require that you somehow have access to the original firmware for the device? Or are you able to extract this from the firmware already installed on the device?

[โ€“] [email protected] 2 points 6 months ago

Yes, but they're generally not hard to come by. Many of the device manufacturers make the factory images available for download on their support site, and those would have the necessary images and blobs.

Or, if there's an unofficial build for your device they would be included there.

If you're able to unlock your bootloader and then load a compatible recovery, you can take a "nandroid" image of the device to offload to your PC. The blobs would be encoded in there, you'd just have to sort out extracting the right files from the right backup files.

So, you've got a few options.

[โ€“] [email protected] 13 points 6 months ago* (last edited 6 months ago)

You'd have to learn how to port the operating system to your device or pay someone else to. Sorry.

Phones aren't like PCs that way.

[โ€“] [email protected] 7 points 6 months ago* (last edited 6 months ago)

With great difficulty. There are guides out there on XDA and on the LineageOS wiki, but in the end you'll have to figure a lot of this stuff out the hard way.

You can start with a generic GSI image. It'll probably be a terrible experience with bad power management, missing functionality, and mediocre cameras, but you should be able to get the bare basics to work. This assumes you have unlocked the bootloader and made a backup of all system images, of course.

I'd you can't unlock the bootloader, you're screwed. You could try to find an exploit to bypass the phone's protections, but unless your phone is vulnerable to as known exploit chain, that'll take weeks or months or reverse engineering and exploit crafting, an may leave you with a bricked phone.

This assumes there's an open recovery image for your device. If you can't find something like TWRP for your device, you'll need to download the TWRP source code and make a version for your phone.

To go beyond GSI, you'll need to compile Lineage yourself. For that, you're going to need a Linux computer (or VM) with at least 200GB of storage, 32GB of RAM, and as many CPU cores as you can find. Having more than 32GB of RAM will greatly speed up this process, as will storing everything on an SSD. It's probably best to first learn how to compile a known good image (i.e. an emulator image) so you get to know all the steps involved.

If you want an actual install, you'll need to make a port for your device. Look for a supported device with similar specs, and use that as a base. Get the kernel sources from the manufacturer (which they legally will have to provide, but good luck getting those from certain brands) and configure the kernel build in a way compatible with the Android boot process. Extract all the drivers and such from the backup you've made and put them in the right place. The LineageOS wiki has a guide for that. Then build Android on your machine, flash it onto your phone, and see if it boots. Compiling Android can take between half an hour and two hours depending on how fast your computer is. Close down applications if you can't dedicate enough memory to it, because it will die and bail out if you run out of RAM halfway through. If you're stuck with a hard drive for storage, expect compilation to take a long time.

You'll likely need to tweak some SELinux contexts and configure boot scripts to get everything working perfectly. When all is said and done, you'll have your own build of Android that you can do whatever you want with.

Note that if you publish your final image online, you'll need to provide kernel sources, as well as other source files you've altered, depending on the license they're under. You're not allowed to redistribute the binaries you've extracted from the phone, though!

[โ€“] [email protected] 4 points 6 months ago* (last edited 6 months ago) (1 children)

I have Infinix Hot 30. Currently using lineage OS GSI. GSI will work as infinix and tecno are devices by the same company.

[โ€“] [email protected] 1 points 6 months ago (1 children)

the problem is that bluetooth and 3.5 mini-jack do not work for me

[โ€“] [email protected] 3 points 6 months ago (1 children)

I had this issue too. It can be fixed by using alternate way to detect headset and Bluetooth workarounds --> Mediatek in phh settings

[โ€“] [email protected] 1 points 6 months ago (1 children)

can you tell more about where I can find these settings?

[โ€“] [email protected] 2 points 6 months ago

the first options in settings, above network and internet

[โ€“] [email protected] 3 points 6 months ago
[โ€“] [email protected] 2 points 6 months ago* (last edited 6 months ago)

look for a lineageOS GSI