mirror of
https://github.com/km4ack/patmenu2.git
synced 2025-05-16 14:50:13 -07:00
commit
d451d6a463
@ -93,13 +93,11 @@ if [ -f $PACKET ]; then
|
|||||||
rm $PACKET
|
rm $PACKET
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#put date on top line of each file
|
#create file that has grid variable used in calculations
|
||||||
echo "List Last Downloaded $(date)" >> $FILE
|
touch $HOME/patmenu2/ardop-list/grid.txt
|
||||||
echo "List Last Downloaded $(date)" >> $FORTY
|
MYGRID=$(grep locator $HOME/.config/pat/config.json | sed 's/.*": //;s/"//g;s/,//')
|
||||||
echo "List Last Downloaded $(date)" >> $EIGHTY
|
echo "GRID=$MYGRID" > $HOME/patmenu2/ardop-list/grid.txt
|
||||||
echo "List Last Downloaded $(date)" >> $TWENTY
|
echo "LASTDL=List downloaded `date`" >> $HOME/patmenu2/ardop-list/grid.txt
|
||||||
echo "List Last Downloaded $(date)" >> $THIRTY
|
|
||||||
echo "List Last Downloaded $(date)" >> $PACKET
|
|
||||||
|
|
||||||
#download list to individual files.
|
#download list to individual files.
|
||||||
DL(){
|
DL(){
|
||||||
|
124
FA-functions
124
FA-functions
@ -296,6 +296,9 @@ xdg-open $MAP
|
|||||||
#--------------------------------
|
#--------------------------------
|
||||||
# Alternate Grid Download
|
# Alternate Grid Download
|
||||||
#--------------------------------
|
#--------------------------------
|
||||||
|
|
||||||
|
#THIS FUNCTION DEPRECATED BUT LEFT FOR REFERENCE 11MARCH2022
|
||||||
|
|
||||||
#make new dir in pat menu dir if needed
|
#make new dir in pat menu dir if needed
|
||||||
mkdir -p $HOME/patmenu2/alt-ardop-list
|
mkdir -p $HOME/patmenu2/alt-ardop-list
|
||||||
|
|
||||||
@ -355,6 +358,10 @@ exit
|
|||||||
#--------------------------------
|
#--------------------------------
|
||||||
# Load Alternate Grid List
|
# Load Alternate Grid List
|
||||||
#--------------------------------
|
#--------------------------------
|
||||||
|
|
||||||
|
#THIS FUNCTION DEPRECATED BUT LEFT FOR REFERENCE 11MARCH2022
|
||||||
|
|
||||||
|
|
||||||
LOADALTGRID(){
|
LOADALTGRID(){
|
||||||
OUTFILE=/run/user/$UID/alt-grid.list
|
OUTFILE=/run/user/$UID/alt-grid.list
|
||||||
|
|
||||||
@ -411,7 +418,122 @@ $MAIN &
|
|||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#--------------------------------
|
||||||
|
# Recalculate Distance & Bearings
|
||||||
|
#--------------------------------
|
||||||
|
|
||||||
|
NEWCALC(){
|
||||||
|
#Function to update the distance and bearing between
|
||||||
|
#your current grid and the winlink gateways.
|
||||||
|
#this is necessary because the calculations are initially
|
||||||
|
#based on the grid in the pat config file at the time the
|
||||||
|
#list is downloaded.
|
||||||
|
#10MARCH2022 KM4ACK
|
||||||
|
|
||||||
|
DIR=/run/user/$UID
|
||||||
|
TMPFILE=$DIR/tempfile
|
||||||
|
TMPFILE2=$DIR/tempfile2
|
||||||
|
TMPFILE3=$DIR/tempfile3
|
||||||
|
MYGRID=$(cat /run/user/$UID/gridinfo.txt | cut -c1-6)
|
||||||
|
|
||||||
|
#backup current lists
|
||||||
|
BKDIR=$MYPATH/ardop-list/bkup-`date +%F.%H%M`
|
||||||
|
mkdir -p $BKDIR
|
||||||
|
cp -r $HOME/patmenu2/ardop-list/*.txt $BKDIR/
|
||||||
|
|
||||||
|
MYGRID=$(yad --form --width=450 --text="<b>Recalculate Distance and Bearings to Gateways</b>\rThis takes 2-3 minutes to complete" \
|
||||||
|
--text-align=center --center --title="Recalculate" --text-align=center --separator="|" --item-separator="|" \
|
||||||
|
--image=$LOGO --window-icon=$LOGO --image-on-top \
|
||||||
|
--field="Current Grid Square" "$MYGRID" \
|
||||||
|
--button="Recalculate":2 \
|
||||||
|
--button="Cancel":1)
|
||||||
|
BUT=$?
|
||||||
|
MYGRID=`echo $MYGRID | awk -F "|" '{print $1}'`
|
||||||
|
|
||||||
|
if [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
elif [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
#create file that has grid variable used in calculations
|
||||||
|
touch $HOME/patmenu2/ardop-list/grid.txt
|
||||||
|
echo "GRID=$MYGRID" > $HOME/patmenu2/ardop-list/grid.txt
|
||||||
|
echo "LASTDL=Recalculated `date`" >> $HOME/patmenu2/ardop-list/grid.txt
|
||||||
|
|
||||||
|
MAIN(){
|
||||||
|
echo "Recalculating 20M List"
|
||||||
|
RECALC 20mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||||
|
--text="Recalculating 20M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||||
|
|
||||||
|
echo "Recalculating 30M List"
|
||||||
|
RECALC 30mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||||
|
--text="Recalculating 30M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||||
|
|
||||||
|
echo "Recalculating 40M List"
|
||||||
|
RECALC 40mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||||
|
--text="Recalculating 40M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||||
|
|
||||||
|
echo "Recalculating 80M List"
|
||||||
|
RECALC 80mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||||
|
--text="Recalculating 80M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||||
|
|
||||||
|
echo "Recalculating Packet list"
|
||||||
|
RECALC packet.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||||
|
--text="Recalculating Packet List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||||
|
|
||||||
|
yad --center --timeout=2 --timeout-indicator=top --no-buttons --text="New Calculations Complete"
|
||||||
|
}
|
||||||
|
|
||||||
|
RECALC(){
|
||||||
|
FILE=$HOME/patmenu2/ardop-list/$1
|
||||||
|
#check for and remove existing temp file
|
||||||
|
if [ -f $TMPFILE3 ]; then
|
||||||
|
rm $TMPFILE3
|
||||||
|
fi
|
||||||
|
|
||||||
|
#create temp list to work with and remove headers/blank lines
|
||||||
|
cp $FILE $TMPFILE
|
||||||
|
sed -i 's/.*information...//;s/.*succeeded.//;s/.*url//' $TMPFILE
|
||||||
|
sed -i '/^$/d' $TMPFILE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#read file, calculate new distance, and update
|
||||||
|
while read LINE;
|
||||||
|
do
|
||||||
|
GRID=`echo $LINE | awk '{print $2}' | sed 's/\[//;s/\]//'`
|
||||||
|
DISTANCE=`echo $LINE | awk '{print $3 }'`
|
||||||
|
BEARING=`echo $LINE | awk '{print $4 }'`
|
||||||
|
CALC=`/usr/bin/wwl $MYGRID $GRID`
|
||||||
|
NEWDISTANCE=`echo $CALC | awk '{print $2}'`
|
||||||
|
NEWBEARING=`echo $CALC | awk '{print $5}'`
|
||||||
|
echo $LINE | sed "s/$DISTANCE/$NEWDISTANCE/;s/$BEARING/$NEWBEARING/" >> $TMPFILE2
|
||||||
|
done < $TMPFILE
|
||||||
|
rm $TMPFILE
|
||||||
|
|
||||||
|
#pad distance with zeros for sorting
|
||||||
|
while read LINE
|
||||||
|
do
|
||||||
|
DISTANCE=$(echo $LINE | awk '{ print $3 }')
|
||||||
|
NEWDISTANCE=$(echo $LINE | awk '{ print $3 }' | sed -e :a -e 's/^.\{1,4\}$/0&/;ta')
|
||||||
|
echo $LINE | sed "s/$DISTANCE/$NEWDISTANCE/" >> $TMPFILE3
|
||||||
|
done < $TMPFILE2
|
||||||
|
rm $TMPFILE2
|
||||||
|
|
||||||
|
#sort list by distance
|
||||||
|
sort -k3 -o $TMPFILE3 $TMPFILE3
|
||||||
|
|
||||||
|
cp $TMPFILE3 $HOME/patmenu2/ardop-list/$1
|
||||||
|
}
|
||||||
|
|
||||||
|
#call main function
|
||||||
|
MAIN
|
||||||
|
#return to pat menu
|
||||||
|
$MAIN
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
13
changelog
13
changelog
@ -1,7 +1,16 @@
|
|||||||
release=2.7.0
|
release=2.8.0
|
||||||
|
|
||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
|
2.8.0 redesign layout of main screen
|
||||||
|
add new modem menu
|
||||||
|
add vara modem start (beta)
|
||||||
|
add vara FM modem start (beta)
|
||||||
|
deprecate alternate grid list download function
|
||||||
|
deprecate load alternate grid funtion
|
||||||
|
add gateway distance/bearing recalculation
|
||||||
|
add "save as" to current config file see https://github.com/km4ack/patmenu2/issues/48
|
||||||
|
add config file name to bottom of main menu
|
||||||
|
update menu shortcut to support non-pi usernames
|
||||||
2.7.0 add mobi-pair script to assist with pairing mobilinkd devices
|
2.7.0 add mobi-pair script to assist with pairing mobilinkd devices
|
||||||
add mobilinkd wired modem connection (Doesn't work with version 2)
|
add mobilinkd wired modem connection (Doesn't work with version 2)
|
||||||
improve mobilinkd modem start
|
improve mobilinkd modem start
|
||||||
|
27
find2
27
find2
@ -4,18 +4,13 @@
|
|||||||
#20200425 KM4ACK
|
#20200425 KM4ACK
|
||||||
#side note: written during covid-19 outbreak of 2020
|
#side note: written during covid-19 outbreak of 2020
|
||||||
|
|
||||||
#######DEV NOTES#############
|
|
||||||
#############################
|
|
||||||
|
|
||||||
|
|
||||||
#############################
|
|
||||||
|
|
||||||
MYPATH=$HOME/patmenu2
|
MYPATH=$HOME/patmenu2
|
||||||
PATMENU=$MYPATH/patmenu
|
PATMENU=$MYPATH/patmenu
|
||||||
LOGO=$MYPATH/pmlogo.png
|
LOGO=$MYPATH/pmlogo.png
|
||||||
CURRENT=$(crontab -l | grep getardoplist | awk '{print $2":"$1}')
|
CURRENT=$(crontab -l | grep getardoplist | awk '{print $2":"$1}')
|
||||||
source $MYPATH/.grid
|
source $MYPATH/.grid
|
||||||
GRID=$GRID
|
GRID=$(grep GRID $HOME/patmenu2/ardop-list/grid.txt | sed 's/GRID=//')
|
||||||
|
LASTDOWNLOAD=$(grep LASTDL $HOME/patmenu2/ardop-list/grid.txt | tail -1 | sed 's/LASTDL=//')
|
||||||
|
|
||||||
source $MYPATH/FA-functions
|
source $MYPATH/FA-functions
|
||||||
|
|
||||||
@ -24,12 +19,11 @@ yad --form --width=480 --text="<b>Find Gateways</b> by KM4ACK" --text-align=cent
|
|||||||
--text="<b>Find Gateways</b> by KM4ACK" \
|
--text="<b>Find Gateways</b> by KM4ACK" \
|
||||||
--field="Search for Gateway":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; GRIDSEARCH"' \
|
--field="Search for Gateway":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; GRIDSEARCH"' \
|
||||||
--field="View Grid Map":fbtn 'bash -c "source $MYPATH/FA-functions; MAP"' \
|
--field="View Grid Map":fbtn 'bash -c "source $MYPATH/FA-functions; MAP"' \
|
||||||
--field="Download Home Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; DOWNLIST"' \
|
--field="Download Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; DOWNLIST"' \
|
||||||
--field="Download Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; ALTGRID"' \
|
--field="Auto Download Gateway List <b>$CURRENT</b>":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; AUTODOWN"' \
|
||||||
--field="Load Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; LOADALTGRID"' \
|
--field="Recalculate Distance and Bearings":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; NEWCALC"' \
|
||||||
--field="Auto Download Home Grid List <b>$CURRENT</b>":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; AUTODOWN"' \
|
--field="$LASTDOWNLOAD":LBL \
|
||||||
--field="Home $LASTDL":LBL \
|
--field="Current calculations based on grid <b>$GRID</b>":LBL \
|
||||||
--field="Grid List Currently Loaded <b>$GRID</b>":LBL \
|
|
||||||
--button="Main Menu":1
|
--button="Main Menu":1
|
||||||
|
|
||||||
QUIT=$?
|
QUIT=$?
|
||||||
@ -39,4 +33,9 @@ $PATMENU &
|
|||||||
exit
|
exit
|
||||||
elif [ $QUIT = 252 ]; then
|
elif [ $QUIT = 252 ]; then
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#left for reference
|
||||||
|
#--field="Download Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; ALTGRID"' \
|
||||||
|
#--field="Load Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; LOADALTGRID"' \
|
||||||
|
14
getardoplist
14
getardoplist
@ -87,15 +87,13 @@ if [ -f $PACKET ]; then
|
|||||||
rm $PACKET
|
rm $PACKET
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#put date on top line of each file
|
|
||||||
echo "List Last Downloaded $(date)" >> $FILE
|
|
||||||
echo "List Last Downloaded $(date)" >> $FORTY
|
|
||||||
echo "List Last Downloaded $(date)" >> $EIGHTY
|
|
||||||
echo "List Last Downloaded $(date)" >> $TWENTY
|
|
||||||
echo "List Last Downloaded $(date)" >> $THIRTY
|
|
||||||
echo "List Last Downloaded $(date)" >> $PACKET
|
|
||||||
|
|
||||||
#yad --center --progress --pulsate --timeout-indicator=top --auto-close --no-buttons --text="Start Download"
|
#create file that has grid variable used in calculations
|
||||||
|
touch $HOME/patmenu2/ardop-list/grid.txt
|
||||||
|
MYGRID=$(grep locator $HOME/.config/pat/config.json | sed 's/.*": //;s/"//g;s/,//')
|
||||||
|
echo "GRID=$MYGRID" > $HOME/patmenu2/ardop-list/grid.txt
|
||||||
|
echo "LASTDL=List downloaded `date`" >> $HOME/patmenu2/ardop-list/grid.txt
|
||||||
|
|
||||||
|
|
||||||
#download list to individual files.
|
#download list to individual files.
|
||||||
DL(){
|
DL(){
|
||||||
|
@ -147,6 +147,7 @@ elif [ $BUT = 2 ]; then
|
|||||||
exit
|
exit
|
||||||
else
|
else
|
||||||
cp $MYPATH/$NEWCONFIG $MYPATH/config
|
cp $MYPATH/$NEWCONFIG $MYPATH/config
|
||||||
|
echo "CONF=$NEWCONFIG" > $MYPATH/.currentconf #write config file name to a file
|
||||||
rm $OUTFILE
|
rm $OUTFILE
|
||||||
yad --title="Config Loaded" --width=400 --height=200 \
|
yad --title="Config Loaded" --width=400 --height=200 \
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top \
|
--image $LOGO --window-icon=$LOGO --image-on-top \
|
||||||
@ -206,9 +207,11 @@ SETTINGS=$(yad --form --width=600 --text-align=center --center --title="Pat Menu
|
|||||||
--field="AmRRON":CB "$AMRRON" \
|
--field="AmRRON":CB "$AMRRON" \
|
||||||
--field="Custom Warning":CB "$WARN" \
|
--field="Custom Warning":CB "$WARN" \
|
||||||
--field="Warning Message" "$WARNMSG" \
|
--field="Warning Message" "$WARNMSG" \
|
||||||
|
--button="Save As":3 \
|
||||||
--button="Update":2 \
|
--button="Update":2 \
|
||||||
--button="Cancel":1)
|
--button="Cancel":1)
|
||||||
BUT=$?
|
BUT=$?
|
||||||
|
|
||||||
if [ $BUT = 1 ]; then
|
if [ $BUT = 1 ]; then
|
||||||
$MAIN
|
$MAIN
|
||||||
elif [ $BUT = 252 ]; then
|
elif [ $BUT = 252 ]; then
|
||||||
@ -253,6 +256,30 @@ cp $CONFIGTMP $CONFIG
|
|||||||
rm $CONFIGTMP
|
rm $CONFIGTMP
|
||||||
$MAIN &
|
$MAIN &
|
||||||
exit
|
exit
|
||||||
|
elif [ $BUT = 3 ]; then
|
||||||
|
NEWNAME=$(yad --form --width=600 --text-align=center --center --title="Name?" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>Pat Menu Settings</b> by KM4ACK" \
|
||||||
|
--field="New Config Name")
|
||||||
|
BUT=$?
|
||||||
|
if [ $BUT = 1 ]; then
|
||||||
|
$MAIN & exit
|
||||||
|
elif [ $BUT = 252 ]; then
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
NEWNAME=$(echo $NEWNAME | awk -F "|" '{print $1}')
|
||||||
|
NEWNAME=$NEWNAME.config #add .config to filename
|
||||||
|
NEWNAME=$(echo $NEWNAME | sed 's/ /-/g') #remove spaces in file name
|
||||||
|
|
||||||
|
cp $CONFIG $HOME/patmenu2/$NEWNAME
|
||||||
|
|
||||||
|
yad --title="Config Created" --width=400 --height=200 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top \
|
||||||
|
--center --text="$NEWNAME created\r\r<b>Don't forget to load the new config file</b>" \
|
||||||
|
--button=gtk-ok
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
33
modems
Executable file
33
modems
Executable file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Pat Modems
|
||||||
|
#20220309 KM4ACK
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export MYPATH=$HOME/patmenu2
|
||||||
|
LOGO=$MYPATH/pmlogo.png
|
||||||
|
MAIN=$MYPATH/./patmenu
|
||||||
|
VERSION=$(cat $MYPATH/changelog | grep release | head -1 | sed 's/release=//')
|
||||||
|
|
||||||
|
source $MYPATH/config
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
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="Start ARDOP Modem":fbtn 'bash -c "$MYPATH/start-pat-ardop"' \
|
||||||
|
--field="Start Packet Modem":fbtn 'bash -c "$MYPATH/start-pat2m"' \
|
||||||
|
--field="Start Mobilinkd Modem Bluetooth":fbtn 'bash -c "$MYPATH/mobilink"' \
|
||||||
|
--field="Start Mobilinkd Modem Wired":fbtn 'bash -c "$MYPATH/mobi-wired"' \
|
||||||
|
--field="Start VARA Modem (BETA)":fbtn 'bash -c "$MYPATH/start-vara-hf"' \
|
||||||
|
--field="Start VARA FM Modem (BETA)":fbtn 'bash -c "$MYPATH/start-vara-fm"' \
|
||||||
|
--field="Stop Modems":fbtn 'bash -c "$MYPATH/stop-modems"' \
|
||||||
|
--button="Main Menu":1
|
||||||
|
BUT=$?
|
||||||
|
|
||||||
|
if [ $BUT = 1 ]; then
|
||||||
|
$MAIN &
|
||||||
|
exit
|
||||||
|
fi
|
16
patmenu
16
patmenu
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
#Pat Catalog
|
#Pat Menu
|
||||||
#20200427 KM4ACK
|
#20200427 KM4ACK
|
||||||
#side note: written during covid-19 outbreak of 2020
|
#side note: written during covid-19 outbreak of 2020
|
||||||
|
|
||||||
@ -41,14 +41,17 @@ yad --title="N0CALL" --width=400 --height=100 \
|
|||||||
--button=gtk-ok
|
--button=gtk-ok
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#get name of current config file
|
||||||
|
source $MYPATH/.currentconf
|
||||||
|
CONFIG=$(echo $CONF | sed 's/.config//')
|
||||||
|
if [ -z $CONFIG ]; then
|
||||||
|
CONFIG=default
|
||||||
|
fi
|
||||||
|
|
||||||
yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-align=center \
|
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="|" \
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
||||||
--field="Start ARDOP Modem":fbtn 'bash -c "$MYPATH/start-pat-ardop"' \
|
--field="Start/Stop Modem":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/modems"' \
|
||||||
--field="Start Packet Modem":fbtn 'bash -c "$MYPATH/start-pat2m"' \
|
|
||||||
--field="Start Mobilinkd Modem Bluetooth":fbtn 'bash -c "$MYPATH/mobilink"' \
|
|
||||||
--field="Start Mobilinkd Modem Wired":fbtn 'bash -c "$MYPATH/mobi-wired"' \
|
|
||||||
--field="Stop Modems":fbtn 'bash -c "$MYPATH/stop-modems"' \
|
|
||||||
--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"' \
|
||||||
@ -58,6 +61,7 @@ yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-al
|
|||||||
--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="Quick Stats":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; STATS"' \
|
||||||
--field="My Call - $MYCALLSIGN":LBL \
|
--field="My Call - $MYCALLSIGN":LBL \
|
||||||
|
--field="Config=$CONFIG":LBL \
|
||||||
--button="QUIT":1
|
--button="QUIT":1
|
||||||
|
|
||||||
BUT=$?
|
BUT=$?
|
||||||
|
15
setup
15
setup
@ -38,8 +38,19 @@ rm -rf $HOME/patmenu
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
#copy new desktop link
|
#create new desktop link
|
||||||
sudo cp $MYPATH/patmenu2.desktop /usr/share/applications/patmenu.desktop
|
cat <<EOF > /run/user/$UID/patmenu.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Pat Menu
|
||||||
|
GenericName=Amateur Radio Digital Modem
|
||||||
|
Comment=Amateur Radio Sound Card Communications
|
||||||
|
Exec=/home/`whoami`/patmenu2/patmenu
|
||||||
|
Icon=/home/`whoami`/patmenu2/pmlogo.png
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
Categories=Network;HamRadio;
|
||||||
|
EOF
|
||||||
|
sudo cp /run/user/$UID/patmenu.desktop /usr/share/applications/patmenu.desktop
|
||||||
|
|
||||||
#download RMS List
|
#download RMS List
|
||||||
$MYPATH/getardoplist
|
$MYPATH/getardoplist
|
||||||
|
134
start-vara-fm
Executable file
134
start-vara-fm
Executable file
@ -0,0 +1,134 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#script to start vara fm modem
|
||||||
|
#10MARCH2022 KM4ACK
|
||||||
|
|
||||||
|
MYPATH=$HOME/patmenu2
|
||||||
|
LOGO=$MYPATH/pmlogo.png
|
||||||
|
source $MYPATH/config
|
||||||
|
|
||||||
|
#Check if FLRIG is running if user has it set in config file
|
||||||
|
if [ "$RIGCONTROL" = 'yes' ]; then
|
||||||
|
echo "rig control is on"
|
||||||
|
FLRIG=$(echo $RIG | grep "\-m 4")
|
||||||
|
if [ ! -z "$FLRIG" ]; then
|
||||||
|
FLRIG=$(pidof flrig)
|
||||||
|
if [ -z "$FLRIG" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="Please start FLRIG and try again" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
#Check if modem is already running
|
||||||
|
MODEMCHECK=$(ps aux | grep -i box86 | grep -i varafm)
|
||||||
|
if [ ! -z "$MODEMCHECK" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="Packet Modem is already running" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
#check if piardopc is running
|
||||||
|
PIDDW=$(pidof piardopc)
|
||||||
|
if [ ! -z "$PIDDW" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="It looks like the ARDOP modem is running.\rStop all modems and try again" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
#check if direwolf is running
|
||||||
|
PIDDW=$(pidof direwolf)
|
||||||
|
if [ ! -z "$PIDDW" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="It looks like direwolf is running.\rStop all modems and try again" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
#give user some feedback
|
||||||
|
yad --width=350 --height=75 --title="Starting Modem" --timeout=20 --timeout-indicator=top --no-buttons --center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --text="Modem Starting....standby" &
|
||||||
|
|
||||||
|
#Set Mode
|
||||||
|
RIGFM=$RIG" M $MODE2M"
|
||||||
|
|
||||||
|
SETRIG () {
|
||||||
|
|
||||||
|
#set radio frequency & mode
|
||||||
|
$RIGFM
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
#check rig is in correct mode
|
||||||
|
MODE=$($RIG m | grep $MODE2M)
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
MODECHECK() {
|
||||||
|
#check rig is in correct mode
|
||||||
|
MODE=$($RIG m | grep $MODE2M)
|
||||||
|
}
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
if [ -z $MODE ]
|
||||||
|
then
|
||||||
|
$RIGFM
|
||||||
|
MODECHECK
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#see if rig control is used
|
||||||
|
if [ $RIGCONTROL == 'yes' ]; then
|
||||||
|
PIDCTL=$(pidof rigctld)
|
||||||
|
if [ -z "$PIDCTL" ]; then
|
||||||
|
CONTROL=$(cat $MYPATH/config | grep '^RIG="' | sed 's/RIG="//' | sed 's/"//' | sed 's/rigctl/rigctld/')
|
||||||
|
$CONTROL &
|
||||||
|
rigpid=`echo $!`
|
||||||
|
fi
|
||||||
|
SETRIG
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "starting VARA-FM"
|
||||||
|
/usr/local/bin/wine /home/pi/.wine/drive_c/VARA\ FM/VARAFM.exe > /dev/null 2>&1 &
|
||||||
|
sleep 7 #give vara time to start
|
||||||
|
|
||||||
|
#verify vara has started
|
||||||
|
PIDVARA=$(ps aux | grep -i box86 | grep -i varafm)
|
||||||
|
if [ -z "$PIDVARA" ]
|
||||||
|
then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="The VARA Modem FAILED to Start" \
|
||||||
|
--button=gtk-ok
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
yad --title="VARA MODEM" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
|
--center --form --text="\r\r\r\rThe VARA Modem has Started\rJust a few more seconds" \
|
||||||
|
--button=gtk-ok &
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
#restart pat so terminal window correctly reflects rig control
|
||||||
|
sudo systemctl restart pat@`whoami`
|
||||||
|
|
||||||
|
echo "starting browser"
|
||||||
|
#open pat inbox in browser
|
||||||
|
export DISPLAY=:0 && xdg-open http://127.0.0.1:$PORT > /dev/null 2>&1
|
||||||
|
|
||||||
|
#echo "cleaning up and closing"
|
||||||
|
#varapid=`ps aux | grep -i box86 | grep -i varafm`
|
||||||
|
#kill $varapid > /dev/null 2>&1
|
||||||
|
#kill $rigpid > /dev/null 2>&1
|
||||||
|
|
134
start-vara-hf
Executable file
134
start-vara-hf
Executable file
@ -0,0 +1,134 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#script to start vara hf modem
|
||||||
|
#10MARCH2022 KM4ACK
|
||||||
|
|
||||||
|
MYPATH=$HOME/patmenu2
|
||||||
|
LOGO=$MYPATH/pmlogo.png
|
||||||
|
source $MYPATH/config
|
||||||
|
|
||||||
|
#Check if FLRIG is running if user has it set in config file
|
||||||
|
if [ "$RIGCONTROL" = 'yes' ]; then
|
||||||
|
echo "rig control is on"
|
||||||
|
FLRIG=$(echo $RIG | grep "\-m 4")
|
||||||
|
if [ ! -z "$FLRIG" ]; then
|
||||||
|
FLRIG=$(pidof flrig)
|
||||||
|
if [ -z "$FLRIG" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="Please start FLRIG and try again" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
#Check if modem is already running
|
||||||
|
MODEMCHECK=$(ps aux | grep -i box86 | grep -i varafm)
|
||||||
|
if [ ! -z "$MODEMCHECK" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="Packet Modem is already running" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
#check if piardopc is running
|
||||||
|
PIDDW=$(pidof piardopc)
|
||||||
|
if [ ! -z "$PIDDW" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="It looks like the ARDOP modem is running.\rStop all modems and try again" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
#check if direwolf is running
|
||||||
|
PIDDW=$(pidof direwolf)
|
||||||
|
if [ ! -z "$PIDDW" ]; then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="It looks like direwolf is running.\rStop all modems and try again" \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
#give user some feedback
|
||||||
|
yad --width=350 --height=75 --title="Starting Modem" --timeout=20 --timeout-indicator=top --no-buttons --center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --text="Modem Starting....standby" &
|
||||||
|
|
||||||
|
#Set Mode
|
||||||
|
RIGFM=$RIG" M $MODEHF"
|
||||||
|
|
||||||
|
SETRIG () {
|
||||||
|
|
||||||
|
#set radio frequency & mode
|
||||||
|
$RIGFM
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
#check rig is in correct mode
|
||||||
|
MODE=$($RIG m | grep $MODE2M)
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
MODECHECK() {
|
||||||
|
#check rig is in correct mode
|
||||||
|
MODE=$($RIG m | grep $MODE2M)
|
||||||
|
}
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
if [ -z $MODE ]
|
||||||
|
then
|
||||||
|
$RIGFM
|
||||||
|
MODECHECK
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#see if rig control is used
|
||||||
|
if [ $RIGCONTROL == 'yes' ]; then
|
||||||
|
PIDCTL=$(pidof rigctld)
|
||||||
|
if [ -z "$PIDCTL" ]; then
|
||||||
|
CONTROL=$(cat $MYPATH/config | grep '^RIG="' | sed 's/RIG="//' | sed 's/"//' | sed 's/rigctl/rigctld/')
|
||||||
|
$CONTROL &
|
||||||
|
rigpid=`echo $!`
|
||||||
|
fi
|
||||||
|
SETRIG
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "starting VARA-FM"
|
||||||
|
/usr/local/bin/wine /home/pi/.wine/drive_c/VARA/VARA.exe > /dev/null 2>&1 &
|
||||||
|
sleep 7 #give vara time to start
|
||||||
|
|
||||||
|
#verify vara has started
|
||||||
|
PIDVARA=$(ps aux | grep -i box86 | grep VARA.exe)
|
||||||
|
if [ -z "$PIDVARA" ]
|
||||||
|
then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="The VARA Modem FAILED to Start" \
|
||||||
|
--button=gtk-ok
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
yad --title="VARA MODEM" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
|
--center --form --text="\r\r\r\rThe VARA Modem has Started\rJust a few more seconds" \
|
||||||
|
--button=gtk-ok &
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
#restart pat so terminal window correctly reflects rig control
|
||||||
|
sudo systemctl restart pat@`whoami`
|
||||||
|
|
||||||
|
echo "starting browser"
|
||||||
|
#open pat inbox in browser
|
||||||
|
export DISPLAY=:0 && xdg-open http://127.0.0.1:$PORT > /dev/null 2>&1
|
||||||
|
|
||||||
|
#echo "cleaning up and closing"
|
||||||
|
#varapid=`ps aux | grep -i box86 | grep VARA.exe`
|
||||||
|
#kill $varapid > /dev/null 2>&1
|
||||||
|
#kill $rigpid > /dev/null 2>&1
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user