Reading this toot, it is confusingly worded. The phone with broken GPS is an Android phone, I don't yet own a Pinephone or Librem 5. My remark about free software phones not being ready is based on reading, not personal experience, and the sadness that I'm replacing a phone that at least has some semblance of user control (LineageOS, chroot GNU system, etc) with a stock Android system because I can't waste time building this setup yet again.
Even just installing the Android SDK is a real chore. I've made some little custom Android apps, but I've long since given up on even re-building the one's I've made in the past, let alone making any more ambitious app.
The results of fighting Android have always been disappointing and not very useful, anyway. I have lots of plans when I get a real free software phone, but trying to use an Android phone outside of Google's myopic vision of what a phone should do (or with tools other than Industrial Grade Enterprise Java Boilerplate And Build Using Bloated Brittle Tools that Google wants you to use) is just unsatisfactory.
Anyway, I think I'm going to get a used Samsung Galaxy S10, which seems like it's in a good spot between being new with good features and being cheap. And specifically has some features I want (at least as far as I can tell...), including USB host mode to connect to hdmi, keyboard and such, ethernet, etc. Any suggestions from the peanut gallery?
And even giving up on fighting a new android phone will require probably a couple hours of installing packages and configuring stuff yet again. I know some of this I could automate by syncing all of this data to Google. Bleh. I'll stick with F-droid and the reconfigure grind. Speaking of which, when will f-droid add a feature to install all packages named in some kind of text file?
It sucks that the computer I carry with me is the only one for which I can't keep a declarative configuration, including custom-built packages, in a git repository and quickly clone and replace.
Anyway, I don't have time right now, or in the future really, to spend 40 hours fighting and hacking around OEM and Google BS to try to control my phone. Especially since what I try to do generally ought to be something one could accomplish in 5 minutes by cloning a configuration git repository and hitting a "go" button to link files, install packages, build things, etc.
I'm frustrated with various aspects of my phone, such as the GPS not working. Free Software phones don't seem to be ready for daily-driver use yet (even by me, I think). So I think I'm going to just buy a newer Android phone. And just use the pre-installed OS, and not root it, and not install a linux distro in a chroot environment. I'm just going to stop wasting time fighting android and give up on using my phone as a general-purpose computer until free software phones are better.
JWZ, the author of xscreensaver, has expressed a very strong opinion on his blog that you should never break working code. Eg. "get out of the software industry if you disagree". I recently updated my operating system, which came with a new version of xscreensaver that broke my unlock dialog theming.
So maybe we can break code after all? Or is JWZ allowed because he's more or less left the software industry.
Some years ago I heard that Java got a "lambda" form. I assumed this meant that it supported first class functions somehow. Today I leared that in Java, "lambda" means a nice syntax with type inference for constructing an anonymous class that implements an interface with a single abstract method. This is... disappointing, but not unexpected. Sure, you can jump through hoops to do all the same things, but... Anyway, there are plenty of other reasons I dislike Java, so this matters little.
Not to mention foundational problems and limitations in current generation core technologies like operating systems and hypermedia that have been stagnant for decades, and that big tech companies will at best adjust in small ways that benefit them. Eg. Let's use the same limited OS ideas but let's make it more locked down! Let's use the same flawed hypertext system but make it more complex and bloated so only a monopolistic megacorp can realistically build a browser and steer it!
Flaws like that (Antifeatures, dark patterns, vendor lock-in, pervasive surveillance, security problems in citical but ill-maintained libraries, etc) simply can't be fixed without serious funding for free software.
But in practice at least it's easy to point out many flaws with existing software that either (A) don't get fixed because nobody (in particular software companies) will fund development for it or (B) are fundamentally caused on purpose for business reasons that benefit the proprietor.
I should work on some consice explanations, but a real understanding requires so much technical detail. Simple blanket explanations like "It doesn't work well", "it doesn't interoperate well", "it's not secure", "it's not malleable", and "it's fundamentally a limited paradigm" are not very convincing or elucidating when explaining problems with current software or with proprietary software generally.
"But isn't the software we have good?" No. "Can't proprietary software companies make good software?" No. "Well what is good software, then, and why can only free software ever achieve that?" ... Well, are you ready for a 10 hour lecture?
I don't know the solution, but giving up on the idea of funding free software is giving up on ever having good software.
Server run by the main developers of the project It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!