It’s a funny thing indeed.
sxmo seems to be the only option not focusing on competing with Apple and Google on a “good enough for mainstream” ux.
I mean Phosh is nice and all. Having frameworks for contacts and calendars just like in Gnome is nice. Pulseaudio working just as on the desktop is great too. But the total experience still leaves the impression of a very subpar iOS/Android copy.
sxmo though, that has decided to not compete with Apple and Google on what they do best, but rather do their own thing and re-envision what a Linux smartphone should/could be.
And I like it. I like it a lot. It’s by far my favourite Linux smart-phone experience so far.
I just need a better phone to run it on, and the Pinephone Pro could be that phone.
New phone or not, I’d also appreciate if sxmo managed to rebase on/ship for Mobian too. The package selection for pmOS and Alpine is pretty weak in comparison.
Agree to disagree? Also I think you’re being somewhat disingenuous or uncharitable here.
sxmo has clearly had a unique vision for mobile Linux for power users and executed on just that.
All core phone functionality is available through regular, composable shell-scripts. And all major events can be hooked by simple user-controlled scripts in $HOME/.config/sxmo without any other alterations to the OS at large, no root required. It successfully employs a tiling window-manager by default to allow simple(!) mobile-oriented multi-tasking.
That’s quite something of its own, with no equivalent anywhere else in mobile space, Linux-based or not.
This is clearly a power-user enabling mobile Linux shell, and it’s making no excuses about it.
Sure there might be technical improvements which are possible at several levels in the stack. I’m not debating that.
That does however in no way take away from the vision behind it and how well that has been executed so far.
To elaborate: The use of a tiling window manager with explicit workspaces doesn't really make sense to me on a phone since every app runs fullscreen anyway. The use of shell scripts doesn't really make sense since editing text on a phone is awful. I don't understand what the definition of "power user" means here either. What does this do that other phones and shells can't do? I can edit shell scripts in Termux on Android too, but it's still awful and unpleasant. Unfortunately I just wasn't able to figure out any reason to use it.
And just to be clear, I would not describe any Linux phone as a grand new vision. They're sadly all playing catch up. Maybe that will improve in the next few years.
Edit: I forgot to mention, the use of volume buttons to control a device with a touchscreen is pretty ridiculous. I mean, come on, you have that big nice touchscreen and you're not going to use it? Or has this improved recently where you don't have to do that anymore? Please let me know, thanks. Maybe I'll try it again if this is any better.
You don't have to write the scripts on the phone. You can ssh into it from your desktop. Or connect a keyboard and screen.
I've seen some neat code editors on iOS/Android that do some fun things like:
- Have a special keyboard that contains only symbols for the target language
- Handles all editing at the AST level so you can't make typos
- Make heavy use of completions everywhere possible
There seems to be no reason we can't also have that here.
No, I would say it opens up infinite possibilities for useful customizations. Even if you aren't a programmer, someone likely writes a relevant script for your use case.
The other platforms have figured this out, where the "someone likely writes a relevant script for your use case" becomes "someone likely writes a relevant app for your use case" and you just go to the app store and download it. No need to mess with scripts or plug in a keyboard, and you still get to have plenty of customization. I believe flatpak has started to add categories for mobile apps so that is bringing us closer to where things need to be.
Edit: I found the Purism blog post where they talk about this, the metadata should be usable by anyone doing packaging or building a mobile shell. https://puri.sm/posts/specify-form-factors-in-your-librem-5-...
The best case with a desktop-like environment like sxmo is to just reuse the touchscreen digitizer as a plain old touchpad, with some tweak for other gestures (e.g. tap for clicking, double tap for dragging). AIUI, this is how mobile clients for VNC and RDP work already, so enabling this on the mobile desktop itself would be quite straightforward.
I don’t think it’s quite that simple. A lot of these competing mobile distros are using and working on the same libraries and porting desktop applications to mobile in similar ways. The biggest differences are usually the desktop distro that they’ve made their base and their desktop environment of choice. It’s common to see enhancements to an application or even core functionality like battery utilization or suspend improvements land in one distro and then be quickly adopted by others. As someone who’s mostly a bystander, the outliers seem to be the people working on the distros that aren’t ports of desktop Linux, like Sailfish, Nemo, and Ubuntu Touch. Of the main desktop-Linux-ports cluster the biggest divide seems to exist between launcher/DE development. Developers are split between the Gnome-based Phosh interface and the Plasma mobile interface. But a similar dichotomy exists on desktop. I’ll also throw in an honorable mention of sxmo and its wayland port, which I consider the equivalent to the underdog tiling window managers on the desktop; which is to say its only option good enough to consider using.