Merge branch 'dev' of github.com:km4ack/pi-build into dev

pull/367/head
KM4ACK 2021-12-22 11:04:04 -06:00
commit c65f58d717
14 zmienionych plików z 353 dodań i 125 usunięć

Wyświetl plik

@ -2,7 +2,7 @@
#this script used to check for apps that need updates #this script used to check for apps that need updates
UPDATEFILE=/run/user/1000/bapupdate.txt UPDATEFILE=/run/user/$UID/bapupdate.txt
#Delete file if exist #Delete file if exist
if [ -f $UPDATEFILE ]; then if [ -f $UPDATEFILE ]; then
@ -609,12 +609,12 @@ else
fi fi
#----------------------------------------------------# #----------------------------------------------------#
# ZYGRIB Viewer # XYGRIB Viewer
#----------------------------------------------------# #----------------------------------------------------#
if [ -f /usr/bin/zyGrib ]; then if [ -f /usr/bin/XyGrib ]; then
echo "ZYGRIB=Installed" >> $UPDATEFILE echo "XYGRIB=Installed" >> $UPDATEFILE
else else
echo "ZYGRIB=Not_Installed" >> $UPDATEFILE echo "XYGRIB=Not_Installed" >> $UPDATEFILE
fi fi
#----------------------------------------------------# #----------------------------------------------------#

Wyświetl plik

@ -57,6 +57,49 @@ EOF
exit 0 exit 0
fi fi
#####################################
# Old OS Check
#####################################
V_ID=$(grep VERSION_ID /etc/os-release | sed 's/VERSION_ID="//;s/"//')
if [ "$V_ID" -le 10 ]; then
NOTICEPATH=/run/user/$UID
cat <<EOF >${NOTICEPATH}/intro.txt
Build a Pi 3.2.0 and later does not support
RaspiOS Buster or earlier versions of RaspiOS.
You should consider upgrading to RaspiOS 11
(Bullseye). By clicking ok you will be moved
to the last version of Build a Pi (3.1.4) that
supports Pi OS Buster. Please note there are
no plans to update Build a Pi for Buster going
forward. In other words, you are on your own
if it is broke and you are still running Pi OS
10 (Buster).
EOF
INTRO=$(yad --width=600 --height=300 --text-align=center --center --title="Out of Date OS Detected!" --show-uri \
--image ${LOGO} --window-icon=${LOGO} --image-on-top --separator="|" --item-separator="|" \
--text-info \
--button="OK":1 <${NOTICEPATH}/intro.txt \
--button="Exit":2 \
>/dev/null 2>&1)
BUT=$?
echo $BUT
if [ $BUT = 2 ] || [ $BUT = 252 ]; then
exit
fi
rm ${NOTICEPATH}/intro.txt
cd $HOME/pi-build
git checkout buster
bash build-a-pi & exit
fi
#####################################
# end Old OS Check
#####################################
#install YAD & jq as needed #install YAD & jq as needed
clear clear
echo echo
@ -334,7 +377,6 @@ yad --center --list --checklist --width=600 --height=600 --separator="" \
false "M0IAX" "Tools for JS8Call Messages" \ false "M0IAX" "Tools for JS8Call Messages" \
false "WSJTX" "Weak Signal Digital Mode Software" \ false "WSJTX" "Weak Signal Digital Mode Software" \
false "PYQSO" "Logging Software" \ false "PYQSO" "Logging Software" \
false "CQRLOG" "Logging Software" \
false "HAMRS" "Logging Software" \ false "HAMRS" "Logging Software" \
false "EES" "KM4ACK Emergency Email Server" \ false "EES" "KM4ACK Emergency Email Server" \
false "QSSTV" "Slow Scan TV" \ false "QSSTV" "Slow Scan TV" \
@ -356,7 +398,7 @@ fi
if [ ${BUT} = 3 ]; then if [ ${BUT} = 3 ]; then
ADDAPPS=(CONKY PI-APRS CHIRP GARIM PAT PAT-MENU JS8CALL M0IAX WSJTX PYQSO ADDAPPS=(CONKY PI-APRS CHIRP GARIM PAT PAT-MENU JS8CALL M0IAX WSJTX PYQSO
CQRLOG HAMRS EES QSSTV GRIDTRACKER HAMCLOCK PROPAGATION YAAC XASTIR GPREDICT TQSL HAMRS EES QSSTV GRIDTRACKER HAMCLOCK PROPAGATION YAAC XASTIR GPREDICT TQSL
GRIDCALC) GRIDCALC)
for i in "${ADDAPPS[@]}"; do for i in "${ADDAPPS[@]}"; do
@ -417,7 +459,7 @@ yad --center --list --checklist --width=600 --height=600 --separator="" \
false "BPQ" "LinBPQ Software" \ false "BPQ" "LinBPQ Software" \
false "BATT" "Battery Test Script" \ false "BATT" "Battery Test Script" \
false "VNC" "VNC Client Application" \ false "VNC" "VNC Client Application" \
false "ZYGRIB" "Grib File Viewer" \ false "XYGRIB" "Grib File Viewer" \
--button="Exit":1 \ --button="Exit":1 \
--button="Check All and Continue":3 \ --button="Check All and Continue":3 \
--button="Install Selected":2 >${UTILITY} --button="Install Selected":2 >${UTILITY}
@ -427,7 +469,7 @@ if [ ${BUT} = 252 ] || [ ${BUT} = 1 ]; then
fi fi
if [ ${BUT} = 3 ]; then if [ ${BUT} = 3 ]; then
UTILAPPS=(DIPOLE PACKETSEARCH CALLSIGN TEMPCONVERT GPARTED SHOWLOG PISTATS TELNET PITERM QTSOUND SECURITY YGATE BPQ BATT VNC ZYGRIB) UTILAPPS=(DIPOLE PACKETSEARCH CALLSIGN TEMPCONVERT GPARTED SHOWLOG PISTATS TELNET PITERM QTSOUND SECURITY YGATE BPQ BATT VNC XYGRIB)
for i in "${UTILAPPS[@]}"; do for i in "${UTILAPPS[@]}"; do
echo "$i" >>${UTILITY} echo "$i" >>${UTILITY}
done done
@ -472,7 +514,7 @@ cat >tempsound <<EOF
options snd-bcm2835 index=0 options snd-bcm2835 index=0
#USB soundcard #USB soundcard
options snd-usb-audio index=2 options snd-usb-audio index=3
EOF EOF
sudo chown root:root tempsound sudo chown root:root tempsound
sudo mv tempsound /etc/modprobe.d/alsa.conf sudo mv tempsound /etc/modprobe.d/alsa.conf
@ -560,35 +602,14 @@ rm ${BASE} ${ADDITIONAL} ${UTILITY} ${FLSUITE} >/dev/null 2>&1
rm -rf ${DIR} >/dev/null 2>&1 rm -rf ${DIR} >/dev/null 2>&1
sudo apt -y autoremove > /dev/null 2>&1 sudo apt -y autoremove > /dev/null 2>&1
#remove libham (rigctl) installed from apt
#since it conflicts with hamlib installed from source
sudo apt purge -y libhamlib4
#restore crontab #restore crontab
crontab ${TEMPCRON} crontab ${TEMPCRON}
rm ${TEMPCRON} rm ${TEMPCRON}
#####################################
# Pat 12 Temp Workaround
#####################################
#This will move the user to the "version12" branch of the Pat Menu code
#until this can be implemented into the main branch of code. This will
#allow Pat Menu to support both the new version of Pat as well as older
#versions. This section of code needs to be removed once the "version12"
#branch is merged with the master branch
PAT_VERSION=$(pat version | awk '{print $2}' | sed 's/v0.//;s/.0//')
if [ "$PAT_VERSION" -le 11 ]; then
echo "pat version 11 detected"
else
echo "pat version 12 or greater detected"
echo "moving pat menu to the version12 branch"
cd $HOME/patmenu2
git pull
git checkout version12
fi
#####################################
# END Pat 12 Temp Workaround
#####################################
echo "WE ARE ALL DONE HERE. If you close this window, you will have to reboot manually." echo "WE ARE ALL DONE HERE. If you close this window, you will have to reboot manually."
#reboot when done #reboot when done

Wyświetl plik

@ -1,4 +1,28 @@
version=3.1.3 version=3.2.0
3.2.0 fix hamlib - https://github.com/km4ack/pi-build/issues/338
fix YAAC install - https://github.com/km4ack/pi-build/issues/339
fix variable - https://github.com/km4ack/pi-build/issues/340
fix QSSTV install - https://github.com/km4ack/pi-build/issues/346
fix TQSL install - https://github.com/km4ack/pi-build/issues/347
fix xgps error - https://github.com/km4ack/pi-build/issues/342
fix sound card number issue - https://github.com/km4ack/pi-build/issues/348
fix conky temperature display error - https://github.com/km4ack/pi-build/issues/334
fix qsstv icon - https://github.com/km4ack/pi-build/issues/333
build JS8Call from source - https://github.com/km4ack/pi-build/issues/341
build wsjtx from source
revert chirp to apt install until it can be built from source on Bullseye - https://github.com/km4ack/pi-build/issues/337
replace zybrig with xygrib
remove cqrlog - installing from apt breaks hamlib
update qtsoundmodem depends
install gpsd with apt - https://github.com/km4ack/pi-build/issues/321
update ruby to 2.7
update EES to PHP7.4
fix EES sed statment (0.0.0.0:8080 to :5000)
increase swap file for JS8Call/WSJTX on Pi's with less RAM - https://github.com/km4ack/pi-build/issues/350
NOTE: This version will NOT support Buster
3.1.4 last update for Build a Pi to support Buster
3.1.3 Split app check from update script into new app-check script 3.1.3 Split app check from update script into new app-check script
fix variable in menu-update script fix variable in menu-update script

Wyświetl plik

@ -60,7 +60,7 @@ ${font}
${font Arial:bold:size=14}${color Yellow}SYSTEM ${color DarkSlateGray} ${hr 2} ${font Arial:bold:size=14}${color Yellow}SYSTEM ${color DarkSlateGray} ${hr 2}
${font Arial:bold:size=14}${color White}Frequency $alignr${freq_g cpu0}Ghz ${font Arial:bold:size=14}${color White}Frequency $alignr${freq_g cpu0}Ghz
${font Arial:bold:size=14}${color White}Uptime $alignr${uptime} ${font Arial:bold:size=14}${color White}Uptime $alignr${uptime}
${font Arial:bold:size=14}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | cut -c6-9} C ${font Arial:bold:size=14}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | cut -c6-9} C
${voffset -15} ${voffset -15}
${font Arial:bold:size=10}${color White}CPU${alignr}${cpu}% ${font Arial:bold:size=10}${color White}CPU${alignr}${cpu}%
${cpubar cpu} ${cpubar cpu}

Wyświetl plik

@ -51,7 +51,7 @@ ${font Arial:bold:size=08}${color Yellow}SYSTEM ${color DarkSlateGray} ${hr 2}
${font Arial:bold:size=08}${color White}Frequency $alignr${freq_g cpu0}Ghz ${font Arial:bold:size=08}${color White}Frequency $alignr${freq_g cpu0}Ghz
${font Arial:bold:size=08}${color White}Uptime $alignr${uptime} ${font Arial:bold:size=08}${color White}Uptime $alignr${uptime}
#TEMP #TEMP
${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F ${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F
${voffset -10} ${voffset -10}
${font Arial:bold:size=6}${color White}CPU${alignr}${cpu}% ${font Arial:bold:size=6}${color White}CPU${alignr}${cpu}%
${cpubar cpu} ${cpubar cpu}

Wyświetl plik

@ -61,7 +61,7 @@ ${font Arial:bold:size=14}${color Yellow}SYSTEM ${color DarkSlateGray} ${hr 2}
${font Arial:bold:size=14}${color White}Frequency $alignr${freq_g cpu0}Ghz ${font Arial:bold:size=14}${color White}Frequency $alignr${freq_g cpu0}Ghz
${font Arial:bold:size=14}${color White}Uptime $alignr${uptime} ${font Arial:bold:size=14}${color White}Uptime $alignr${uptime}
#TEMP #TEMP
${font Arial:bold:size=14}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F ${font Arial:bold:size=14}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F
${voffset -15} ${voffset -15}
${font Arial:bold:size=10}${color White}CPU${alignr}${cpu}% ${font Arial:bold:size=10}${color White}CPU${alignr}${cpu}%
${cpubar cpu} ${cpubar cpu}

Wyświetl plik

@ -57,7 +57,7 @@ ${font Arial:bold:size=10}${color Yellow}SYSTEM ${color DarkSlateGray} ${hr 2}
${font Arial:bold:size=10}${color White}Frequency $alignr${freq_g cpu0}Ghz ${font Arial:bold:size=10}${color White}Frequency $alignr${freq_g cpu0}Ghz
${font Arial:bold:size=10}${color White}Uptime $alignr${uptime} ${font Arial:bold:size=10}${color White}Uptime $alignr${uptime}
#TEMP #TEMP
${font Arial:bold:size=10}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F ${font Arial:bold:size=10}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F
${voffset -15} ${voffset -15}
${font Arial:bold:size=8}${color White}CPU${alignr}${cpu}% ${font Arial:bold:size=8}${color White}CPU${alignr}${cpu}%
${cpubar cpu} ${cpubar cpu}

Wyświetl plik

@ -58,7 +58,7 @@ ${font Arial:bold:size=08}${color Yellow}SYSTEM ${color DarkSlateGray} ${hr 2}
${font Arial:bold:size=08}${color White}Frequency $alignr${freq_g cpu0}Ghz ${font Arial:bold:size=08}${color White}Frequency $alignr${freq_g cpu0}Ghz
${font Arial:bold:size=08}${color White}Uptime $alignr${uptime} ${font Arial:bold:size=08}${color White}Uptime $alignr${uptime}
#TEMP #TEMP
${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F ${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | awk -F "[=']" '{print($2 * 1.8)+32}'} F
${voffset -10} ${voffset -10}
${font Arial:bold:size=6}${color White}CPU${alignr}${cpu}% ${font Arial:bold:size=6}${color White}CPU${alignr}${cpu}%
${cpubar cpu} ${cpubar cpu}

Wyświetl plik

@ -39,7 +39,7 @@ echo
sed -i '/vcgencmd/d' $TEMPFILE sed -i '/vcgencmd/d' $TEMPFILE
#add cel line #add cel line
sed -i '/#TEMP/a \ sed -i '/#TEMP/a \
${font Arial:bold:size=14}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE ${font Arial:bold:size=14}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE
elif [ "$TEMP" = 'C' ] && [ "$CS" = 'conky-medium' ]; then elif [ "$TEMP" = 'C' ] && [ "$CS" = 'conky-medium' ]; then
#delete F line #delete F line
@ -47,14 +47,14 @@ echo
sed -i '/vcgencmd/d' $TEMPFILE sed -i '/vcgencmd/d' $TEMPFILE
#add cel line #add cel line
sed -i '/#TEMP/a \ sed -i '/#TEMP/a \
${font Arial:bold:size=10}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE ${font Arial:bold:size=10}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE
elif [ "$TEMP" = 'C' ] && [ "$CS" = 'conky-small' ]; then elif [ "$TEMP" = 'C' ] && [ "$CS" = 'conky-small' ]; then
#delete F line #delete F line
sed -i '/vcgencmd/d' $TEMPFILE sed -i '/vcgencmd/d' $TEMPFILE
#add cel line #add cel line
sed -i '/#TEMP/a \ sed -i '/#TEMP/a \
${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE ${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE
elif [ "$TEMP" = 'C' ] && [ "$CS" = 'conky-7inch' ]; then elif [ "$TEMP" = 'C' ] && [ "$CS" = 'conky-7inch' ]; then
#delete F line #delete F line
@ -62,7 +62,7 @@ echo
sed -i '/vcgencmd/d' $TEMPFILE sed -i '/vcgencmd/d' $TEMPFILE
#add cel line #add cel line
sed -i '/#TEMP/a \ sed -i '/#TEMP/a \
${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /opt/vc/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE ${font Arial:bold:size=08}${color White}Temp: $alignr ${exec /usr/bin/vcgencmd measure_temp | cut -c6-9} C' $TEMPFILE
fi fi
cp $TEMPFILE $HOME/.conkyrc cp $TEMPFILE $HOME/.conkyrc

Wyświetl plik

@ -211,7 +211,14 @@ uname -a >>${DIR}/systeminfo.txt
cat ${HOME}/direwolf.conf >${DIR}/direwolf.conf cat ${HOME}/direwolf.conf >${DIR}/direwolf.conf
#get pat config file #get pat config file
cat ${HOME}/.wl2k/config.json >${DIR}/patconfig.txt PAT_VERSION=$(pat version | awk '{print $2}' | sed 's/v0.//;s/.0//')
if [ "$PAT_VERSION" -le 11 ]; then
PAT_CONFIG=${HOME}/.wl2k/config.json
else
PAT_CONFIG=$XDG_CONFIG_HOME/pat/config.json
fi
cat $PAT_CONFIG >${DIR}/patconfig.txt
#remove winlink password #remove winlink password
sed -i 's/"secure_login_password":.*$/PASSWORD-REMOVED-FOR-YOUR-SECURITY/' ${DIR}/patconfig.txt sed -i 's/"secure_login_password":.*$/PASSWORD-REMOVED-FOR-YOUR-SECURITY/' ${DIR}/patconfig.txt

Wyświetl plik

@ -81,9 +81,35 @@ PAT-MENU() {
rm -rf "${HOME}/patmenu2" rm -rf "${HOME}/patmenu2"
fi fi
cd ${HOME} cd ${HOME}
git clone https://github.com/km4ack/patmenu2.git ${HOME}/patmenu2 && bash ${HOME}/patmenu2/setup git clone https://github.com/km4ack/patmenu2.git ${HOME}/patmenu2
#####################################
# Pat 12 Temp Workaround
#####################################
#This will move the user to the "version12" branch of the Pat Menu code
#until this can be implemented into the main branch of code. This will
#allow Pat Menu to support both the new version of Pat as well as older
#versions. This section of code needs to be removed once the "version12"
#branch is merged with the master branch
PAT_VERSION=$(pat version | awk '{print $2}' | sed 's/v0.//;s/.0//')
if [ "$PAT_VERSION" -le 11 ]; then
echo "pat version 11 detected"
else
echo "pat version 12 or greater detected"
echo "moving pat menu to the version12 branch"
cd $HOME/patmenu2
git pull
git checkout version12
fi
#####################################
# END Pat 12 Temp Workaround
#####################################
bash ${HOME}/patmenu2/setup
sed -i "s/N0CALL/${CALL}/" ${HOME}/patmenu2/config sed -i "s/N0CALL/${CALL}/" ${HOME}/patmenu2/config
sed -i 's/1,0/2,0/g' ${HOME}/patmenu2/config sed -i 's/1,0/3,0/g' ${HOME}/patmenu2/config
#restore config files #restore config files
if [ -d ${DIR}/patconfig/ ]; then if [ -d ${DIR}/patconfig/ ]; then
mv ${DIR}/patconfig/* ${HOME}/patmenu2/ mv ${DIR}/patconfig/* ${HOME}/patmenu2/
@ -93,41 +119,147 @@ PAT-MENU() {
# JS8Call # JS8Call
################################## ##################################
JS8CALL() { JS8CALL() {
cd ${DIR}
JS8LATE=$(curl -s http://files.js8call.com/latest.html | grep armhf | awk '{ print $2 }' | sed 's/href=//' | sed 's/"//g') #find how much memory we are working with
JS8PKG=$(curl -s http://files.js8call.com/latest.html | grep armhf | awk '{ print $2 }' | sed 's/\///g' | sed 's/href="http:files.js8call.com[0-9].[0-9].[0-9]//' | sed 's/"//') FREEMEM=$(free -m | grep Mem: | awk '{ print $2 }')
wget --tries 2 --connect-timeout=60 ${JS8LATE} || echo "Can't Download JS8Call" >>${BUILDLOG} echo ${FREEMEM}
sudo dpkg -i ${JS8PKG}
sudo apt-get --fix-broken -y install ##################################
sudo dpkg -i ${JS8PKG} # INCREASE SWAP
##################################
#increase swap file if less than 3G memory
if [ ${FREEMEM} -lt 3000 ]; then
echo "Increasing Swap size for build"
#increase swap size
sudo sed -i 's/#CONF_SWAPFILE=\/var\/swap/CONF_SWAPFILE=\/var\/swap/' /etc/dphys-swapfile
sudo sed -i 's/CONF_SWAPSIZE=100/CONF_SWAPSIZE=1024/' /etc/dphys-swapfile
sudo /etc/init.d/dphys-swapfile restart
sleep 10
fi
#https://9a3gos.com/install-js8call-2-0-0-rc3-on-ubuntu-19-10-hamlib/
#Verify HAMLIB installed or JS8 Won't Build.
if ! hash rigctl 2>/dev/null; then
source ${MYPATH}/functions/base.function && HAMLIB
source ${MYPATH}/config
fi
echo "###############################"
echo "Installing JS8Call Dependancies"
echo "###############################"
sudo apt-get install -y build-essential gfortran autoconf automake libtool cmake git asciidoctor libfftw3-dev qtdeclarative5-dev texinfo libqt5multimedia5 libqt5multimedia5-plugins qtmultimedia5-dev libusb-1.0.0-dev libqt5serialport5-dev asciidoc libudev-dev
JS8PKG=$(curl -s http://files.js8call.com/latest.html | grep .tgz | sed 's/.*js8call-/js8call-/;s/<.*$//')
JS8VERSION=$(echo $JS8PKG | sed 's/js8call-//;s/.tgz.*$//')
cd ${BUILDDIR}
echo "###################"
echo "Downloading JS8Call"
echo "###################"
wget http://files.js8call.com/$JS8VERSION/$JS8PKG
tar -xvf $JS8PKG
rm $JS8PKG
cd ${BUILDDIR}/js8call
echo "#################"
echo "Compiling JS8Call"
echo "#################"
cmake -D CMAKE_INSTALL_PREFIX=$HOME/Downloads/js8call
cmake --build . -- -j4
sudo cp js8 js8call /usr/local/bin
sudo cp js8call.desktop /usr/share/applications
sudo cp ./artwork/icon_128.svg /usr/share/pixmaps/js8call_icon.svg
#reset swap size to default
if [ ${FREEMEM} -lt 3000 ]; then
echo "Resetting swap size to default"
#increase swap size
sudo sed -i 's/CONF_SWAPFILE=\/var\/swap/#CONF_SWAPFILE=\/var\/swap/' /etc/dphys-swapfile
sudo sed -i 's/CONF_SWAPSIZE=1024/CONF_SWAPSIZE=100/' /etc/dphys-swapfile
sudo /etc/init.d/dphys-swapfile restart
sleep 10
fi
#Old Way left for reference
#cd ${DIR}
#JS8LATE=$(curl -s http://files.js8call.com/latest.html | grep armhf | awk '{ print $2 }' | sed 's/href=//' | sed 's/"//g')
#JS8PKG=$(curl -s http://files.js8call.com/latest.html | grep armhf | awk '{ print $2 }' | sed 's/\///g' | sed 's/href="http:files.js8call.com[0-9].[0-9].[0-9]//' | sed 's/"//')
#wget --tries 2 --connect-timeout=60 ${JS8LATE} || echo "Can't Download JS8Call" >>${BUILDLOG}
#sudo dpkg -i ${JS8PKG}
#sudo apt-get --fix-broken -y install
#sudo dpkg -i ${JS8PKG}
} }
################################## ##################################
# WSJTX # WSJTX
################################## ##################################
WSJTX() { WSJTX() {
cd ${DIR} #find how much memory we are working with
WSPKG=$(curl -s https://physics.princeton.edu/pulsar/k1jt/wsjtx.html | grep armhf.deb | sed 's/^.*wsjtx/wsjtx/' | sed 's/deb.*$/deb/' | head -1) FREEMEM=$(free -m | grep Mem: | awk '{ print $2 }')
wget --tries 2 --connect-timeout=60 --no-check-certificate https://physics.princeton.edu/pulsar/k1jt/$WSPKG echo ${FREEMEM}
WSJTXSUCCESS=$?
sudo dpkg -i $WSPKG ##################################
sudo apt-get --fix-broken -y install # INCREASE SWAP
sudo dpkg -i $WSPKG ##################################
#increase swap file if less than 3G memory
if [ ${FREEMEM} -lt 3000 ]; then
echo "Increasing Swap size for build"
#increase swap size
sudo sed -i 's/#CONF_SWAPFILE=\/var\/swap/CONF_SWAPFILE=\/var\/swap/' /etc/dphys-swapfile
sudo sed -i 's/CONF_SWAPSIZE=100/CONF_SWAPSIZE=1024/' /etc/dphys-swapfile
sudo /etc/init.d/dphys-swapfile restart
sleep 10
fi
sudo apt install -y build-essential git cmake gfortran fftw3-dev qtbase5-dev qttools5-dev libqt5serialport5-dev qtmultimedia5-dev libqt5multimedia5-plugins libqt5sql5-sqlite autoconf automake libtool texinfo libusb-1.0-0-dev libudev-dev libboost-all-dev asciidoctor
FT8PKG=$(curl -s https://physics.princeton.edu/pulsar/k1jt/wsjtx.html | grep .tgz | sed 's/.*="//;s/">.*$//')
FT8DIR=$(echo $FT8PKG | sed 's/.tgz//')
cd ${BUILDDIR}
wget https://physics.princeton.edu/pulsar/k1jt/$FT8PKG
tar -xvf $FT8PKG
rm $FT8PKG
cd $FT8DIR
cmake -D CMAKE_INSTALL_PREFIX=${BUILDDIR}/$FT8DIR
cmake -DWSJT_SKIP_MANPAGES=ON -DWSJT_GENERATE_DOCS=OFF
sudo cmake --build . --target install -j4
sudo mv ${BUILDDIR}/${FT8DIR}/bin/* /usr/local/bin/
sudo cp ${BUILDDIR}/${FT8DIR}/share/applications/wsjtx.desktop /usr/share/applications/
sudo cp ${BUILDDIR}/${FT8DIR}/share/pixmaps/wsjtx_icon.png /usr/share/pixmaps/
#reset swap size to default
if [ ${FREEMEM} -lt 3000 ]; then
echo "Resetting swap size to default"
#increase swap size
sudo sed -i 's/CONF_SWAPFILE=\/var\/swap/#CONF_SWAPFILE=\/var\/swap/' /etc/dphys-swapfile
sudo sed -i 's/CONF_SWAPSIZE=1024/CONF_SWAPSIZE=100/' /etc/dphys-swapfile
sudo /etc/init.d/dphys-swapfile restart
sleep 10
fi
#old way of installing. left for reference
#cd ${DIR}
#WSPKG=$(curl -s https://physics.princeton.edu/pulsar/k1jt/wsjtx.html | grep armhf.deb | sed 's/^.*wsjtx/wsjtx/' | sed 's/deb.*$/deb/' | head -1)
#wget --tries 2 --connect-timeout=60 --no-check-certificate https://physics.princeton.edu/pulsar/k1jt/$WSPKG
#WSJTXSUCCESS=$?
#sudo dpkg -i $WSPKG
#sudo apt-get --fix-broken -y install
#sudo dpkg -i $WSPKG
#added to fix WSJTX 2.3.0 #added to fix WSJTX 2.3.0
sudo sed -i "s/# en_US.UTF-8/en_US.UTF-8/g" /etc/locale.gen #sudo sed -i "s/# en_US.UTF-8/en_US.UTF-8/g" /etc/locale.gen
sudo locale-gen #sudo locale-gen
#end edit for WSJTX 2.3.0 #end edit for WSJTX 2.3.0
#try sourcegorge if princeton.edu fails #try sourcegorge if princeton.edu fails
WSJTX2() { #WSJTX2() {
if [ "$WSJTXSUCCESS" ! = 0 ]; then # if [ "$WSJTXSUCCESS" ! = 0 ]; then
cd ${DIR} # cd ${DIR}
wget --tries 2 --connect-timeout=60 https://sourceforge.net/projects/wsjt/files/wsjtx-2.2.2/wsjtx_2.2.2_armhf.deb # wget --tries 2 --connect-timeout=60 https://sourceforge.net/projects/wsjt/files/wsjtx-2.2.2/wsjtx_2.2.2_armhf.deb
sudo dpkg -i wsjtx_2.2.2_armhf.deb # sudo dpkg -i wsjtx_2.2.2_armhf.deb
sudo apt-get --fix-broken -y install # sudo apt-get --fix-broken -y install
sudo dpkg -i wsjtx_2.2.2_armhf.deb # sudo dpkg -i wsjtx_2.2.2_armhf.deb
fi # fi
} #}
WSJTX2 #WSJTX2
} }
@ -140,7 +272,7 @@ CONKY() {
fi fi
touch ${HOME}/Documents/mylog.txt #conky will fail to load if this file doesn't exist touch ${HOME}/Documents/mylog.txt #conky will fail to load if this file doesn't exist
touch /var/lib/misc/dnsmasq.leases #conky will fail to load if this file doesn't exist touch /var/lib/misc/dnsmasq.leases #conky will fail to load if this file doesn't exist
sudo apt-get install -y ruby2.5 sudo apt-get install -y ruby2.7
sudo gem install gpsd_client sudo gem install gpsd_client
sudo gem install maidenhead sudo gem install maidenhead
cp ${MYPATH}/conky/.conkyrc ${HOME}/.conkyrc cp ${MYPATH}/conky/.conkyrc ${HOME}/.conkyrc
@ -220,13 +352,18 @@ EOF
################################## ##################################
PYQSO() { PYQSO() {
sudo apt-get install -y pyqso sudo apt-get install -y pyqso
} }
################################## ##################################
# CQRLOG # CQRLOG
################################## ##################################
CQRLOG() { CQRLOG() {
#sudo apt-get install -y cqrlog
sudo apt-get install -y cqrlog
OLDCODE(){
#Old code left for reference
sudo apt-get install -y lcl-2.0 lazarus-2.0 fp-compiler-3.0.4 fpc-3.0.4 libssl-dev git build-essential \ sudo apt-get install -y lcl-2.0 lazarus-2.0 fp-compiler-3.0.4 fpc-3.0.4 libssl-dev git build-essential \
libmariadbclient-dev lazarus-ide lcl lcl-gtk2 lcl-nogui lcl-units lcl-utils lazarus lazarus-doc lazarus-src \ libmariadbclient-dev lazarus-ide lcl lcl-gtk2 lcl-nogui lcl-units lcl-utils lazarus lazarus-doc lazarus-src \
fp-units-misc fp-units-rtl fp-utils fpc fpc-source libssl-dev default-mysql-client-core default-mysql-server \ fp-units-misc fp-units-rtl fp-utils fpc fpc-source libssl-dev default-mysql-client-core default-mysql-server \
@ -260,6 +397,7 @@ Categories=HamRadio;Utility
EOF EOF
sudo mv cqrlog.desktop /usr/share/applications/ sudo mv cqrlog.desktop /usr/share/applications/
}
} }
@ -267,6 +405,11 @@ EOF
# CHIRP # CHIRP
################################## ##################################
CHIRP() { CHIRP() {
sudo apt install -y chirp
OLDCODE(){
#left for reference
cd ${DIR} || return cd ${DIR} || return
wget --tries 2 --connect-timeout=60 https://trac.chirp.danplanet.com/chirp_daily/LATEST/ wget --tries 2 --connect-timeout=60 https://trac.chirp.danplanet.com/chirp_daily/LATEST/
CHIRPBUILD=$(cat index.html | grep .tar.gz | grep chirp-daily- | awk '{ print $6 }' | sed 's/.*"//' | sed 's/>//' | sed 's/[<].*$//') CHIRPBUILD=$(cat index.html | grep .tar.gz | grep chirp-daily- | awk '{ print $6 }' | sed 's/.*"//' | sed 's/>//' | sed 's/[<].*$//')
@ -280,6 +423,7 @@ CHIRP() {
sudo python setup.py install sudo python setup.py install
pip install future pip install future
} }
}
################################## ##################################
# GARIM # GARIM
@ -303,7 +447,7 @@ GARIM() {
# QSSTV # QSSTV
################################## ##################################
QSSTV() { QSSTV() {
sudo apt-get install -y g++ libfftw3-dev qt5-default libpulse-dev libhamlib-dev libasound2-dev libv4l-dev libopenjp2-7 libopenjp2-7-dev sudo apt-get install -y g++ libfftw3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libpulse-dev libhamlib-dev libasound2-dev libv4l-dev libopenjp2-7 libopenjp2-7-dev
cd ${BUILDDIR} || return cd ${BUILDDIR} || return
@ -318,6 +462,8 @@ QSSTV() {
sudo make clean sudo make clean
cd ${BUILDDIR} || return cd ${BUILDDIR} || return
rm *.gz rm *.gz
mkdir -p /usr/local/share/pixmaps/
sudo cp ${BUILDDIR}/${SSTVTAR}/icons/qsstv.png /usr/local/share/pixmaps/
cat >qsstv.desktop <<EOF cat >qsstv.desktop <<EOF
[Desktop Entry] [Desktop Entry]
@ -325,7 +471,7 @@ Name=QSSTV
Comment=Slow Scan TV Comment=Slow Scan TV
GenericName=QSSTV GenericName=QSSTV
Exec=/usr/local/bin/qsstv Exec=/usr/local/bin/qsstv
Icon=${HOME}/GridTracker/gridtracker.png Icon=qsstv.png
Type=Application Type=Application
Terminal=false Terminal=false
Categories=HamRadio; Categories=HamRadio;
@ -400,7 +546,7 @@ YAAC() {
cd ${DIR} || return cd ${DIR} || return
#wget --tries 2 --connect-timeout=60 https://sourceforge.net/projects/yetanotheraprsc/files/YAAC.zip/ #wget --tries 2 --connect-timeout=60 https://sourceforge.net/projects/yetanotheraprsc/files/YAAC.zip/
wget --tries 2 --connect-timeout=60 https://www.ka2ddo.org/ka2ddo/YAAC.zip wget --tries 2 --connect-timeout=60 https://www.ka2ddo.org/ka2ddo/YAAC.zip
sudo apt-get install -y openjdk-8-jre librxtx-java sudo apt-get install -y librxtx-java openjdk-10-dbg
mkdir -p ${HOME}/YAAC mkdir -p ${HOME}/YAAC
cd ${HOME}/YAAC || return cd ${HOME}/YAAC || return
touch YAAC touch YAAC
@ -469,10 +615,10 @@ EOF
EES() { EES() {
#install PHP7.3 if not installed #install PHP7.4 if not installed
#this will also install apache2 #this will also install apache2
if ! hash php7.3 2>/dev/null; then if ! hash php7.4 2>/dev/null; then
sudo apt install -y php7.3 sudo apt install -y php7.4
fi fi
#install ghostwriter if needed #install ghostwriter if needed
#this is used to mod the new index.html #this is used to mod the new index.html
@ -495,7 +641,7 @@ EES() {
sudo sed -i 's/REMINDER\ FOR\ OPERATOR\ TO\ DO\ SOMETHING/ENABLE\ AUTO\ POST\ REPLY\ IN\ CRON/' /var/www/html/config.php sudo sed -i 's/REMINDER\ FOR\ OPERATOR\ TO\ DO\ SOMETHING/ENABLE\ AUTO\ POST\ REPLY\ IN\ CRON/' /var/www/html/config.php
cd ${DIR} || return cd ${DIR} || return
#Change Pat Winlink port so it won't interfer with the EES #Change Pat Winlink port so it won't interfer with the EES
sed -i 's/0.0.0.0:8080/0.0.0.0:5000/' ${HOME}/.wl2k/config.json sed -i 's/:8080/:5000/' ${XDG_CONFIG_HOME}/pat/config.json
sed -i 's/PORT=8080/PORT=5000/' ${HOME}/patmenu2/config sed -i 's/PORT=8080/PORT=5000/' ${HOME}/patmenu2/config
sudo killall pat sudo killall pat
@ -608,7 +754,7 @@ GPREDICT() {
# TQSL # TQSL
################################## ##################################
TQSL() { TQSL() {
sudo apt install -y cmake g++ libexpat1-dev libssl-dev libdb++-dev libcurl4-openssl-dev libwxgtk3.0-dev sudo apt install -y cmake g++ libexpat1-dev libssl-dev libdb++-dev libcurl4-openssl-dev libwxgtk3.0-gtk3-dev
cd ${BUILDDIR} || return cd ${BUILDDIR} || return
CUR=$(curl -s http://www.arrl.org/tqsl-download | grep "for Linux" | sed 's/.*TQSL //' | awk '{print $1}') CUR=$(curl -s http://www.arrl.org/tqsl-download | grep "for Linux" | sed 's/.*TQSL //' | awk '{print $1}')
wget http://www.arrl.org/tqsl/tqsl-${CUR}.tar.gz wget http://www.arrl.org/tqsl/tqsl-${CUR}.tar.gz

Wyświetl plik

@ -58,14 +58,21 @@ HSTOOLS() {
GPS() { GPS() {
cd ${BUILDDIR} || return cd ${BUILDDIR} || return
#old gpsd install left for reference echo "##########################"
#wget --tries 2 --connect-timeout=60 https://raw.githubusercontent.com/km4ack/pi-scripts/master/gpsinstall echo "# Installing GPS #"
#chmod +x ${DIR}/gpsinstall echo "##########################"
#sudo ${DIR}/gpsinstall sudo apt install -y python3-gps gpsd-tools gpsd-clients gpsd chrony python3-gi-cairo
#rm ${DIR}/gpsinstall sudo mv /etc/default/gpsd /etc/default/gpsd.org
sudo wget https://raw.githubusercontent.com/km4ack/pi-scripts/master/gpsd -P /etc/default/
sudo echo "refclock SHM 0 offset 0.5 delay 0.2 refid NMEA" | tee -a /etc/chrony/chrony.conf
#line below added per this issue - https://github.com/km4ack/pi-build/issues/146 24SEPT2020
ln -s /lib/systemd/system/gpsd.service /etc/systemd/system/multi-user.target.wants/
OLDCODE(){
#code below built gpsd from source. This is no longer needed with the release of
#bullseye in late 2021. We can now isntall gpsd with apt.
#begin gpsd change 11OCT2021 - see https://github.com/km4ack/pi-build/issues/316 #begin gpsd change 11OCT2021 - see https://github.com/km4ack/pi-build/issues/316
sudo apt-get -y install scons libncurses5-dev python-dev pps-tools chrony sudo apt-get -y install scons libncurses5-dev python-dev pps-tools chrony python-gi-cairo
sudo ldconfig sudo ldconfig
cd ${BUILDDIR} cd ${BUILDDIR}
wget http://download.savannah.gnu.org/releases/gpsd/gpsd-3.23.1.tar.gz wget http://download.savannah.gnu.org/releases/gpsd/gpsd-3.23.1.tar.gz
@ -82,6 +89,7 @@ GPS() {
echo "refclock SHM 0 offset 0.5 delay 0.2 refid NMEA" | sudo tee -a /etc/chrony/chrony.conf echo "refclock SHM 0 offset 0.5 delay 0.2 refid NMEA" | sudo tee -a /etc/chrony/chrony.conf
fi fi
#end gpsd change 11OCT2021 #end gpsd change 11OCT2021
}
#Set GPS by serial ID #Set GPS by serial ID
#GPS Variable set by main script or update script and placed in config file #GPS Variable set by main script or update script and placed in config file
@ -149,7 +157,7 @@ EOF
HAMLIB() { HAMLIB() {
PACKAGE=hamlib PACKAGE=hamlib
CLEANSOURCE CLEANSOURCE
sudo apt install -y libusb-1.0 libusb-dev sudo apt install libusb-1.0-0 libusb-1.0-0-dev
cd ${BUILDDIR} || return cd ${BUILDDIR} || return
NEWRIG=$(curl -s https://sourceforge.net/projects/hamlib/files/latest/download | NEWRIG=$(curl -s https://sourceforge.net/projects/hamlib/files/latest/download |
grep -o https://downloads.sourceforge.net/project/hamlib/hamlib/[0-9].[0-9] | grep -o https://downloads.sourceforge.net/project/hamlib/hamlib/[0-9].[0-9] |
@ -185,7 +193,7 @@ DIREWOLF() {
make install-conf make install-conf
sudo make clean sudo make clean
sed -i "s/N0CALL/${CALL}/" "${HOME}/direwolf.conf" sed -i "s/N0CALL/${CALL}/" "${HOME}/direwolf.conf"
sed -i 's/# ADEVICE plughw:1,0/ADEVICE plughw:2,0/' ${HOME}/direwolf.conf sed -i 's/# ADEVICE plughw:1,0/ADEVICE plughw:3,0/' ${HOME}/direwolf.conf
sed -i '/#PTT\ \/dev\/ttyUSB0\ RTS/a #Uncomment line below for PTT with sabrent sound card\n#PTT RIG 2 localhost:4532' ${HOME}/direwolf.conf sed -i '/#PTT\ \/dev\/ttyUSB0\ RTS/a #Uncomment line below for PTT with sabrent sound card\n#PTT RIG 2 localhost:4532' ${HOME}/direwolf.conf
} }

Wyświetl plik

@ -193,13 +193,13 @@ PISTATS() {
wget http://www.w1hkj.com/PI/${CUR} wget http://www.w1hkj.com/PI/${CUR}
tar -xzvf ${CUR} tar -xzvf ${CUR}
rm ${CUR} rm ${CUR}
PISTATDIR=$(ls ${HOME} | grep pistats) PISTATDIR=$(ls ${BUILDDIR} | grep pistats)
cd ${PISTATDIR} || return cd ${PISTATDIR} || return
sudo apt-get install -y libfltk1.3-dev sudo apt-get install -y libfltk1.3-dev
make make
make clean
sudo mv pistats /usr/local/bin sudo mv pistats /usr/local/bin
sudo mv ${BUILDDIR}/${PISTATDIR}/data/pistats.desktop /usr/share/applications/ sudo mv ${BUILDDIR}/${PISTATDIR}/data/pistats.desktop /usr/share/applications/
make clean
cd ${HOME} || return cd ${HOME} || return
} }
@ -417,11 +417,11 @@ VNC() {
} }
################################## ##################################
# ZYGRIB Viewer # XYGRIB Viewer
################################## ##################################
ZYGRIB() { XYGRIB() {
sudo apt install -y zygrib sudo apt install -y xygrib
sudo apt install -y zygrib-maps
} }
################################## ##################################
@ -512,7 +512,7 @@ sudo mv /run/user/$UID/packetsearch.desktop /usr/share/applications/
#Documentation - https://www.cantab.net/users/john.wiseman/Documents/QtSoundModem.html #Documentation - https://www.cantab.net/users/john.wiseman/Documents/QtSoundModem.html
QTSOUND(){ QTSOUND(){
sudo apt install libqt5serialbus5 sudo apt install -y libqt5serialport5
cd ${HOME}/Downloads || return cd ${HOME}/Downloads || return
wget --tries 2 --connect-timeout=60 https://www.cantab.net/users/john.wiseman/Downloads/Beta/piQtSoundModem wget --tries 2 --connect-timeout=60 https://www.cantab.net/users/john.wiseman/Downloads/Beta/piQtSoundModem
chmod +x piQtSoundModem chmod +x piQtSoundModem

74
update
Wyświetl plik

@ -45,6 +45,49 @@ FINISH() {
trap FINISH EXIT trap FINISH EXIT
#####################################
# Old OS Check
#####################################
V_ID=$(grep VERSION_ID /etc/os-release | sed 's/VERSION_ID="//;s/"//')
if [ "$V_ID" -le 10 ]; then
NOTICEPATH=/run/user/$UID
cat <<EOF >${NOTICEPATH}/intro.txt
Build a Pi 3.2.0 and later does not support
RaspiOS Buster or earlier versions of RaspiOS.
You should consider upgrading to RaspiOS 11
(Bullseye). By clicking ok you will be moved
to the last version of Build a Pi (3.1.4) that
supports Pi OS Buster. Please note there are
no plans to update Build a Pi for Buster going
forward. In other words, you are on your own
if it is broke and you are still running Pi OS
10 (Buster).
EOF
INTRO=$(yad --width=600 --height=300 --text-align=center --center --title="Out of Date OS Detected!" --show-uri \
--image ${LOGO} --window-icon=${LOGO} --image-on-top --separator="|" --item-separator="|" \
--text-info \
--button="OK":1 <${NOTICEPATH}/intro.txt \
--button="Exit":2 \
>/dev/null 2>&1)
BUT=$?
echo $BUT
if [ $BUT = 2 ] || [ $BUT = 252 ]; then
exit
fi
rm ${NOTICEPATH}/intro.txt
cd $HOME/pi-build
git checkout buster
bash build-a-pi & exit
fi
#####################################
# end Old OS Check
#####################################
#remove temp dir if exist #remove temp dir if exist
#fix issue 108 https://github.com/km4ack/pi-build/issues/108 #fix issue 108 https://github.com/km4ack/pi-build/issues/108
#Thanks to N5RKS for finding the bug #Thanks to N5RKS for finding the bug
@ -411,7 +454,6 @@ yad --center --list --checklist --width=600 --height=600 --separator="" \
false "YAAC" "$YAAC" "Yet Another APRS Client" \ false "YAAC" "$YAAC" "Yet Another APRS Client" \
false "PI-APRS" "$PIAPRS" "APRS Messaging Client" \ false "PI-APRS" "$PIAPRS" "APRS Messaging Client" \
false "PYQSO" "$PYQSO" "Logging Software" \ false "PYQSO" "$PYQSO" "Logging Software" \
false "CQRLOG" "$CQRLOG" "Logging Software" \
false "HAMRS" "$HAMRS" "Logging Software" \ false "HAMRS" "$HAMRS" "Logging Software" \
false "QSSTV" "$QSSTV" "Slow scan TV" \ false "QSSTV" "$QSSTV" "Slow scan TV" \
false "GRIDTRACKER" "$GRIDTRACK" "Track grids in WSJTX" \ false "GRIDTRACKER" "$GRIDTRACK" "Track grids in WSJTX" \
@ -484,7 +526,7 @@ yad --center --list --checklist --width=600 --height=600 --separator="" \
false "BPQ" "$BPQ" "LinBPQ Software" \ false "BPQ" "$BPQ" "LinBPQ Software" \
false "BATT" "$BATT" "Battery Test Script" \ false "BATT" "$BATT" "Battery Test Script" \
false "VNC" "$VNC" "VNC Viewer Application" \ false "VNC" "$VNC" "VNC Viewer Application" \
false "ZYGRIB" "$ZYGRIB" "Grib File Viewer" \ false "XYGRIB" "$XYGRIB" "Grib file viewer" \
--button="Exit":1 \ --button="Exit":1 \
--button="Install/Update Selected":2 >${UTILITY} --button="Install/Update Selected":2 >${UTILITY}
BUT=$? BUT=$?
@ -571,34 +613,14 @@ bash ${HOME}/pi-build/menu-update
#Remove temp files #Remove temp files
rm ${BASE} ${ADDITIONAL} ${UTILITY} ${FLSUITE} >/dev/null 2>&1 rm ${BASE} ${ADDITIONAL} ${UTILITY} ${FLSUITE} >/dev/null 2>&1
#remove libham (rigctl) installed from apt
#since it conflicts with hamlib installed from source
sudo apt purge -y libhamlib4
#restore crontab #restore crontab
crontab ${TEMPCRON} crontab ${TEMPCRON}
rm ${TEMPCRON} rm ${TEMPCRON}
#####################################
# Pat 12 Temp Workaround
#####################################
#This will move the user to the "version12" branch of the Pat Menu code
#until this can be implemented into the main branch of code. This will
#allow Pat Menu to support both the new version of Pat as well as older
#versions. This section of code needs to be removed once the "version12"
#branch is merged with the master branch
PAT_VERSION=$(pat version | awk '{print $2}' | sed 's/v0.//;s/.0//')
if [ "$PAT_VERSION" -le 11 ]; then
echo "pat version 11 detected"
else
echo "pat version 12 or greater detected"
echo "moving pat menu to the version12 branch"
cd $HOME/patmenu2
git pull
git checkout version12
fi
#####################################
# END Pat 12 Temp Workaround
#####################################
#reboot when done #reboot when done
yad --width=400 --height=200 --title="Reboot" --image ${LOGO} \ yad --width=400 --height=200 --title="Reboot" --image ${LOGO} \
--text-align=center --skip-taskbar --image-on-top \ --text-align=center --skip-taskbar --image-on-top \