Writeup from 2022 that I assume is mostly still valid. TLDR:
- Mainstream Linux is less secure than macOS, Windows, and ChromeOS. (Elsewhere: “[iOS/Android] were designed with security as a foundational component. They were built with sandboxing, verified boot, modern exploit mitigations and more from the start. As such, they are far more locked down than other platforms and significantly more resistant to attacks.”)
- Move as much activity outside the core maximum privilege OS as possible.
- OP doesn’t mention immutable OS, but I assume they help a lot.
- Create a threat model and use it to guide your time and money investments in secure computing.
Once you have hardened the system as much as you can, you should follow good privacy and security practices:
- Disable or remove things you don’t need to minimise attack surface.
- Stay updated. Configure a cron job or init script to update your system daily.
- Don’t leak any information about you or your system, no matter how minor it may seem.
- Follow general security and privacy advice.


The thing about most default configs of any OS is that user storage is largely accessable to all apps. True of Linux, Android. Windows, …
Graphene has options to restrict that but you have to set it up that way. Android also has App sandboxing for app data.
Thinking through the threat model of course is always good as is hardening. All security is porous. Linux is fine generally. If one is exposing services on the public net it is not clear that any OS or software is sufficiently secure, that takes constant effort in terms of monitoring and management.
Android doesn’t expose any app data and requires a permission for accessing storage (unlike Linux).
However when many apps have a permission it becomes meaningless.
Yes, which is why i very much like what GrapheneOS does with Storage and Contacts Scopes.