~anjan/sxmo-docs-stable

Table of Contents

  1. Sxmo: Simple X Mobile

#Sxmo: Simple X Mobile

Pinephone Sxmo Demo


Project Overview | Install Guide | User Guide | System Guide | Contributing | Images | Demo Video

Documentation (postmarketOS Stable) | Documentation (postmarketOS edge) | Documentation (Development Version)


builds.sr.ht status builds.sr.ht status builds.sr.ht status

Sxmo, or Simple X Mobile, is a collection of simple and suckless X programs and scripts used together to create a fully functional mobile UI adhering to the Unix philosophy for the Pinephone. You control the UI largely through using the Pinephone buttons (press different numbers of times quickly for different actions) and swipe gestures.

Overview of Sxmo's features:

  • Pinephone buttons actions: (via dwm) press hardware buttons different number of times for different actions (like launching terminals, browsers, and window management)
  • Swipe gestures: (via lisgd) move between workspaces, move windows between workspaces, and raise/lower volume via swipe gestures
  • Menu interfaces: (via dmenu) use the Pinephone hardware buttons to select menu entries (e.g. volume up/volume down/select translates to previous/next/select)
  • Onscreen keyboard: (via svkbd) Multiple layer responsive onscreen keyboard that autoadjusts WM space
  • Window Managment: (via dwm) Arrange windows (in classic dwm layouts like monocle, tile, and bstack), kill clients, and cycle window focus using Pinephone buttons
  • Calls & Texting: (via dmenu scripts/mmcli) Compose texts in $EDITOR / vim-like editor, read texts in $PAGER, make calls (and audio-route) via dmenu script utilizing modemmanager
  • Incoming Text/Call notifications: (via script) Vibrate phone & blink led when there is an incoming call/text
  • Lock Screen: (via custom script) Disable screen input, toggle screen on/off for listening to music / pocket use, and enter deep sleep via button bindings
  • Menu Scripts: Web Search, Files, Countdown Timer, Youtube audio and video (mpv-based), Weather, RSS
  • Web browser: (via surf) Browse the web while saving screenspace and includes Pinephone buttons (via dmenu) based link-following
  • Terminal: (via st) Excellent terminal support with scrollback, copy-paste, and color invert
  • Other Applications: Prebaked images bundle foxtrotgps (GPS), sacc (Gopher client), Firefox and Netsurf (web browsers)
  • System-menus: Control Volume, Brightness, Camera, Wifi, Logout, Modem Info, Launching Apps, and more
  • Application-specific menus: Increase font-size, zoom, paste, on per-application level via dmenu scripts
  • Login Screen: (via xdm) Login/logout via XDM which launches with onscreen keyboard
  • Alpine Linux / PmOS Based Images: postmarketOS's infra bakes images that bundle Sxmo and pmOS (based on Alpine Linux) which keeps things small, simple, and pragmatic

Sxmo 1.4.1 was presented at AlpineConf 2021, you can watch the video.

A screenshot of the interface:

screenshot

screenshot with keyboard

About this wiki

commit cf3b0a17f445debed620e8ec920fbd3e9e520984
Author: Anjandev Momi <anjan@momi.ca>
Date:   2021-11-16T13:57:55-05:00

link to all documentation
Clone this wiki
https://git.sr.ht/~anjan/sxmo-docs-stable (read-only)
git@git.sr.ht:~anjan/sxmo-docs-stable (read/write)