Pinephone et al appeal to nerds and are a good reference case about those tradeoffs but I'm doubtful they'll tip the scale.
Pinephone et al appeal to nerds and are a good reference case about those tradeoffs but I'm doubtful they'll tip the scale.
Just editing fucking textfiles and copying it back to a normal PC (that isn't a mac) is a real bitch. Especially if you don't have an internet connection. It's almost as bad as a ti84+ honestly, just a nicer screen, a couple cameras, and the ability to send IM and email. In fact the TI84 could do things iOS can't, I had compilers on mine.
EDIT: Somehow I missed that you mentioned the battery. Smartphones have some of the worst battery life among any PDA I've had. iPhones can stretch out a few days (maybe a week if it's just sitting in a drawer near a tower) if you use them sparingly but it's nothing like the Palm Pilot or the grayscale calculators that could easily last a month.
If you're on Android, I suggest looking at F-Droid; there exist decent text editors and file managers, and failing all else Termux manages to drag a decent amount of sanity in.
ssh just works (the phone shipped with it preinstalled)
vim just works
scp just works
All my X11 apps just work
All the scripts and little tools I've built up over the years just work (no fighting with namespaces when you switch to root or other weird Android nonsense.)
All my dev tools just work (and you might say "well why would I ever want that on a phone? Because when you find a bug in the OS or an app and you're sitting on transit you can fix it right then and there. No making mental notes, no filling out issues, just slow continuous improvement. Something these mobile OSes will never have.)
Desktop Firefox just works (even without touchscreen mode it's usable. With xinput2 enabled it has nice gesture support.)
Want something to run in the background? Just open an Xterm window, run it, and minimize it. Want it to start on boot? Add it to the default runlevel or your X session just like you would on any other computer.
There's absolutely no reason for any of the mobile nonsense (there arguably never was) other than money for the mobile OS vendors.
My phone works. I open it and it works. I've never been in a position where trying to fix the underlying OS was required nor could I picture it being something worth time I'd have to trade away from my family.
>I don't want a browser that's described as just "usable".
I have to wonder what exactly you do want then, maybe a parade?
I get it though. You don't want the responsibility of configuring your device. That's fine, most people don't. This next thing you said really gets me though:
> I've never been in a position where trying to fix the underlying OS was required nor could I picture it being something worth time I'd have to trade away from my family.
You've been conditioned to feel helpless here. You've been told you can't fix things so you accept that they're broken and don't think about it. That's one reaction and in this situation it's probably healthier. For me it's like living in a house with crooked picture frames and the police showing up if you try to straiten them. It's a little upsetting for people to act like that's reasonable or ok.
I'm currently living with SO MANY "crooked picture frames" on all my devices that I've just given up on fixing after spending tens of hours on them and burning my free time on it. I still prefer Linux in general for a lot of the reasons you like it, but just doing basic "I want to install a program to take screenshots" has send me down hours of reading about how window compositing systems work, and why Snap is the devil even though everyone seems to be using it now. If I wasn't single and had better hobbies other than tinkering with config files, I'd have given up months ago.
If you pull out everything complex and thoroughly understand what's left you won't run into the "idk just reset the whole OS" situation.
Something Windows/OSX users coming to Linux might not realize is that almost nothing in the userspace is actually necessary because the kernel does almost everything. Especially if you don't want graphics but even if you consider those components necisary then all you need are: The kernel (one file plus some modules), a device manager (the thing that creates nodes in /dev when you plug stuff in, if you use kdrive you don't even need this), a display manager (Xorg, kdrive or Wayland) and some kind of shell and VTE (bash and Xterm for example.)
Literally everything else can be thrown out if you don't want to deal with it. Don't like configuring systemd? I've used just script in the past at /linuxrc. Don't like what Gnome is doing or maybe it's crashing on you? Get rid of it, for the most part it's just aesthetic and the functionality can be replaced by eg fluxbox and PCFMan (and maybe wpa_gui if you like using a GUI to configure your wireless card.) Did the package manager get confused? You can actually get away with removing the database and starting over (although this will replace all the binaries it previously installed and potentially overwrite configs.) Don't be afraid to nuke things.
Who in 2022 doesn’t “want graphics”?
Nevertheless, now that is extremely ancient history.
During the last 20 years, I have been using Linux on all my desktops and laptops, without needing any Xorg config.
The only exception is that now I have a couple of lines of Xorg config, which describe how my 3 monitors must be positioned.
Without an Xorg config all would be OK, except that I would have to rearrange the monitors after each power-on.
Of course, there was no need to write those lines of Xorg config, I have just given the command to save the current monitor configuration.
So I cannot imagine what problems still exist nowadays that may require "to redo their Xorg config".
All the problems that I have seen in recent years with Xorg had been caused by either a kernel compiled without some modules needed by the hardware, or by an Xorg server that was installed without some X device drivers needed by the hardware.
With a complete kernel and X server, things should just work.
In my opinion, the worst hardware problems in Linux are usually with Bluetooth or with audio.
I have not encountered yet hardware problems that could not be solved in Linux (unlike for Windows Enterprise, where I have met unsolvable problems).
Nevertheless, in the case of Bluetooth and of audio, I have encountered frequent cases when the default configurations would not work and when finding how to make the right configuration was highly convoluted and unintuitive, so many hours could be lost with that.
Even so, the difficulties of installing Linux versus Windows, Android or Mac OS are just a myth.
Most users see that Windows and the other commercial operating systems just work, because they have been preinstalled by professionals on their computers.
When you are the professional who must install Windows on a new computer and when that computer happens to be slightly non-standard, which is the case for most embedded computers, installing Windows is usually much more difficult than installing Linux.
I have encountered cases when I had to work a week to succeed in making Windows have an acceptable performance on a computer on which Linux just worked from a live USB stick, without any problems.
The issue is "keeping things simple" requires you to have some pretty serious knowledge of Linux, to the point where it's far from simple to know what the "simple" set of things you need to install in order for your system to work, or to know what components you can't buy if you want to use Linux. As-is, my trackpad on my laptop just sometimes doesn't register clicks, even on the best supported drivers (which I had to install by hand because no distro upstreams them). Also the audio system just doesn't work half of the time either, but I'm used to that on Linux, and literally the official explanation I've seen is "idk it's like that. Just reboot if it can't find any audio devices." No other OS makes me have to check the manufacturer of specific sub-components of my motherboard to know whether they'll work at all.
Helplessness.
Drivers are going to be part of the kernel. The only thing I would expect to vary by distro is probably the way firmware blobs are packaged (which is just a matter of installing the appropriate firmware blob package or worst case grabbing the blobs from kernel.org.) In general your hardware shouldn't constrain your distro choice outside of very weird hardware or very weird distros (or maybe Nvidia graphics cards but you just shouldn't use those.)
If you're talking about your WiFi, Bluetooth, or possibly your GPU not working OOTB this is almost certainly what you ran into. Not that Fedora is a bad distro although personally I don't like it.
Also switching out the UI is just a package away if you don't like the default. If you want to run, say, FVWM instead literally just `yum install fvwm` and then log out. It should show up in you display manager (and then since it's an X11 WM instead of a Wayland compositor you can just use scrot etc for screenshots.)
>Just reboot to fix audio
Sometimes Pulesaudio can get funky. Do you atleast run `pulseaudio -k` first?
>Trackpad
Yeah the trackpad situation is not great. I don't buy laptops without trackpoint mice partly for that reason and also because the only machine I've ever used where I didn't hate the trackpad was a mac.
>Shopping for motherboards etc.
An easy shortcut for this is to just check the Arch/Gentoo/Debian wiki for the composite hardware you're looking at and see if people have issues with it. Windows and OSX have similar issues if you want to buy hardware separate from the OS.
I'd look into swapping out my UI if I had any confidence I knew what was going on and how to revert it. I mostly bricked an Ubuntu install earlier last year trying to get Wayland working on it.
I'm pretty sure it's not pulseaudio, it's Pipewire by default, but I think neither of them works. It's something about the device just not registering correctly on boot for some reason.
I knew what I was in for on trackpads, but it's still not a good system/sign either way.
I'm really unsure I agree with you on Windows having "similar issues" with hardware. As someone who's been building and upgrading the same desktop computer for 20 years with a combination of Windows and various Linux distros running on it, I have literally never had a compatibility issue on Windows that took more than going to the company's website and running an EXE for drivers, and I never once went to check if Windows was compatible with any part I purchased. Meanwhile, I found out that the specific sub-SKU of my Intel CPU just doesn't work with the Linux kernel for some features, so I guess I'm either out hundreds of dollars on a new CPU or I just don't use Linux again on that computer.
I'm to the point where I mostly like Linux for day to day stuff, and I really do understand a lot of the reasons why all of this isn't trivial, but it really gets my ire when people try to contend that Windows has worse usability for most normal use cases. I don't know nearly as much about Linux as you or many others, but I appreciate that I can fix things in ways I couldn't before. That said, the complete "there are no guard rails, the only instructions are a forum post you just have to copy-paste from, and sometimes the answer is just NO" of Linux is really its own universe of pain for anyone who doesn't want to have their computer eating up 1-10 hours a week just to keep it running acceptably.
My friend that bought a Framework as well had no trouble putting Debian 11 on it, you just need to add the non-free repo to /etc/apt/sources.list, install the non-free firmware with apt and reboot: https://community.frame.work/t/debian-11-on-the-framework-la...
Wayland also works out of the box on Debian, I have been using it for a few years on a Ryzen laptop without issue.
Fiddling with the OS is a rarity for me. Back when I was a teen I do recall the trouble that was upgrading Ubuntu or getting openSuse running after accidentally filling the disk fully.
Switching to Debian simplified life, I don't invest effort into my OS (eg: opening up a terminal) with any kind of regularity and it simply works, letting me focus on actual work (and video games :D).
“No other OS makes me have to check the manufacturer”
Other OSes are sold on hardware that’s designed to work with them. If you want to buy a laptop to run Linux on, first research whether Linux works well on it. There are plenty of machines of all types that Linux works great on.
As I said elsewhere, I've been building desktops for most of 20 years with just entirely random parts and had Windows always work completely fine on it, and only get better at it over the years. Linux has gotten better as well, but I still have to be paranoid about every single part and sub-component in the system. My current motherboard's USB-C controller just doesn't work with Linux, it seems, but I'm not about to replace the entire motherboard just for that, and I'm not even sure where I'd go to research such a thing.
I don't think you will be able convince a who-needs-graphical-displays and occasionally-run-this-command-a-terminal crowd that this is an issue.
... On Linux? That's the traditional Windows solution.
Most folks who use Linux daily are just flat out better at Linux than me at this point. It makes sense - it's a self-selecting group. But that also means half of the instructions you'll find on a blog or forum or SO assume a lot more familiarity with the system than I have. I've been wanting to try a different visual theme on my computer - it seems easy to install a new one, and the repo I found just has a helper script that should install it, but all the docs also just say "and you can just uninstall it if you want", but there's no uninstall script, and I don't understand the install script well enough to know how I'd undo it if something broke. So I just haven't done it.
To be honest, I kinda felt similar with Android (I think it was LineageOS) at one point, which I have used for a few years on a secondary phone. The system shell went into some broken state where it didn't want to display any quick settings at all, and my search for how to debug such issues (or even just some information on where does it store its state) has been completely fruitless. Turns out nobody does that; I'd have to build my own image from scratch and dig into the source code to debug it, and I have decided that it's a bit too much and that I have better things to do. Rebuilding a single .deb package is fine, rebuilding a whole OS - not so much. Now I'm using GNU/Linux on my phone as well, and debugging things like that is much easier and more approachable, with tons of resources around the Web and people who are willing to help.
So a long time ago, I installed Gentoo running GNOME 2.
There was a menu in the topbar labeled with some kind of icon in addition to the text. Probably the GNOME foot.
Anyway, since Gentoo was all about letting you make the customizations you wanted, I thought it would be nice to replace that icon. I had found an icon of the Gentoo fish wearing a wizard hat and I thought that would be appropriate.
So I looked through the documentation for the menu. I found the file where the icon associated with the menu was defined. And I replaced that with a definition pointing to my preferred icon. This did not work. The icon displayed in the name of the menu didn't change.
It's not that there was no effect. If I viewed the menu properties (you know - right click, "properties"...), my fish-wizard icon showed up (in the properties view) as the icon for the menu where I'd tried to put it. It just wasn't displaying in the topbar the way I'd hoped.
I was unable to figure out how to change the icon the menu actually displayed, and had to give up. The documentation was no help. :(
To know which applications/libraries are available and suitable for a certain task, and what their individual strengths and weaknesses are, is a very different set of knowledge, and often a vastly underestimated part of experience.
I've been using Linux and other Unix/BSD operating systems since the nineties, and I'm completely lost when it comes to helping out others about App store or Windows store options. I can imagine that it's especially hard in Linux to be missing that sort of ecosystem information, as the installation process often assumes some level of technical proficiency and up-front knowledge already.
For experienced Linux users, the experience of freedom is a lot greater than using Windows, Android or Apple operating systems; but if you're just starting out and all unknowns turn up more unknowns, it might be a pretty frustrating experience. I think you have to choose if you want to learn, or if you're willing to settle with whatever you're given in the Windows, Android and Apple world.
I have had home built pcs, custom built ones and have just bought that laptop from a common Linux only supplier. My Dell was much worse.
If it takes more effort than I have spent finding either support, components or experts then it's a bad sign.
Maybe you should just be ever so slightly picker about your Android phones?
> I have to wonder what exactly you do want then, maybe a parade?
Well this just unnecessarily rude, and frankly silly. What I want is a browser that works "well" not that just meets the bare minimum of "yeah it's possible to use".
> You've been conditioned to feel helpless here. You've been told you can't fix things so you accept that they're broken and don't think about it
No. I have told you exactly why.
1. I haven't come across this on my phone
2. I have on other devices and I would much rather spend time with my family now
I have gone through years of tinkering and adjusting xorg config files, wrangling with mythtv, all that kind of thing. It's no longer a trade-off I want to make.
> It's a little upsetting for people to act like that's reasonable or ok.
I think you have invented a false image of me in your head then are feeling upset about that character.
I've found that any problem I have can be solved with something on f-droid / google play and by googling it. This isn't dissimilar to the experience in linux for my headless NAS or VPS to figure out how to run a new service or learning to use borg backup.
Backup photos via SMB share every night if on local wifi/VPN'd home? Sync calendar, contacts with nextcloud via dav? Schedule a copy of my sandboxed work outlook calendar from Nine into a dav calendar so I can share it (read only) with family? Spit tunnel wireguard traffic? All these work without having to root and I'm not spending my evening trying to fix driver issues. I didn't spend an entire evening on these away from family.
I'm not happy giving away the sum total of my experience on this planet to Google but this device just works and it works well. Some conveniences like Android Auto keep me from going to CalyxOS.
I run Windows for work and gaming, and run into issues regularly. Default Android/iPhone makes me a bit queasy.
Most importantly: all these problems are entirely artificial. There's no actual limitation that creates them, just smartphone vendors declaring "things must be painful."
rm -rf / in one of those scripts also just works I assume; my point being that at least part of what you consider nonsense are real security improvements in Android with its permission model. I wish I could easily run Termux and access all everything by default without any restriction, but I also like that I've heard way less stories of viruses on Android than on Windows among my friends.
In fact it doesn't, I have GNU rm installed.
>I've heard way less stories of viruses on Android than on Windows among my friends.
And how often do you here stories of viruses from Linux users? (outside the ones running Wordpress or NPM who carelessly fling executable code from strangers around.) Naive Linux users are protected from this problem but it's done in a very different way: Installing software that the distro maintainers haven't looked at requires a small amount of understanding and thought. They're discouraged from just grabbing executable from the web the way Android and Windows users do and so it's extremely rare that desktop Linux users experience malware (even if you use extremely broad definitions like RMS might. Often maintainers patch out things like telemetry or drop packages containing it altogether) Because of this the kinds of security measures Android has would mostly just get in the way.
These tools are all there if you want them. SELinux can sandbox your app and prompt you for permissions. No one does this because it's just not necessary the way most people use typical GNU/Linux distros.
How often do you hear stories of people switching from Windows to Linux? You and I are not relevant, the median user is, and the median user doesn't even understand your comment.
The Android (and others) permission model is more than just an arbitrary constraint, it does bring real security benefits, and plain Linux is just not there yet.
> SELinux can sandbox your app and prompt you for permissions. No one does this because it's just not necessary the way most people use typical GNU/Linux distros.
No one (well, almost) does this because it's a pain and you're not even sure what you get out of it. Compare with the Android installation prompt where the permissions are explicitly spelled out before you click "install", and where the OS can meaningfully take them back eventually.
No, it's not. Pinephone and Librem 5 can run practically any desktop software just fine and still serve as smartphones well. They're both smartphones and PDAs.
On Android the situation is much better, you can use Termux and it runs things natively.
For Android file transfer is easy, except on a Mac where IIRC you need to install a separate transfer tool. On Windows and Linux the file explorers come with support for the protocol used. (It's MTP I think?)
For iOS with a non-Mac it's more complicated, IIRC for Windows you need iTunes and I never used my iOS device with Linux. You could mount the folder you want in iSH, start an SSH server, and tunnel it over USB to your computer with one of the usbmuxd tools (I don't remember what the specific command is) then copy the files with SFTP/SCP, but that's kinda overkill and would probably be slow.
Also if the screen turns off it kills your sockets so you get to start things like git clone over (which can take tens of minutes on a normal sized repo and will make the phone hot enough its uncomfortable to hold.)
Also you can't multitask at all.
And most importantly: The interesting thing about compilers is that you can generate native executable for the platform. gcc on iSH is generating executables for an interpreter which is no better than just messing around with javascript.
>complicated File transfer stuff
I can literally just scp things back and forth between my phone and computer, the UI is exaclty the same, no extra wires, no extra software and it doesn't matter what device I'm sitting in front of. On my Girlfriend's machine running Gnome I can even type the IP into the graphical shell and everything shows up like a local disk. If I had an MDNS responder set up it would be 100% point and click. If I had a Windows or OSX machine in the house it would just work with those too, no extra software needed (now that Windows ships with OpenSSH.) The UX for this is unbeatable by Apple and Google.
The display is the biggest battery eater, but you can significantly extend lifetime by disabling mobile data and Wifi (use Bluetooth PAN kind of like on a PDA lol) and either undervolting, locking clocks low or disabling the performance cores, there are options. 10-12 hours screen on time even with Wifi on can be achieved.
Did Dropbox and Google Drive shut down service when I wasn't looking? Did the handful of code editors I use suddenly lose the ability to save text files? Did the Files app suddenly lose access to my iSH file system, rendering using Vi under Linux on my iPad impractical?
No.... phew.
From my quotes file: "It's amazing what we can build, it's baffling what we have built." (jrumbut, https://news.ycombinator.com/item?id=25168187) Yes, the hardware is amazing, and the software is sometimes amazing in what it can do, but... If you have gobs of bandwidth (courtesy of modern WiFi and LTE) and loads of RAM and storage and CPUs that scream (seriously, for a while my phone had more cores than most of my laptops at a close clock speed) and a high-quality touch-sensitive screen and a solid OS that makes it easy to use the system even on that tiny screen, but you use it to let apps bloat like there's no tomorrow (Facebook comes to mind), show ads even more efficiently, spy on the user at will, and deliberately make things worse so people will pay more (ex. YouTube), what have you really gained?
Last time I checked, Apple does not subsidize their hardware and actually earns majority their money off of the hardware markup, not the services.
I was blown away when a phone that I bought didn't actually contain all kinds of bloatware. That this is not just forbidden is beyond me.
For my personal usage I'm in the second group. I have several 'real computers', and I just want my phone to do phone stuff, and do it without getting in my way. I have no interest in switching from my iPhone to a PinePhone or whatever.
The big caveat here, which has me a bit worried in the long run, is that there is an entire new generation of people growing up using only devices that are not 'real computers'. That seems really bad, but at the same time I might just be old. Who knows.
Disclaimer: I know the phrase 'real computer' is a bit of a trope, but I hope it's clear what I mean.
That being said, I just had a deep look at the pinephone. And to be honest, I like it, hardware is decent enough, price is good and I like the idea of manual kill switches for various stuff. Thinking about what I use my de-googled, and shot, Pixel 2 for, so, I think the pinephone won't cut it. And the killer is actually banking apps. My banking app was hard enough to get running under CalyxOS and microG, I don't have the stomach to try to get it running under Linux... Something like GrapheneOS or CalyxOS on the pinephone would be great so!
Well, I guess it will be a refurbished Pixel 3 or something when the time comes that my trusted Pixel 2 completely falls apart...
Yes should it be. There's no value in "I suffered to learn this, so everyone should have to". There is a ton of value in "you can now pull data from five easy to use systems in the same time you used to spend on one hard to use system". That's not dumbing down, that's progress. It's raising the abstraction layer and hiding the minutiae. (This is not the same as apps forbidding you from getting to the lower levels. An easy to use UX and access to the lower levels are both desirable, and not in conflict. That apps have one and block the other is not a reason to reject easy UX.)
Smartphones are mostly toys, dark pattern traps for procrastination. They are not productive tools, because you're always going to be a fraction as productive as you are on a full-size screen and keyboard. The only exception is maybe photography, since the sensors are finally catching up to entry-level DSLRs (optics still aren't, and probably never will)
Even most laptop users I know make use of several external monitors and a keyboard and a dock for other accessories.
> The problem is that we don't want to pay
Not sure what you mean. Are you suggesting that end-consumers should be willing to pay developers to not work at corporations and instead focus on creating some kind of open-source dark-pattern free paradise ecosystem for smartphones and other portables?
Side benfit? No tracking from big tech
what does that even mean?