mirror of
https://github.com/km4ack/patmenu2.git
synced 2025-05-18 15:50:10 -07:00
commit
ce8ebbb407
12
changelog
12
changelog
@ -1,7 +1,17 @@
|
|||||||
release=2.2.2
|
release=2.3.0
|
||||||
|
|
||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
|
2.3.0 Add new mailbox management section
|
||||||
|
archive all email
|
||||||
|
delete archives
|
||||||
|
delete sent
|
||||||
|
Add listen modes to manage pat winlink section
|
||||||
|
add mailbox management to main menu
|
||||||
|
move email backup to inbox manage
|
||||||
|
move email restore to inbox manage
|
||||||
|
fix program exit after email restore
|
||||||
|
add quick stats
|
||||||
2.2.2 Update Find Gateway Code for Packet in FA-functions
|
2.2.2 Update Find Gateway Code for Packet in FA-functions
|
||||||
Add manual grid update
|
Add manual grid update
|
||||||
update logo to white background
|
update logo to white background
|
||||||
|
27
manage-inbox
Executable file
27
manage-inbox
Executable file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
export MYPATH=$HOME/patmenu2
|
||||||
|
LOGO=$MYPATH/pmlogo.png
|
||||||
|
MAIN=$MYPATH/./patmenu
|
||||||
|
VERSION=$(cat $MYPATH/changelog | grep release | head -1 | sed 's/release=//')
|
||||||
|
|
||||||
|
CALL=$(grep mycall ~/.wl2k/config.json | head -1 | sed 's/"//g;s/mycall: //;s/,//;s/ //g')
|
||||||
|
|
||||||
|
|
||||||
|
yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
||||||
|
--field="Archive All Email":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-inbox-functions; ARCHIVE-ALL"' \
|
||||||
|
--field="Delete Archived Email":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-inbox-functions; DELETE-ARCHIVE"' \
|
||||||
|
--field="Delete Sent Email":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-inbox-functions; DELETE-SENT"' \
|
||||||
|
--field="Backup Email":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-inbox-functions; EMAILBKUP"' \
|
||||||
|
--field="Restore Email":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-inbox-functions; EMAILRESTORE"' \
|
||||||
|
--button="Main Menu":1
|
||||||
|
BUT=$?
|
||||||
|
|
||||||
|
if [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 252 ]; then
|
||||||
|
exit 0
|
||||||
|
fi
|
146
manage-inbox-functions
Normal file
146
manage-inbox-functions
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
MYPATH=$HOME/patmenu2
|
||||||
|
MAIN=$MYPATH/./manage-inbox
|
||||||
|
LOGO=$MYPATH/pmlogo.png
|
||||||
|
VERSION=$(cat $MYPATH/changelog | grep release | head -1 | sed 's/release=//')
|
||||||
|
|
||||||
|
source $MYPATH/config
|
||||||
|
|
||||||
|
IN=$HOME/.wl2k/mailbox/$MYCALLSIGN/in
|
||||||
|
ARCHIVE=$HOME/.wl2k/mailbox/$MYCALLSIGN/archive
|
||||||
|
SENT=$HOME/.wl2k/mailbox/$MYCALLSIGN/sent
|
||||||
|
|
||||||
|
ARCHIVE-ALL(){
|
||||||
|
mv $IN/* $ARCHIVE/
|
||||||
|
yad --form --width=420 --height=100 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION\rEmails Archived" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
}
|
||||||
|
|
||||||
|
DELETE-ARCHIVE (){
|
||||||
|
yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION\r<b>ARE YOU SURE YOU WANT TO DELETE\rALL ITEMS FROM YOUR ARCHIVE FOLDER?\rTHIS CAN'T BE UNDONE</b>" \
|
||||||
|
--button="Yes I'm Sure":2 \
|
||||||
|
--button="No":1
|
||||||
|
BUT=$?
|
||||||
|
if [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit 0
|
||||||
|
elif [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 2 ]; then
|
||||||
|
rm $ARCHIVE/*
|
||||||
|
yad --form --width=420 --height=100 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION\rArchives Deleted" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
DELETE-SENT(){
|
||||||
|
yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION\r<b>ARE YOU SURE YOU WANT TO DELETE\rALL ITEMS FROM YOUR SENT FOLDER?\rTHIS CAN'T BE UNDONE</b>" \
|
||||||
|
--button="Yes I'm Sure":2 \
|
||||||
|
--button="No":1
|
||||||
|
BUT=$?
|
||||||
|
if [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit 0
|
||||||
|
elif [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 2 ]; then
|
||||||
|
rm $SENT/*
|
||||||
|
yad --form --width=420 --height=100 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION\rSent Emails Deleted" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
EMAILBKUP(){
|
||||||
|
CONFIG=$HOME/.wl2k/config.json
|
||||||
|
WHO=$(whoami)
|
||||||
|
CALL=$(cat $HOME/.wl2k/config.json | grep -m 1 mycall | sed 's/\"mycall\": \"//' | sed 's/\",//' | sed -e 's/^\s*//' | tr '[:lower:]' '[:upper:]')
|
||||||
|
BKUPTIME=$(date +%Y%d%m-%H%M)
|
||||||
|
|
||||||
|
BACKUP=$(yad --form --width=420 --text-align=center --center --title="Email Backup" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Email Backup</b> by KM4ACK" \
|
||||||
|
--field="Backup Directory":DIR \
|
||||||
|
--button="Backup Emails":2 \
|
||||||
|
--button="Cancel":1)
|
||||||
|
BUT=$?
|
||||||
|
|
||||||
|
if [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 1 ]; then
|
||||||
|
$MAIN
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
DIR=$(echo $BACKUP | awk -F "|" '{print $1}')
|
||||||
|
|
||||||
|
cp -r $HOME/.wl2k/mailbox/$CALL $DIR/email.bkup.$BKUPTIME
|
||||||
|
|
||||||
|
if [ -d $DIR/email.bkup.$BKUPTIME ]; then
|
||||||
|
yad --center --text="Backup Complete" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
EMAILRESTORE(){
|
||||||
|
MYPATH=$HOME/dev/patmenu2
|
||||||
|
CONFIG=$HOME/.wl2k/config.json
|
||||||
|
WHO=$(whoami)
|
||||||
|
CALL=$(cat $HOME/.wl2k/config.json | grep -m 1 mycall | sed 's/\"mycall\": \"//' | sed 's/\",//' | sed -e 's/^\s*//' | tr '[:lower:]' '[:upper:]')
|
||||||
|
|
||||||
|
RESTORE=$(yad --form --width=420 --text-align=center --center --title="Email Restore" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Email Restore</b> by KM4ACK" \
|
||||||
|
--field="Restore Directory":DIR \
|
||||||
|
--button="Restore Emails":2 \
|
||||||
|
--button="Cancel":1)
|
||||||
|
BUT=$?
|
||||||
|
|
||||||
|
if [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
DIR=$(echo $RESTORE | awk -F "|" '{print $1}')
|
||||||
|
DIRCHECK=$(ls $DIR)
|
||||||
|
COUNT=${#DIRCHECK}
|
||||||
|
if [ "$COUNT" = 19 ]; then
|
||||||
|
cp $DIR/archive/* $HOME/.wl2k/mailbox/$CALL/archive/
|
||||||
|
cp $DIR/in/* $HOME/.wl2k/mailbox/$CALL/in/
|
||||||
|
cp $DIR/out/* $HOME/.wl2k/mailbox/$CALL/out/
|
||||||
|
cp $DIR/sent/* $HOME/.wl2k/mailbox/$CALL/sent/
|
||||||
|
yad --form --width=420 --text-align=center --center --title="Email Restore" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Email Restore</b> by KM4ACK\r\r<b>RESTORE COMPLETE</b>" \
|
||||||
|
--button=gtk-ok
|
||||||
|
else
|
||||||
|
yad --form --width=420 --text-align=center --center --title="Email Restore" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Email Restore</b> by KM4ACK\r\r<b>Not a valid restore directory</b>" \
|
||||||
|
--button=gtk-ok
|
||||||
|
fi
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -14,9 +14,8 @@ yad --form --width=420 --text-align=center --center --title="Manage Pat" --text-
|
|||||||
--field="Manual Grid Update":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; MANUALGPS"' \
|
--field="Manual Grid Update":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; MANUALGPS"' \
|
||||||
--field="Set ARDOP Speed":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; SPEED"' \
|
--field="Set ARDOP Speed":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; SPEED"' \
|
||||||
--field="Set ARDOP PTT":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; SETPTT"' \
|
--field="Set ARDOP PTT":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; SETPTT"' \
|
||||||
|
--field="Set Listen Mode":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; LISTEN"' \
|
||||||
--field="Delete Alias":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; DELETEALIAS"' \
|
--field="Delete Alias":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; DELETEALIAS"' \
|
||||||
--field="Backup Emails":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; EMAILBKUP"' \
|
|
||||||
--field="Restore Emails":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; EMAILRESTORE"' \
|
|
||||||
--field="Backup Pat Config":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; BKUPCONFIG"' \
|
--field="Backup Pat Config":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; BKUPCONFIG"' \
|
||||||
--field="Restore Pat Config":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; RESTORECONFIG"' \
|
--field="Restore Pat Config":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/manage-pat-functions; RESTORECONFIG"' \
|
||||||
--button="Main Menu":1
|
--button="Main Menu":1
|
||||||
|
@ -180,89 +180,6 @@ exit
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
EMAILBKUP(){
|
|
||||||
CONFIG=$HOME/.wl2k/config.json
|
|
||||||
WHO=$(whoami)
|
|
||||||
CALL=$(cat $HOME/.wl2k/config.json | grep -m 1 mycall | sed 's/\"mycall\": \"//' | sed 's/\",//' | sed -e 's/^\s*//' | tr '[:lower:]' '[:upper:]')
|
|
||||||
BKUPTIME=$(date +%Y%d%m-%H%M)
|
|
||||||
|
|
||||||
BACKUP=$(yad --form --width=420 --text-align=center --center --title="Email Backup" --text-align=center \
|
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
|
||||||
--text="<b>Email Backup</b> by KM4ACK" \
|
|
||||||
--field="Backup Directory":DIR \
|
|
||||||
--button="Backup Emails":2 \
|
|
||||||
--button="Cancel":1)
|
|
||||||
BUT=$?
|
|
||||||
|
|
||||||
if [ $BUT = 252 ]; then
|
|
||||||
exit
|
|
||||||
elif [ $BUT = 1 ]; then
|
|
||||||
$MAIN
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
DIR=$(echo $BACKUP | awk -F "|" '{print $1}')
|
|
||||||
|
|
||||||
cp -r $HOME/.wl2k/mailbox/$CALL $DIR/email.bkup.$BKUPTIME
|
|
||||||
|
|
||||||
if [ -d $DIR/email.bkup.$BKUPTIME ]; then
|
|
||||||
yad --center --text="Backup Complete" \
|
|
||||||
--button=gtk-ok
|
|
||||||
$MAIN &
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
EMAILRESTORE(){
|
|
||||||
MYPATH=$HOME/dev/patmenu2
|
|
||||||
CONFIG=$HOME/.wl2k/config.json
|
|
||||||
WHO=$(whoami)
|
|
||||||
CALL=$(cat $HOME/.wl2k/config.json | grep -m 1 mycall | sed 's/\"mycall\": \"//' | sed 's/\",//' | sed -e 's/^\s*//' | tr '[:lower:]' '[:upper:]')
|
|
||||||
|
|
||||||
RESTORE=$(yad --form --width=420 --text-align=center --center --title="Email Restore" --text-align=center \
|
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
|
||||||
--text="<b>Email Restore</b> by KM4ACK" \
|
|
||||||
--field="Restore Directory":DIR \
|
|
||||||
--button="Restore Emails":2 \
|
|
||||||
--button="Cancel":1)
|
|
||||||
BUT=$?
|
|
||||||
|
|
||||||
if [ $BUT = 252 ]; then
|
|
||||||
exit
|
|
||||||
elif [ $BUT = 1 ]; then
|
|
||||||
$MAIN
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
DIR=$(echo $RESTORE | awk -F "|" '{print $1}')
|
|
||||||
DIRCHECK=$(ls $DIR)
|
|
||||||
COUNT=${#DIRCHECK}
|
|
||||||
if [ "$COUNT" = 19 ]; then
|
|
||||||
cp $DIR/archive/* $HOME/.wl2k/mailbox/$CALL/archive/
|
|
||||||
cp $DIR/in/* $HOME/.wl2k/mailbox/$CALL/in/
|
|
||||||
cp $DIR/out/* $HOME/.wl2k/mailbox/$CALL/out/
|
|
||||||
cp $DIR/sent/* $HOME/.wl2k/mailbox/$CALL/sent/
|
|
||||||
yad --form --width=420 --text-align=center --center --title="Email Restore" --text-align=center \
|
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
|
||||||
--text="<b>Email Restore</b> by KM4ACK\r\r<b>RESTORE COMPLETE</b>" \
|
|
||||||
--button=gtk-ok
|
|
||||||
else
|
|
||||||
yad --form --width=420 --text-align=center --center --title="Email Restore" --text-align=center \
|
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
|
||||||
--text="<b>Email Restore</b> by KM4ACK\r\r<b>Not a valid restore directory</b>" \
|
|
||||||
--button=gtk-ok
|
|
||||||
fi
|
|
||||||
exit
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RESTORECONFIG(){
|
RESTORECONFIG(){
|
||||||
CONFIG=$HOME/.wl2k/config.json
|
CONFIG=$HOME/.wl2k/config.json
|
||||||
OUTFILE=/run/user/$UID/config.list
|
OUTFILE=/run/user/$UID/config.list
|
||||||
@ -441,7 +358,102 @@ yad --form --width=400 --text-align=center --center --title="Grid Update" --text
|
|||||||
$MAIN
|
$MAIN
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LISTEN(){
|
||||||
|
#This funtion sets the listen modes for Pat Winlink
|
||||||
|
WHO=$(whoami)
|
||||||
|
TEMP=/run/user/$UID/listen.txt
|
||||||
|
NOW=$(grep ExecStart /lib/systemd/system/pat@.service | sed 's|ExecStart=/usr/bin/pat -l||;s/http//')
|
||||||
|
if [ $NOW = 'ExecStart=/usr/bin/pat' ]; then
|
||||||
|
NOW="Not listening for incoming connections"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LISTEN=$(yad --center --list --checklist --width=600 --height=300 --separator="|" \
|
||||||
|
--image $LOGO --column=Check --column=Mode --column=Description \
|
||||||
|
--print-column=2 --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--text="<b>Pat Listen Modes</b>\rCurrently Listening on:\r$NOW" --title="Pat Menu" \
|
||||||
|
false "TELNET" "Connection over Internet or Mesh" \
|
||||||
|
false "AX25" "Packet Connections 2M-440" \
|
||||||
|
false "ARDOP" "HF Connections using ARDOP Modem" \
|
||||||
|
--button="Main Menu":1 \
|
||||||
|
--button="Set Listen Mode":2 \
|
||||||
|
--button="Stop Listening":3)
|
||||||
|
BUT=$?
|
||||||
|
if [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 2 ]; then
|
||||||
|
#Send results to temp file.
|
||||||
|
echo $LISTEN > $TEMP
|
||||||
|
#check temp file for what's there
|
||||||
|
TELNET=$(grep TELNET $TEMP)
|
||||||
|
ARDOP=$(grep ARDOP $TEMP)
|
||||||
|
AX25=$(grep AX25 $TEMP)
|
||||||
|
#Set telnet variable
|
||||||
|
if [ -n "$TELNET" ]; then
|
||||||
|
TELNET="telnet,"
|
||||||
|
fi
|
||||||
|
#set ardop variable
|
||||||
|
if [ -n "$ARDOP" ]; then
|
||||||
|
ARDOP="ardop,"
|
||||||
|
fi
|
||||||
|
#set ax25 variable
|
||||||
|
if [ -n "$AX25" ]; then
|
||||||
|
AX25="ax25,"
|
||||||
|
fi
|
||||||
|
cat <<EOF > $TEMP
|
||||||
|
[Unit]
|
||||||
|
Description=pat - Winlink client for %I
|
||||||
|
Documentation=https://github.com/la5nta/pat/wiki
|
||||||
|
After=ax25.service network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=%i
|
||||||
|
ExecStart=/usr/bin/pat http
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
#add listen modes set by user
|
||||||
|
sed -i "s|Exec.*|ExecStart=/usr/bin/pat -l $TELNET$ARDOP$AX25 http|" $TEMP
|
||||||
|
sudo cp $TEMP /lib/systemd/system/pat@.service
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl restart pat@$WHO
|
||||||
|
yad --form --width=320 --text-align=center --center --title="Listening" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Listen mode set to $TELNET$ARDOP$AX25</b>" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
|
||||||
|
elif [ $BUT = 3 ]; then
|
||||||
|
cat <<EOF > $TEMP
|
||||||
|
[Unit]
|
||||||
|
Description=pat - Winlink client for %I
|
||||||
|
Documentation=https://github.com/la5nta/pat/wiki
|
||||||
|
After=ax25.service network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=%i
|
||||||
|
ExecStart=/usr/bin/pat http
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
sudo cp $TEMP /lib/systemd/system/pat@.service
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl restart pat@$WHO
|
||||||
|
fi
|
||||||
|
yad --form --width=320 --text-align=center --center --title="Listening" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>No longer listening for incoming connections</b>" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -133,7 +133,50 @@ exit
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
STATS(){
|
||||||
|
CONFIG=$HOME/.wl2k/config.json
|
||||||
|
SMD=/lib/systemd/system/pat@.service
|
||||||
|
CALL=$(grep mycall $CONFIG | head -1 | sed s'/"mycall": //;s/"//g;s/,//;s/ //g')
|
||||||
|
GRID=$(grep locator $CONFIG | sed 's/"//g;s/locator://;s/,//;s/ //g')
|
||||||
|
ARDOPMAX=$(grep -i max $CONFIG | sed 's/"Max":\ //;s/ //g')
|
||||||
|
PTT=$(grep ptt_ctrl $CONFIG | tail -1 | sed 's/"ptt_ctrl":\ //;s/,//;s/ //g')
|
||||||
|
PORT=$(grep http_addr $CONFIG | sed 's/^.*0://;s/",//')
|
||||||
|
RIG=$(grep RIGCONTROL $HOME/patmenu2/config | sed 's/RIGCONTROL=//')
|
||||||
|
TELNET=$(grep telnet, $SMD)
|
||||||
|
ARDOP=$(grep ardop, $SMD)
|
||||||
|
AX25=$(grep ax25, $SMD)
|
||||||
|
#Set telnet variable
|
||||||
|
if [ -n "$TELNET" ]; then
|
||||||
|
TELNET="telnet,"
|
||||||
|
fi
|
||||||
|
#set ardop variable
|
||||||
|
if [ -n "$ARDOP" ]; then
|
||||||
|
ARDOP="ardop,"
|
||||||
|
fi
|
||||||
|
#set ax25 variable
|
||||||
|
if [ -n "$AX25" ]; then
|
||||||
|
AX25="ax25,"
|
||||||
|
fi
|
||||||
|
if [ -z "$TELNET" ] && [ -z "$ARDOP" ] && [ -z "$AX25" ]; then
|
||||||
|
LISTEN="Not Listening"
|
||||||
|
else
|
||||||
|
LISTEN="$TELNET$ARDOP$AX25"
|
||||||
|
fi
|
||||||
|
|
||||||
|
yad --form --width=320 --text-align=center --center --title="Quick Stats" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Quick Stats</b>" \
|
||||||
|
--field="Current User":RO "$CALL" \
|
||||||
|
--field="Current Grid":RO "$GRID" \
|
||||||
|
--field="ARDOP Speed":RO "$ARDOPMAX" \
|
||||||
|
--field="ARDOP PTT is":RO "$PTT" \
|
||||||
|
--field="Listen Modes":RO "$LISTEN" \
|
||||||
|
--field="Rig Control":RO "$RIG" \
|
||||||
|
--field="Pat Port":RO "$PORT" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
2
patmenu
2
patmenu
@ -29,8 +29,10 @@ yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-al
|
|||||||
--field="Find Winlink Gateways":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/find2"' \
|
--field="Find Winlink Gateways":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/find2"' \
|
||||||
--field="Pat Auto Connect":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; AUTOPAT"' \
|
--field="Pat Auto Connect":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; AUTOPAT"' \
|
||||||
--field="Pat Catalog":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/catalog"' \
|
--field="Pat Catalog":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/catalog"' \
|
||||||
|
--field="Manage Inbox":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/manage-inbox"' \
|
||||||
--field="Manage Pat Winlink":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/manage-pat"' \
|
--field="Manage Pat Winlink":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/manage-pat"' \
|
||||||
--field="Settings/Config":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/manage-menu"' \
|
--field="Settings/Config":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/manage-menu"' \
|
||||||
|
--field="Quick Stats":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; STATS"' \
|
||||||
--field="My Call - $MYCALLSIGN":LBL \
|
--field="My Call - $MYCALLSIGN":LBL \
|
||||||
--button="QUIT":1
|
--button="QUIT":1
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user