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?

  • SolidGrue@lemmy.world
    link
    fedilink
    English
    arrow-up
    29
    ·
    edit-2
    8 months ago

    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.

    • scarilog@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      8 months ago

      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?

      • SolidGrue@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        8 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.

  • db2@lemmy.world
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    1
    ·
    edit-2
    8 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.

  • Skull giver@popplesburger.hilciferous.nl
    link
    fedilink
    English
    arrow-up
    7
    ·
    edit-2
    8 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!

  • ar0177417@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    8 months ago

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