sxmo-utils/scripts/modem/sxmo_modemmonitortoggle.sh -rwxr-xr-x 2.5 KiB
Rework the status bar

Goals of this patch :

- display the signal quality

I used a thermometer icon cause there is no available icon with a
filleable bar o_O

- display the currently used network technology (4g, 3g, etc...)

I used the mapping from:


Dylan also said:

Anything from POTS to GPRS = 2G
LTE = 4G
5GNR = 5G

- display the modem infos when modemmonitor is disabled

We want to decorelate the modem monitor from the icon. We still want to
know easily if modem monitor is runing but we also want those modem
infos if not.

- simplify the modem state determination (no state file anymore)

The statusbar probe mmcli itself.

- fix the leading timer without call issue

This was caused by the "pgrep -f" command that was matching itself.
Using a simple "pgrep" looks good enough anyway.

- fix some sxmo_statusbar update spaming issues (vol control)

This one point took me a lot of time to findout a good solution. We want
the USR1 kill to be spamable without causing issue to the displayed bar.
We dont want mid rendered bar (half the icons).
We dont want empty bars (empty stdout line).

I use some variable to store pid, smart waits and a better trap function
to make it to works cleanly. Now we can spam statusbarupdate. Only the
last one will actually redraw the bar.

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
Move operating system detection to sxmo_common

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Fix non-eg25 modems in modemmonitortoggle

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Add Arch handlers to manager daemons in sxmo_modemmonitortoggle
Make sxmo_modemmonitortoggle reset ospotent
SWMO - SXMO over Wayland

This is a huge patch for Swmo, Sxmo over Sway.

It is Dwm backward compatible so dwm users should not expect regressions.

If you install all dependencies, you then can toggle between Sway and Dwm using a new config entry. It will reboot the phone.

This commit also contains:
    * Make the modemmonitor bullet proof
    * various other smaller fixes

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
ModemMonitor: Periodically check whether the modem is still alive, reset it if not

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Prevent starting multiple modemmonitor on logout/login

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
Call common script, moved icons to common script, removed unnecessary aliases from common (let's add them only when there are conflicts), made sure plays along with shellcheck
modemmonitortoggle may take an argument "on" or "off" to force toggling to a desired state

Signed-off-by: Anjandev Momi <anjan@momi.ca>
Force new process group using setgid -f when starting anything that may possibly kill an entire progress group (kill -9 0) #117

This fixes https://todo.sr.ht/~mil/sxmo-tickets/117 and the crashes when
toggling the modem monitor.

Signed-off-by: Anjandev Momi <anjan@momi.ca>
minor quote fix to satisfy shellcheck
Missed call rework: Use dbus to check for missed calls & properly delete pickup

Use dbus to monitor for missed calls. Missed calls used to work but had a
regression due to the work to make text/calls used dbus. This adds the proper
dbus hook for missed calls as well and also changes the incoming call
notification to allow for multiple incoming calls (theoretically).

Tested for a single caller and transitioning the pickup notification
into a missed call notification and all is working good.
Use sxmo_statusbarupdate.sh script instead of direct calls duplicated logic
Use USR1 signal instead of update file for updating statusbar
Clean up modem functionality & don't ever kill dmenu; move call monitoring to call script
Shellcheck and tabindent all scripts
Fixes related to cleaning up modem functionality; fix audio; add flash toggle
Cleanup calling - mostly working; misc cleanup scripts; add vibrate program