6 ms·
Sxmo: Linux tiling window manager for phones
- eimrine 3y agoTiling WM is useful for those who touchtype.
- Smith42 3y agoWhat's new with SXMO? Haven't been keeping up since 2021. Is there a stable phone to run this on now?
- c0balt 3y agoThe PinePhone is probably the most stable one. I have seen a few people use it on this one and in a recent thread about the PinePhone it was also mentioned multiple times as a good alternative to the default Plasma.
- tetris11 3y agoNice! I see that it's got two flavours in PmOS: * sxmo-de-dwm: Simple Mobile: Mobile environment based on SXMO and running on dwm * sxmo-de-sway: Simple Mobile: Mobile environment based on SXMO and running on sway
- Y_Y 3y agoOf all the interfaces I tried on the pinephone, sxmo is easily the best. I'm not a big suckless user generally, I respect that kind of software but find myself gravitating more to kitchen-sink stuff like emacs and KDE. That said, sxmo is much snappier than KDE or Phosh and once you get over the the discoverability hump (I think megi had a nice cheatsheet) it's really functional and intuitive (subjectively speaking ofc).
- righthand 3y agoI’ve been running Plasma Mobile on my Librem 5 and it’s pretty snappy though I’m not sure how viable it will be as an app platform as KDE has chosen to rewrite all their core apps using a more mobile friendly framework. So there isn’t a whole lot to dive into and probably won’t be for a few years still. I will give sxmo a try from your recommendation.
- aidenn0 3y agoI run Plasma (via pmos) on a pinephone and snappy is probably the last word I'd use to describe it.
- righthand 3y agoYeah I think I ran an early build on a Pinephone and it was laggy. I’ve heard if you go Pinephone you have to go with the Pro version, because the previous model has no hardware support. Thus the poor quality software experience. Purism actually contributes to the software side so while it’s a bit lacking in quality, it is getting better with snappier ui and battery life.
- x905 3y agoMostly based on Qt responsive Framework Kirigami https://api.kde.org/frameworks/kirigami/html/index.html https://api.kde.org/frameworks/kirigami/html/index.html . The GTK counterpart on Gnome Phosh (Phone Shell) was libhandy (https://gnome.pages.gitlab.gnome.org/libhandy/ https://gnome.pages.gitlab.gnome.org/libhandy/), now for GTK4 merged to libadwaita (https://gitlab.gnome.org/GNOME/libadwaita https://gitlab.gnome.org/GNOME/libadwaita).
- linmob 3y agoAt least for the Kirigami apps [1] that are hosted on invent.kde.org (and not just personal projects), a lot of porting has to KF6 has happened. [1]: https://linuxphoneapps.org/frameworks/kirigami/ https://linuxphoneapps.org/frameworks/kirigami/
- righthand 3y agoThe problem with Kirigami is that it became a grab-bag of missing Qt QML components that relies on Qt Fusion-styling instead of a unique design language as originally proposed. So the migration to v6 doesn’t really benefit, because Kirigami just inherits bugs from Qt QML which may or may not still be present.
- sho_hn 3y agoPlasma Mobile is already using that "new framework" though (always has).
- chrismorgan 3y agoI haven’t used my PinePhone for six months (travel-related reasons), and have gone through another period of not using it (for inscrutable reasons, phone calls weren’t getting audio), but cumulatively I think I’ve got around a year and a half of using it as my phone. I tried other desktop environments, but settled on sxmo/swmo, mostly because I liked the theory of it, and having control in putting pieces together, and being able to ignore my phone and use it over SSH from my laptop, which I’m much more likely to have with me and out, and I’m already used to Sway. Also phosh and KDE both had fairly debilitating issues when I started. They’re probably much better and more suitable now. I’ve always found sxmo seriously buggy. Huge numbers of race conditions that will ruin things until you restart. In order to get open and unlocked, you might need to press the power button once, twice or three times, or press and hold for at least half a second and press a second time, or who knows what else, I can’t remember—all depending on sleep states and what was happening earlier. And any things like status and mode changes will take most of a second before they’re updated visually, rather than happening instantly, which is a surprisingly big drag. Or some mutex state will go bad in some way and you’ll end up with an ever-increasing number of new processes trying to control how the LED should flash, and before long you’ll have to pull the battery out because even holding down the power button isn’t doing anything. You know how people talk up Rust over C, and talk about how various categories of bugs wouldn’t have occurred if only they’d chosen Rust with its memory safety and its superior data model? Well, sxmo is largely implemented in shell scripts, which for large-scale design are considerably worse than C. You get even fewer proper primitives, and it shows. The system as a whole is a hodge-podge of pieces that have covered their eyes and ears to the existence of the other pieces, when if only they would work together, they could achieve much more stable results. Sometimes these things seem OK, but aren’t implemented completely correctly; other times the design is just overcomplicated and ill-conceived. I doubt it’s changed in the last six months, so I challenge anyone that uses sxmo: figure out (a) how to change the system tray clock’s presentation (can’t remember what it was I baulked at, 24h or 12h with zero-padding, where I wanted 12h without zero-padding), and (b) how to have it actually update at the right time rather than up to 55 seconds late (!). The endeavour will take you through a few completely different systems as a 55s timer sets a cached value and the status bar fetches the cached value, but I think it was more complicated than just that, and it comes from at least three significantly different locations on disk (you will want something like ripgrep to aid you in finding stuff in these exercises), and you’ll come away wondering why the status bar command didn’t just include a direct `date +'%H:%M'` command that you could change to `date +'%-I:%M %P'`. Functionally also various things that on Android would Just Work just don’t at all, and even some that on Phosh would Just Work don’t really, or don’t smoothly. But if you can figure out how to make something happen, you can now script it far better. But… yeah, I’ve done a lot of scripting of things. My own personal workflows, I’ve made more convenient than on any other OS (though I dunno, I think I heard Apple had some scripting thing that maybe could come close). Some of these issues have been fixed over time, others have been introduced; overall its actual quality remains fairly low; I continue to use it; perhaps I’m a masochist. In the end, I don’t actually know a single person that I would recommend sxmo/swmo to. But the sort of person that I would recommend it to would certainly already be using a tiling window manager on their desktop, and probably doesn’t care much about phones in general.
- dmwilcox 3y agoLove it. Everything is tied together with shell scripts which isn't everyone's taste but I appreciate being able to hack up something quickly for a phone UI. I wrote an alarm clock script (on the pine phone itself during my commute) which I need to publish it (wakes up right before _the alarm_ from deep sleep to sound an alarm). There's lots of missing functionality (like an alarm clock that sets an RTC wakeup) but overall it is a cool system that I intend on using and hacking on again in the near future Edit: added missing key words in a sentence :/
- amelius 3y agoHas anyone tried to write a WM using Python and Qt (for the menus and such) e.g. PySide6? I know it is possible from Python alone calling Xlib directly, but it would be nice to have a more capable environment based on Qt.
- yaky 3y agoIf you want to style SXMO on Sway (for example: make menu items larger and easier to press with fingers, change font to a narrow one to fit more text per line, aesthetics, etc), this is a useful guide: https://porkyofthepine.org/blog/rice_sxmo_sway.html https://porkyofthepine.org/blog/rice_sxmo_sway.html
- razemio 3y agoAwesome! Thanks. I already thought about using my server for Linux phone sessions. At the moment only tmux+mosh. Having a DM that actually works for phones would be much better. This might help getting me there.
- bsimpson 3y agoWould be nice if there was a screenshot. Everything I've seen about SXMO makes me think it's for neckbeards who care more about Stallman-style freedom than aesthetics/usability.
- batrat 3y agoIs there any Android launcher that is close to this?
- atahanacar 3y agoThe closest thing I can think of is KISS Launcher.
- willsmith72 3y agoIt may be just me, but a 1-2min video demo on the home page in place of the 45min presentation could help to get the idea over clearly.
- tamimio 3y agoTiling manager when there’s no competing (keyword: competing, so librem and the likes don’t count) linux phone is pretty useless.
- knewter 3y agoThere are tons of phones supported by postmarketos, you can use sxmo with any of those as well. But I have a pinephone, I'm "one of those people"
- gray_-_wolf 3y agoI really like the idea. But until it has an actual lock screen, it is not that useful sadly.
- fsflover 3y agoAFAIK it does have a lock screen.
- gray_-_wolf 3y agoYes, but there is no pin nor password for unlock. Or at least there wasn't last time I looked. So calling it a "lock screen" is bit of a stretch...
- jvanderbot 3y agoCool! Question: I don't need to run google apps on this. That's nice. But can I please? Having access to a few key banking apps or home-automation apps, as much as they suck, would be really helpful.
- bobim 3y agoFor "security" reasons banking apps generally disagree running on anything rooted. Is there a way to circumvent that?
- pxeboot 3y agoWhile some banking apps do this, I wouldn't call it common. I have ~10 bank/brokerage apps on my GrapheneOS device and they all work just fine.
- bobim 3y agoWorkaround for me is to change bank then. Would love getting away from iOS spying on me.
- themoonisachees 3y agoI haven't used Linux on a phone yet so I don't know about those, but regular rooted android has easy ways to circumvent what you're talking about.
- seszett 3y agoGenerally, in order to run bank apps on a non-stock ROM you have to root your phone and install things that hide it, kinda defeating the purpose.
- yencabulator 3y agoDon't use a bank that demands an app instead of having a website?
- seabass-labrax 3y agoThere's a piece of software called Waydroid[1] that allows you to run Android applications on GNU/Linux platforms - including the PinePhone. Sxmo, despite its name, can run Wayland instead of X and therefore supports Waydroid. Personally, I haven't managed to get Waydroid to work, a task hindered due to some massive initial downloads which are required to set it up. However, I haven't tried particularly hard, and there are videos online by those more successful than me[2]. [1]: https://waydro.id/ https://waydro.id/ [2]: https://tilvids.com/w/2b2f3a24-ae23-458e-a0fd-2f24a185a11b https://tilvids.com/w/2b2f3a24-ae23-458e-a0fd-2f24a185a11b
- razemio 3y agoWait.... Can this run on a normal intel/amd server and then be used in an xrdp/nx session? I need social compatibility and a good camera. I already tried i3 but it is difficult to use without a physical keyboard.
- westurner 3y agoCould there be motion gestures for Sway on mobile? - pinephone-sway-poc: https://github.com/Dejvino/pinephone-sway-poc#components https://github.com/Dejvino/pinephone-sway-poc#components (Edit) rpm-ostree now supports using OCI container images as host images; so upgrading the OS is easy and more error-proof because you can rollback to the previous (kernel + /etc overlay + root partition + packages) by selecting a different boot menu entry. "Using OSTree Native Containers as Node Base Images" (2023) https://www.opensourcerers.org/2023/06/16/using-ostree-native-containers-as-node-base-images/ https://www.opensourcerers.org/2023/06/16/using-ostree-nativ...
- AJ007 3y agoIs anyone using mutt/neomutt as their e-mail client on this?
- linmob 3y agoFor everyone interested in the whole "Linux on Phones" thing attending FOSDEM, make sure to check out the dev room schedule [0] and relevant stands [1]. [0]: https://fosdem.org/2024/schedule/track/foss-on-mobile-devices/ https://fosdem.org/2024/schedule/track/foss-on-mobile-device... [1]: https://fosdem.org/2024/stands/ https://fosdem.org/2024/stands/
- erikson 3y agoOk it’s time. Goodbye apple.
- neilv 3y agoClever name: suckless -> suckless mobile -> sxmo -> sucksmore
- charcircuit 3y ago>The kernel running on Android devices is heavily modified such that it cannot be maintained by the community Android works on the mainline Linux kernel. If the community can already handle maintaining the mainline kernel I don't think the 210 long series of patches that the Android common kernel includes would break the camel's back. Throwing out all of the value of Android over this is throwing baby out with the bath water. Since Android has multiwindow support it would be reasonable for someone to implement a tiling window manager for it.
- zx8080 3y agoA 2nd title from the front page: > SSH as a first class citizen What the window manager has to do with SSH?
- nirui 3y agoBased on what I've read, Sxmo is not a WM, it's more like a flavored distribution/setup based on postmarketOS. It uses dwm/Wayland as WM, and many other tools to enable other features. The SSH part claimed (based on my understanding): 1. You can read/send text messages via SSH remotely (say on your computer) 2. Read notifications too 3. Access the Bluetooth devices connected to the phone Kind neat.
- kopirgan 3y agoAnything that can help us avoid Google/Apple stranglehold will be most welcome. Looking forward to this or something similar becoming good enough for non expert use.
- tranxen 3y agoI really like sxmo, unfortunately I have the classic pinephone and even with an environment as minimalist as sxmo, the battery is draining really fast. This is the only thing that is preventing me from using the pinephone as a daily driver...