> Maybe, but the X60 is in China behind a closed border, and I am in
Aotearoa.
Damn, that sucks.
> How does Goggle get any info from an Android device that has never had a
Goggle account associated with it?
The OS.
> Yes, but the difference is that to use my SIM in the PP, I have to have its
cell modem turned on. If I don't, I can leave it turned off, and that's one
less piece of proprietary code in use on the device. The one bit that is
protected by law from being reverse engineered and run with free code.
Why did you buy the Pinephone then? The point of it is to be a phone. It
sounds like you should have bought a laptop. For $300 you could have a *way*
better computer than you'll get by plugging your PP into peripherals. And if
you're just using an Android device's modem instead of the Pinephone's modem
you are no more private or free, probably less so.
> It doesn't appear so, and since I have no experience with replacing the OS
on an Android device, I've been unwilling to risk a hack that *might* work
(and might brick the device). Once I have the PP, I expect I'll have two
Android devices I no longer depend on (I can put my NZ SIM in my Chinese Oppo
with my Chinese SIM if I have to), so I might try some experiments.
Don't let Technoethical's prices fool you. Installing a custom ROM on an
Android phone is very easy. You do need a compatible device though. Don't
try installing an incompatible ROM.
> I've heard this claim a few times. I've never seen any reason to believe
it. ELI5
Linux and much of GNU are C. C is not a memory-safe programming language,
which means that things[1] can happen with memory that are not supposed to.
For example, a program might use a chunk of memory and then stop using it,
but those bytes are still there, and then a malicious program might access
that same chunk of memory and use those bytes to do things.
Ideally programs would not be able to access each other's resources so that
this would not happen, but Linux gives every process it runs the same
permissions as the user that asks it to start the process, with no sandboxing
in between them. This is why running things as root is very dangerous, but
even running things as normal user is somewhat dangerous.
For servers, this can be addressed by creating per-application users, where
each user only has permission to run its application. Security-critical
server applications are often packaged this way. Even on a desktop system,
if you look at "/etc/passwd" to see a list of users on your system, you will
probably see a bunch of usernames that are not yours and that you didn't
create. These are being used to run different processes in isolation.
However, users typically run desktop applications as themselves, so each
application has permission to do anything that the user has permission to do.
This is not secure, although since there are not very many people using
GNU/Linux as a desktop system it is not a very popular target to attack
(unlike GNU/Linux servers, which are very common and very popular to attack,
hence isolation between processes being taken more seriously for server
applications).
Android uses the same kernel as GNU/Linux, but is also used by many people
and is popular to attack, and it has something called an "app store", which
is kind of like a distro's repository, if your distro were a terrible
cesspool of proprietary malware, so it implements isolation of applications
be design. You know how you can go into Android's settings and give
different applications permission to do certain things, like access certain
files and or your camera or microphone? Have you ever wondered why Trisquel
doesn't have something like that in its settings? It's because all
applications run with the same permissions as the user that runs them, so
they only way to prevent them from accessing something is to remove your own
access (keep those files on another medium, put tape over your camera, etc).
There are some works in progress to implement sandboxing for desktop
GNU/Linux. Flatpak and Snap have some basic sandboxing. Whonix appears to
be working on something[2] that will make it easy to run desktop applications
as separate users the way server applications often are. Guix has a very
cool containers feature. But there isn't yet a user-friendly, secure, and
adopted sandboxing mechanism for GNU/Linux like there is for Android.
Does that mean the Pinephone is bad? No, it is what it purports to be: an
inexpensive, hackable phone capable of running GNU/Linux with the minimal
amount of proprietary crap needed to have a decent smartphone (the modem,
since modems have to be non-free, and WiFi, since the WiFi cards with free
firmware would quickly drain a phone's battery). Unlike Purism, Pine64 has
not claimed to be security-focused. Hopefully by the time mobile or desktop
GNU/Linux acheives enough adoption to become a popular target to attack,
sandboxing support will have improved. But if you yourself are a trying to
protect against a sophisticated attacker, you probably want to go with
GrapheneOS for mobile and something like Tails or Whonix for desktop. It all
comes down to your threat model.
> I was initially excited by this, but it seems that with the initial models
you have to take the back off the device to get at these switches, which
makes them almost useless.
Yeah, that was my biggest disappointment with the PinePhone. I wouldn't say
it's *useless*. The back comes off pretty easily, so say you needed to go do
something important didn't want to be tracked you could take 20 seconds to
disable the modem, but it would probably be too inconvenient to switch it on
and off frequently.
> I'm hanging out for future versions in which cameras will have a lense
cover that users can manually slide clear
That would be nice. I wonder how hard it would be to modify the back cover
that way.
[1] https://en.wikipedia.org/wiki/Memory_safety#Types_of_memory_errors
[2] https://github.com/madaidan/sandbox-app-launcher