5 ms·
Is there good documentation anywhere regarding the minimum set of blobs (kernel, HAL, modem, display etc drivers) necessary to gut an Android device back to its
by _wmd 9y ago
Is there good documentation anywhere regarding the minimum set of blobs (kernel, HAL, modem, display etc drivers) necessary to gut an Android device back to its bare shell? I love these alternative OS projects, but really I think a lot of that effort may be misspent for non-purists like myself. Maybe sometime after a simple, basic UI and apps are running on the phone, then a complex project like Microsoft's Android app sandboxing could be attempted
Would love there to be something that provided just enough glue code between HAL and, say, Qt, alongside a bunch of shell scripts for gutting images of common handsets. But getting there myself, I've really little clue about this stuff, but I'm sure there is tribal knowledge buried all over the forums the Android dev community use
- magmastonealex 9y agoIt's not super clear which blobs are needed for particular devices - and it's different for all of them. I'm not aware of a single place to find what's needed - though the LineageOS device repositories can help a lot. The plan, especially when it comes to modems and graphics acceleration, is to package these firmware blobs separately. Then, a user can choose at install time if they're alright with non-free blobs running on their phone. This has already been done for many phones for WiFi/Bluetooth chipsets. This method also has the advantage of letting us move quicker - we don't need to wait years to reverse engineer modem firmware, or be required to spend the time mainlining every device we want to add in order to get the "essential" features for a phone. (I'm a developer on the project)
- lawl 9y agoThat depends on the chip and what you really think you need. Me personally I'm fine with framebuffer drivers, I don't need hardware acceleration. So that needs no blobs. For some Qualcomm chipsets you can get 3D acceleration working without blobs using freedreno. I personally started working on getting the qualcomm modem userspace blobs working under pmOS[0]. If you just want pretty much everything to get to work, there's also the halium project[1] which runs a stripped down android in an LXC container to provide that stuff. This could easily be ported to pmOS too. It really depends on how libre you want your phone to be. Android applications could probably be run on pmOS too using e.g. Anbox[2]. [0] https://github.com/postmarketOS/pmbootstrap/issues/1054 https://github.com/postmarketOS/pmbootstrap/issues/1054 [1] https://halium.org/ https://halium.org/ [2] https://anbox.io/ https://anbox.io/
- XorNot 9y agoI mean what I really want is the ability to have my phone just be native Linux/GNU with android in a container. Ideally I'd like to be able to have 2 androids in a container so I've for somewhere to dump work apps and other invasiveness.
- ollieparanoid 9y agoIt varies per device, but the wiki also has some information about which firmware is needed/where more research needs to be done/which free software re-implementations exist. One example: https://wiki.postmarketos.org/wiki/Samsung_Galaxy_SII_(samsung-i9100) https://wiki.postmarketos.org/wiki/Samsung_Galaxy_SII_(samsu... (I'm a developer)