~mil/tlml

Tiling Mobile Linux: minimalistic utilities to make using standard tiling window managers with mobile Linux simple

82bee84 Rework readme a bit; add example configuration previously housed in tlml-ex

~mil pushed to ~mil/tlml-doc git

9 months ago

51feddb Revert "Add support for -nb nopbinary to effectively nop if binaryname in /proc"

~mil pushed to ~mil/limkd git

9 months ago

#tlml

Tlml or tiling mobile linux is a set of minimalistic utilities designed to make using a standard tiling window manager (such as i3, dwm, etc.) with mobile linux devices simple. It's composed of a few utilities built in-house: lisgd, limkd, and mlxl.


Components:

  1. lisgd: Bind synthetic touchscreen gestures to execute commands
  2. limkd: Bind multikey events to execute commands
  3. mlxl: Screenlocker for X that supports deep sleep / suspend state

Example Single-Script Tlml Configuration

  1. tlml_i3_basic.sh: Basic example illustrating limkd + lisgd + mlxl + dmenu in i3 enviroment

Comparison:

In comparison with environments like Sxmo, Phosh, and similar tlml has a much more limited scope, just aiming to provide simple utilies to make using existing (desktop) linux WM-style software usable on mobile devices (calling/texitng, application-space, and similar is out of scope). It's more of a 'set of tools' rather then an enviroment. Additionally each component of tlml is designed to be orthangonol and modular in that lisgd, limkd, and mlxl may be used independently.

The concept overall is a single script for the entire enviroment configuration. See above example tlml


Example Single-Script Tlml Configuration:

Tlml is more of a 'set of tools' rather then an enviroment. Nonetheless, for something OOTB, I wanted to provide a barebones/minimal 'tlml setup'. For this I plan to create postmarketos-ui-tlml which essentially revolves around the above one shellscript reminiscent of .xinitrc.

In the example configuration the enviroment is based on i3wm & everything is controlled from this single script! Basically all that means is launching of lisgd, limkd, a 'central' menu via dmenu, and an interactive wallpaper via stw. Think .xinitrc-style mobile Linux!

  • User interface:
    • Limkd (multitap bindings):
      • Volup 1x: Launch st
      • Volup 2x: Launch menu
      • Voldown 1x: Focus next window
      • Voldown 2x: Toggle tiling algorithm
      • Voldown hold: Kill window
      • Power 1x: Toggle svkbd keyboard
      • Power hold: Enter mlxl
      • Power longhold: Shutdown
    • Lisgd (swipe gestures):
      • Top left->right: brightness up
      • Top right->left: brightness down
    • Mlxl:
      • Power 1x: Toggle crust e.g. deep suspend on (red) / off (blue)
      • Voldown 3x: Toggle screen on (blue) / off (purple)
      • Volup 3x: Exit
      • After 10s inactivity in screen on, automatically suspends
    • Stw (root window)
      • Shows battery, date, processes, services
      • Click to refresh
    • Menu (a simple dmenu menu)
      • Launching support for: Mepo, Firefox, Netsurf, Networks, Htop, Chatty, Calls, Contacts, Reload
      • Customization:
        • Userscripts: Add by naming your script tlml_foo.sh, and add to your $PATH. The script will appear as foo.
        • Flatpaks: installing a flatpak automatically adds it to the menu
        • Graphical Applications: may be overriden by setting TLML_APPS_GUI to comma seperated list. By default set TLML_APPS_GUI is set to: st, gvim, mepo, firefox, netsurf, chatty, gnome-calls, gnome-contacts
        • CLI Applications: may be overriden by setting TLML_APPS_CLI to comma seperated list. By default set TLML_APPS_GUI is set to: htop, nmtui. Automatically launched via st -e.

Contribute: