Commit Graph

85 Commits

Author SHA1 Message Date
Stacy Harper
c446e9f23e Refactorise to simplify wm detection
We dont use guesswm and rely on a SXMO_WM env variable. We now use
guesswm for non wm action (from ssh, console, rtc wakes, etc). It will
try to setup needed variables.

This way, we avoid to run sxmo_wm.sh and to check variables everytime.

This allow the user to manage sxmo_screenlock.sh from ssh and to run a
desktop software with "sxmo_wm.sh exec foot" by example.

We remove the "ssh" wm cause it does not really make sense anyway.

The sxmo_rtcwake.sh dont try to setup variables anymore cause the user
must use "sxmo_wm.sh exec" if they want to start a destkop software
anyway.

We remove the "xorg" check everywhere cause that make no sense. We
keep the xorg prefixed methods for common xorgs cases.

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Anjandev Momi <anjan@momi.ca>
2021-11-23 15:26:35 -05:00
Stacy Harper
afe6abef8e MMS Support
In sxmo_modemmonitor.sh checkfornewtexts() we should skip MMS and SMS WAPs,
which will be SMS messages with text of "--" or no TEXTDATA at all.   Hence,
there are a couple small checks in checkfornewtexts() to do that.

As well, there is a further dbus-monitor call in sxmo_modemmonitor.sh that
monitors org.ofono.mms.Service for 'MessageAdded' to process a new MMS messages.

Most of the action happens in sxmo_modemmonitor.sh processmms().

An MMS message might be either a message with an attachment to one recipient
OR a message with multiple recipients ('Group Chat') and no attachments (or
some attachments).

Attachments get placed in ~/.local/share/sxmo/modem/$PHONENUMBER/attachments/.
They are named $PAYLOAD.jpeg, $PAYLOAD.mp3, etc., where $PAYLOAD is the unique
id that mmsd-tng assigns the mms and stores in ~/.mms/modemanager/.  (Note that
since the PAYLOAD file remains on the filesystem, we could just re-extract the
attachments whenever we want them.  This might be an improvement down the road.)

If there are multiple recipients, we will make a "unique" new phone number out
of *all* the numbers involved (to and from) for each group chat.  For instance,
if you and Bob and Suzie are on a group chat you will have a number like
+15551234567+16661234567+17771234567 in ~/.local/share/sxmo/modem. You can
treat this like a normal number (i.e., give it a contact name, reply to it,
etc.)

Once an MMS message has arrived, one notification will be made like normal.

If there are attachments, clicking on the notification will open them all using
sxmo_open.sh.

You can also go to the message (via Texts) and click View Attachments to run
sxmo_files.sh on the attachments directory.

You can also Add an attachment when you compose a message.  There is a basic
ability to Delete attachments too.

I've also reversed the contact lists so the CONTACTNAME is on the left and PHONENUMBER on
the right, otherwise with large phonenumbers it was hard to see who the CONTACTNAME is.

=== MMSD-TNG CONFIGURATION TIPS AND TRIPS ===

sxmo's mms requires mmsd-tng that includes the mmsctl program.  Right now, this is
in the latest git head.  See https://gitlab.com/kop316/mmsd/-/merge_requests/52.
To compile with this on edit meson_options.txt and set mmsctl to true.  Then build as normal
via mmsd-tng's README.  (We can also just do: gcc -o mmsctl mmsctl.c -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -ldbus-1 -ljson-c)

sxmo's mms does not require any configuration on top of what is needed to get mmsd-tng to work.
However, mmsd-tng can be a bit of a tricky thing to confugre, so here are some tips:

1. mmsd-tng includes example configurations in its README. A helpful list is here:
https://gitlab.gnome.org/GNOME/mobile-broadband-provider-info

Here is an example (works with "Mint Mobile" which uses T-Mobile):

~/.mms/modemmanager/mms

[Modem Manager]
CarrierMMSC=http://wholesale.mmsmvno.com/mms/wapenc
MMS_APN=Ultra
CarrierMMSProxy=NULL
DefaultModemNumber=NULL
AutoProcessOnConnection=true
AutoProcessSMSWAP=true

[Settings]
UseDeliveryReports=false
AutoCreateSMIL=false
ForceCAres=false
TotalMaxAttachmentSize=1100000
MaxAttachments=25

2. mmsd-tng must use the *modem's* dns to resolve mms files.  Since
NetworkManager rewrites /etc/resolv.conf with both wifi and modem active, I
found it easiest to have a static /etc/resolv.conf and to set
/etc/NetworkManager/NetworkManager.conf dns=none.
2021-10-31 10:57:13 +01:00
Stacy Harper
10722874ac Typo, remove leading line 2021-10-21 11:58:32 +02:00
Stacy Harper
b22faa8300 Cleanup sxmo_screenshot 2021-10-21 11:54:46 +02:00
Zach DeCook
576550451d Screenshot: Copy path to clipboard in wayland, rework script for better error detection
also, ostensibly fix clipboard copying for x

Signed-off-by: Stacy Harper <contact@stacyharper.net>
2021-10-21 11:54:45 +02:00
Anjandev Momi
23391c1e3e Add screenshot support in wayland (sway)
User must have grim and slurp installed.
We should add those programs to the swmo ui metapackage

Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-10-20 17:58:00 +02:00
Stacy Harper
9bd3f31ba9 Cleanup sxmo_file.sh
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-09-19 22:28:53 +02:00
Stacy Harper
f0ca704812 sxmo file only should open the selected file
Opening all following files only is meaningfull for pictures or videos
but crazy when openning pdfs with zathura by example.

Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-09-19 22:28:48 +02:00
Maarten van Gompel
a9ac024fe9 use --index instead of -idx for compatibility with bemenu, requires similar patch for dmenu 2021-08-24 23:11:58 +02:00
Stacy Harper
8a27933c47 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>
2021-08-22 13:23:22 +02:00
Miles Alan
f63852a801 scripts/appscripts/sxmo_youtube.sh: Switch back to using codemadness-frontends
We originally switched off codemadness-frontends / idiotbox because it was
no longer functional. Nowadays it works again and is substantially faster
then ytdl.

Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-06-13 21:06:37 +02:00
noneofyourbusiness
823ad95477 add scrot script & add scrot to appmenu
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-06-06 22:23:15 +02:00
Maarten van Gompel
198462764f small patch to reconcile the last two commits 2021-06-04 21:54:35 +02:00
noneofyourbusiness
1121e29b3e replace "st -e" with sxmo_terminal.sh and edit it to use st -e instead of st
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-06-04 21:50:59 +02:00
Anjandev Momi
358d79894e sxmo_files: add "open in st" for current directory
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-06-04 21:50:37 +02:00
Stacy Harper
18892aa181 Fix default dir to HOME
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Anjandev Momi <anjan@momi.ca>
2021-05-23 20:05:10 +00:00
Stacy Harper
457aa3e1b0 Open the selected file then the nexts preserving the order
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-05-15 23:54:39 +02:00
Stacy Harper
f37de20a0d Make sxmo_file killeable with gesture
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-05-15 23:54:39 +02:00
Maarten van Gompel
c043c50175 failed attempt to fix shellcheck broke script, reverting 2021-03-22 20:06:48 +01:00
Maarten van Gompel
5da2f78665 fixed shellcheck after latest patch 2021-03-17 22:14:23 +01:00
Stacy Harper
0221dd333d allow sxmo_files to reload file list
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-03-17 22:01:30 +01:00
Stacy Harper
776728f63c Add a sort by submenu
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
2021-03-17 21:07:21 +01:00
Maarten van Gompel
2f62b7c446 Moved checkmark to icons 2021-03-16 22:01:41 +01:00
Maarten van Gompel
4eb914265d Added sxmo_keyboard script that acts as an intermediary to opening and closing the keyboard 2021-03-15 13:51:48 +01:00
Maarten van Gompel
295af30993 various scripts were not sourcing the common include script yet (noted by mrrabbit1155) 2021-02-21 15:14:16 +01:00
Maarten van Gompel
24905884ee Removed explicit font from most dmenu calls, dmenu font is read from Xresources now and kept as uniform as possible 2021-02-01 18:32:32 +01:00
Reed Wade
08b95c6182 sxmo_files now respect user desktop configurations
We use our own implementation of xdg-open that replace the hardcoded
script used in sxmo_files.

We add and will maintain some desktop entries to offer a suckless
experience by default.

Signed-off-by: Reed Wade <reedwade@misterbanal.net>
Signed-off-by: Anjandev Momi <anjan@momi.ca>
2020-11-28 02:39:25 -05:00
Maarten van Gompel
7fb7cd70f3 various indentation fixes (spaces to tabs and stripping trailing whitespace) 2020-11-20 18:10:17 +01:00
Serge E. Hallyn
16d77bcd86 sxmo_weather: add wind direction
It's important for me to see wind direction in addition to speed.  I
understand most people probably don't care, so we should probably show
this only if xinit sets WEATHER_WIND_DIR=1?  But we can bikeshed that
later, for now here's what I'm using on my phone right now.

Signed-off-by: Serge Hallyn <serge@hallyn.com>
2020-11-20 17:23:21 +01:00
Anjandev Momi
e11cf9e523 move sxmo data to XDG_DATA_HOME
Breaking change. Make sure you send an email to the mailing list
telling users to move their
$XDG_CONFIG_HOME/{modem,notifications} files/folders to
$XDG_DATA_HOME

Signed-off-by: Anjandev Momi <anjan@momi.ca>
2020-11-08 19:45:39 -05:00
Anjandev Momi
b56cd2b6cb sxmo_youtube: move history file to XDG_CACHE_HOME 2020-11-08 00:22:44 -05:00
Reed Wade
9b88aeb3d2 reopen file dmenu after handled it
Signed-off-by: Reed Wade <reedwade@misterbanal.net>
Signed-off-by: Anjandev Momi <anjan@momi.ca>
2020-11-02 12:29:32 -05:00
Miles Alan
67a5a25163 Omit empty lines from youtube history file 2020-09-12 22:26:10 -05:00
Miles Alan
a60641cebc Retain position in RSS script when selecting items 2020-09-12 22:26:08 -05:00
Miles Alan
47eda92e03 Allow multiple word queries for youtube script 2020-09-10 19:07:43 -05:00
Miles Alan
7f2f50c11a Use proper ytdl flags instead of JSON output for sxmo_youtube.sh
Avoids unecessary JSON parsing; also this is simpler and may just be
a bit faster as well.
2020-08-26 17:11:34 -05:00
Miles Alan
f57cc7db8b Cleanup sxmo_youtube.sh, shellcheck, indent properly, and remove unused cndtn 2020-08-25 21:22:29 -05:00
Miles Alan
f24e946721 Rework sxmo_youtube.sh script to use ytdl rather then codemadness youtube-cli
Also add in ability to select number of results and fork when opening entries
so that the user can select multiple entries.
2020-08-25 21:16:47 -05:00
Anjandev Momi
24c650ee49 files: play mkv files in mpv 2020-08-22 16:20:56 -05:00
Anjandev Momi
6b9233b965 youtube: keep search history
resolves #50
2020-08-18 21:27:18 -05:00
Maarten van Gompel
ace9960926 Made choice for virtual keyboard configurable through the $KEYBOARD environment variable.
This implements what was suggested in the discussion regarding the svkbd
patch, it makes the choice of virtual keyboard configurable using the
$KEYBOARD variable, rather than hard-coding it.
2020-07-26 10:22:31 -05:00
Miles Alan
5c4c6c15e2 Refactor xinit to be more structured and set $EDITOR if unset to vis 2020-07-18 10:14:58 -05:00
Miles Alan
d2ee25d724 Allow viewing cached RSS feeds via toggling on/off fetch option 2020-07-17 22:43:29 -05:00
Miles Alan
0801bb1adb Restructure configs into seperate folder 2020-07-12 19:29:46 -05:00
Miles Alan
4fe129882d Fix weather hourly forecast time for <12hr times 2020-07-11 09:53:18 -05:00
Anjandev Momi
fe24fec53d make files dmenu case insensitive
Signed-off-by: Miles Alan <m@milesalan.com>
2020-07-09 22:18:24 -05:00
Anjandev Momi
0013ea3d73 files: if folder name longer than 7 characters, truncate
Signed-off-by: Miles Alan <m@milesalan.com>
2020-07-09 20:51:30 -05:00
Miles Alan
f25bb821ba Fix loop for sxmo_weather.sh 2020-07-09 18:40:02 -05:00
Miles Alan
57f6e5897e Loop reddit script and use URL handler script with fork 2020-07-09 18:26:10 -05:00
Miles Alan
7a9ec120e1 Fork urlhandler program if run with fork option and pass opt in RSS script 2020-07-09 18:22:30 -05:00