Jump to content

Sxmo: Difference between revisions

From postmarketOS Wiki
Anjanmomi (talk | contribs)
Add description of wayland components
Anjanmomi (talk | contribs)
Add libreplanet presentation
Line 63: Line 63:


== See also ==
== See also ==
* [https://framatube.org/w/dHBrnMQeEt8Mq82KxV4zKm?start=0s Sxmo: Freedom on mobile devices through simplicity and hackability] — Video Presentation at Libreplanet 2022
* [https://diode.zone/w/8MtkgWkkmyH946hwTGLAjE Sxmo: Simple X Mobile - A minimalist environment for Linux smartphones] — Video Presentation at AlpineConf 2021
* [https://diode.zone/w/8MtkgWkkmyH946hwTGLAjE Sxmo: Simple X Mobile - A minimalist environment for Linux smartphones] — Video Presentation at AlpineConf 2021
* [https://sxmo.org/ project homepage]
* [https://sxmo.org/ project homepage]
* [[Sxmo/Tips_and_Tricks|Sxmo Tips & Tricks]]
* [[Sxmo/Tips_and_Tricks|Sxmo Tips & Tricks]]
* [https://cast.postmarketos.org/episode/05-Interview-with-proycon-from-sxmo/ postmarketOS podcast interview with proycon from Sxmo]
* [https://cast.postmarketos.org/episode/05-Interview-with-proycon-from-sxmo/ postmarketOS podcast interview with proycon from Sxmo]

Revision as of 06:19, 17 April 2022

Sxmo
Sxmo homescreen.
Sxmo homescreen.
Name Sxmo
Graphics stack dwm on X11/Xorg or sway on Wayland
Toolkit suckless tools (dwm, dmenu, st, etc) or equivalents on Wayland - sway, bemenu, foot, etc.
In postmarketOS
Package postmarketos-ui-sxmo
Status Available

Sxmo, or Simple X Mobile, is a collection of simple programs and scripts used together to create a fully functional mobile UI adhering to the Unix philosophy.

Installation

You can download an installer image or prebuilt image here.

pmbootstrap config ui sxmo

Alternatively, you may download a PostmarketOS image with Sxmo preinstalled (equivalent to running pmbootstrap init and selecting pinephone and sxmo as the interface).

Usage

User graphical interface controlled by gestures and hardware buttons. Refer to the user guide for detailed usage instructions.

Note that Sxmo is designed for the Pinephone, so don't expect everything to work well on any device out of the box. However, Sxmo is open to contributions that would help to extend portability, see this issue. See below for how to improve functionality on other devices.

Components

Default installation on Xorg consist of:

  • dwm — window manager,
  • dmenu — menu system,
  • lisgd — gesture daemon,
  • svkbd — virtual keyboard,
  • feh — wallpaper,
  • conky — desktop clock,
  • clickclack — audio/vibration feedback on keypress,
  • st — simple terminal,

Default installation on Wayland consist of:

  • Sway — window manager,
  • bemenu — menu system,
  • lisgd — gesture daemon,
  • wvkbd — virtual keyboard,
  • swaybg — wallpaper,
  • wayout — desktop clock,
  • foot — terminal,

State on other devices

Basic functionality forks well out of the box on almost any mainline device. However, there are some things that are still have to be generalised, like:

  • Vibration (sxmo_vibratepine doesn't work on msm8916 even if correct path to vibrate device is set)
  • Sound control (need to get it completly universal instead of hardcoding alsa devices)

Fonts on devices with smaller screens can be configured using the variables dmenu.font, dwm.font, st.font and svkbd.font in the file ~/.Xresources. The positioning of the xdm login greeter can be configured with the xlogin*geometry line of the file /etc/X11/xdm/Xresources.

For more information on how to port new devices, see: https://git.sr.ht/~mil/sxmo-utils/tree/master/item/scripts/deviceprofiles/README.md

Pictures

See also