Skip to content

Piero Bosio Social Web Site Personale Logo Fediverso

Social Forum federato con il resto del mondo. Non contano le istanze, contano le persone

Trying to summarise my thoughts on what it takes to build an alternative mobile OS.

Uncategorized
10 2 0
  • Trying to summarise my thoughts on what it takes to build an alternative mobile OS. There's some very important and imho rarely discussed reasons why using anything that depends on AOSP is fundamentally a bad idea.

    It basically boils down to culture and politics. The way Android is built and maintained is so fundamentally anti-free-software and anti-community.
    1/8

  • Trying to summarise my thoughts on what it takes to build an alternative mobile OS. There's some very important and imho rarely discussed reasons why using anything that depends on AOSP is fundamentally a bad idea.

    It basically boils down to culture and politics. The way Android is built and maintained is so fundamentally anti-free-software and anti-community.
    1/8

    Firstly, you're relying on a downstream kernel which is impossible to maintain beyond LTS (Some of the smartest folks in the community tried HARD and failed to actually forward-port Android kernels). This exposes you to a whole host of poorly tested codepaths and non-standard drivers which require a whole host of userspace workarounds.

    AOSP itself is so vast and complicated that it's just never gonna be possible to escape the grip of Google.
    2/8

  • Firstly, you're relying on a downstream kernel which is impossible to maintain beyond LTS (Some of the smartest folks in the community tried HARD and failed to actually forward-port Android kernels). This exposes you to a whole host of poorly tested codepaths and non-standard drivers which require a whole host of userspace workarounds.

    AOSP itself is so vast and complicated that it's just never gonna be possible to escape the grip of Google.
    2/8

    To even build your own Android image you need to jump through a bunch of hoops, download hundreds of GB of source code and take >1 hour on even a beefy build machine with ~100GB of binary artifacts. There ARE benefits to having the entire OS source code locally IF you're building an OS the way Google do with many separate teams who work independently.

    But this is never how healthy FOSS projects work, they rely on individuals showing up and working in harmony together, something which is just plain annoying to do with AOSP.
    3/8

  • To even build your own Android image you need to jump through a bunch of hoops, download hundreds of GB of source code and take >1 hour on even a beefy build machine with ~100GB of binary artifacts. There ARE benefits to having the entire OS source code locally IF you're building an OS the way Google do with many separate teams who work independently.

    But this is never how healthy FOSS projects work, they rely on individuals showing up and working in harmony together, something which is just plain annoying to do with AOSP.
    3/8

    Then consider what happens if you need to modify a core part of the OS: You have to fork it, because Google do not care about your patches, and if they do it will take months to get them upstreamed (using gerrit of course!).
    4/8

  • Then consider what happens if you need to modify a core part of the OS: You have to fork it, because Google do not care about your patches, and if they do it will take months to get them upstreamed (using gerrit of course!).
    4/8

    Let's consider a successful AOSP fork in Lineage OS, they do a pretty great job at maintaining infrastructure to build images for lots of devices at a fairly substantial cost. Their developer community though seem to tend towards individualism and "proving" yourself as a good developer before you get treated with respect. This is an understandable result of getting burnt out trying to help everyone who wants to make a port for their phone but just isn't cut out for the work.
    5/8

  • Let's consider a successful AOSP fork in Lineage OS, they do a pretty great job at maintaining infrastructure to build images for lots of devices at a fairly substantial cost. Their developer community though seem to tend towards individualism and "proving" yourself as a good developer before you get treated with respect. This is an understandable result of getting burnt out trying to help everyone who wants to make a port for their phone but just isn't cut out for the work.
    5/8

    Showing my obvious bias here, but let's compare this to postmarketOS. The requirements for space, performance, and network bandwidth are an order of magnitude smaller... The biggest thing you have to compile is the Linux kernel.

    The "onboarding" process for postmarketOS developers often starts with a downstream port, where you boot using the original Android kernel. This often gets you just far enough to have ssh working but not a lot more. But importantly it gets your in touch with other developers in the community and it gets your familiar with our tooling.
    6/8

  • Showing my obvious bias here, but let's compare this to postmarketOS. The requirements for space, performance, and network bandwidth are an order of magnitude smaller... The biggest thing you have to compile is the Linux kernel.

    The "onboarding" process for postmarketOS developers often starts with a downstream port, where you boot using the original Android kernel. This often gets you just far enough to have ssh working but not a lot more. But importantly it gets your in touch with other developers in the community and it gets your familiar with our tooling.
    6/8

    After this, if you want to go further then you basically have to learn kernel development. This can be a huge challenge, but it's something our community encourage and write plenty of guides and documentation to help.

    The fundamental approach is different: you don't have to be running a specific distro or install a bunch of tools, you just run pmbootstrap and it does everything for you. It creates template packages for you and guides you through every step of the process. Compare this to having to manually edit XML files, get acquainted with the repo tool, and wait potentially hours to clone all the git repos.
    7/8

  • After this, if you want to go further then you basically have to learn kernel development. This can be a huge challenge, but it's something our community encourage and write plenty of guides and documentation to help.

    The fundamental approach is different: you don't have to be running a specific distro or install a bunch of tools, you just run pmbootstrap and it does everything for you. It creates template packages for you and guides you through every step of the process. Compare this to having to manually edit XML files, get acquainted with the repo tool, and wait potentially hours to clone all the git repos.
    7/8

    When it comes to creating a truly emancipatory mobile OS, it is beyond absurd to consider AOSP as the basis. I truly believe that Linux Mobile and decentralised development built on top of FOSS is the only way. The same goes for making it as simple as possible to onboard and teach new developers, the more knowledge is shared and the more people are skilled up the more resilient we become.

    TL;DR: FSF please reach out and let us help you actually bring freedom to people! I can be reached at kcxt@postmarketos.org
    8/8

  • When it comes to creating a truly emancipatory mobile OS, it is beyond absurd to consider AOSP as the basis. I truly believe that Linux Mobile and decentralised development built on top of FOSS is the only way. The same goes for making it as simple as possible to onboard and teach new developers, the more knowledge is shared and the more people are skilled up the more resilient we become.

    TL;DR: FSF please reach out and let us help you actually bring freedom to people! I can be reached at kcxt@postmarketos.org
    8/8

    Banger post @cas.

    But I think there are some things that are getting confused.

    I've noticed is people calling it an operating system. Which it is not. It is a research project focused on reverse engineering proprietary blobs.

    I believe they are targeting blobs rather than drivers. Their core values go against any closed source blobs so either your phone won't work like a phone or they attempt to reverse engineer a modems firmware.

    If you read their FAQ section:

    > NO. There are many projects working in mobile phones, and many of them are largely free software. The FSF doesn't see the need to join these projects, but wants to build upon them and improve on their current state of freedom.

    So I think the chance that they take you up on your offer is questionable at least.

  • Banger post @cas.

    But I think there are some things that are getting confused.

    I've noticed is people calling it an operating system. Which it is not. It is a research project focused on reverse engineering proprietary blobs.

    I believe they are targeting blobs rather than drivers. Their core values go against any closed source blobs so either your phone won't work like a phone or they attempt to reverse engineer a modems firmware.

    If you read their FAQ section:

    > NO. There are many projects working in mobile phones, and many of them are largely free software. The FSF doesn't see the need to join these projects, but wants to build upon them and improve on their current state of freedom.

    So I think the chance that they take you up on your offer is questionable at least.

    @carbonatedcaffeine hmm that's good to have clarified. their press release was very poor in this case, zero context given

  • Oblomovundefined Oblomov shared this topic on

Gli ultimi otto messaggi ricevuti dalla Federazione
Post suggeriti