kopia lustrzana https://github.com/km4ack/pi-build
Merge branch 'dev' of https://github.com/km4ack/pi-build into dev
commit
a37caf7e6d
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
MYPATH=$HOME/pi-build
|
||||
MYPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
LOGO=$MYPATH/logo.png
|
||||
|
||||
cat <<EOF > $MYPATH/boot.txt
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
#20200515 km4ack
|
||||
|
||||
MYPATH=$HOME/pi-build
|
||||
MYPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
LOGO=$MYPATH/logo.png
|
||||
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
.vscode/
|
||||
config
|
||||
|
|
76
build-a-pi
76
build-a-pi
|
@ -13,9 +13,9 @@
|
|||
|
||||
|
||||
DESK=$(printenv | grep DISPLAY)
|
||||
MYPATH=$HOME/pi-build
|
||||
MYPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
LOGO=$MYPATH/logo.png
|
||||
RB=$( ls $HOME/.config | grep KM4ACK)
|
||||
RB=$HOME/.config/KM4ACK
|
||||
BASE=$MYPATH/base.txt
|
||||
ADDITIONAL=$MYPATH/additional.txt
|
||||
UTILITY=$MYPATH/utility.txt
|
||||
|
@ -25,7 +25,7 @@ FUNCTIONS=$MYPATH/functions
|
|||
TEMPCRON=$MYPATH/cron.tmp
|
||||
DIR=$MYPATH/temp
|
||||
WHO=$(whoami)
|
||||
VERSION=$(cat $MYPATH/changelog | grep version= | sed 's/version=//')
|
||||
VERSION=$(grep "version=" $MYPATH/changelog | sed 's/version=//')
|
||||
|
||||
FINISH(){
|
||||
if [ -f "$BASE" ]; then
|
||||
|
@ -75,7 +75,7 @@ sudo apt-get update
|
|||
#####################################
|
||||
# Check if run before
|
||||
#####################################
|
||||
if [ -n "$RB" ]; then
|
||||
if [ -f "$RB" ]; then
|
||||
bash $MYPATH/update &
|
||||
exit
|
||||
fi
|
||||
|
@ -139,17 +139,31 @@ CALL
|
|||
CALL=$(echo $INFO | awk -F "|" '{print $1}')
|
||||
CALL=${CALL^^}
|
||||
|
||||
echo "CALL=$CALL" > $CONFIG
|
||||
|
||||
#Verify call not empty
|
||||
if [ -z "$CALL" ]; then
|
||||
yad --form --width=420 --text-align=center --center --title="Build-a-Pi" --text-align=center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
--text="<b>Call Can't be Blank</b>" \
|
||||
--button=gtk-ok
|
||||
CALL
|
||||
fi
|
||||
ATTEMPTS=0
|
||||
while [ -z "$CALL" ];
|
||||
do
|
||||
if [ $ATTEMPTS -eq 3 ]
|
||||
then
|
||||
yad --form --width=420 --text-align=center --center --title="Build-a-Pi" --text-align=center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
--text="<b>Empty callsign after 3 attempts. Quiting!</b>" \
|
||||
--button=gtk-ok
|
||||
exit
|
||||
fi
|
||||
|
||||
yad --form --width=420 --text-align=center --center --title="Build-a-Pi" --text-align=center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
--text="<b>Call Can't be Blank</b>" \
|
||||
--button=gtk-ok
|
||||
|
||||
((ATTEMPTS=ATTEMPTS+1))
|
||||
CALL
|
||||
CALL=$(echo $INFO | awk -F "|" '{print $1}')
|
||||
CALL=${CALL^^}
|
||||
done
|
||||
|
||||
echo "CALL=$CALL" > $CONFIG
|
||||
|
||||
#####################################
|
||||
# Base Apps
|
||||
|
@ -183,10 +197,8 @@ echo "$i" >> $BASE
|
|||
done
|
||||
fi
|
||||
|
||||
#############################################################
|
||||
#check if hotspot is chosen for install & get info if needed#
|
||||
#############################################################
|
||||
HS=$(cat $BASE | grep HOTSPOT)
|
||||
#check if hotspot is chosen for install & get info if needed
|
||||
HS=$(grep "HOTSPOT" $BASE)
|
||||
if [ -n "$HS" ]; then
|
||||
HSINFO(){
|
||||
#unblock wifi
|
||||
|
@ -195,7 +207,7 @@ sudo rfkill unblock all > /dev/null 2>&1
|
|||
sudo ifconfig wlan0 up
|
||||
#LIST=$(sudo iw dev "wlan0" scan ap-force | egrep "^BSS|SSID:" | grep SSID: | sed 's/SSID://' | awk '{ print $1 }')
|
||||
#LIST=$(echo $LIST | sed 's/ /|/g')
|
||||
LIST=$(sudo iw dev "wlan0" scan ap-force | egrep "^BSS|SSID:" | grep SSID: | sed 's/SSID://')
|
||||
LIST=$(sudo iw dev "wlan0" scan ap-force | grep "SSID:" | awk '{print $2}')
|
||||
LIST=$(echo "$LIST" | tr '\n' '|')
|
||||
|
||||
|
||||
|
@ -356,7 +368,7 @@ done
|
|||
fi
|
||||
|
||||
#check if hamclock is being installed
|
||||
HCCHECK=$(cat $ADDITIONAL | grep HAMCLOCK)
|
||||
HCCHECK=$(grep "HAMCLOCK" $ADDITIONAL)
|
||||
if [ -n "$HCCHECK" ]; then
|
||||
|
||||
HC=$(yad --form --width=420 --text-align=center --center --title="Build-a-Pi" \
|
||||
|
@ -369,7 +381,7 @@ sed -i 's/HAMCLOCK//' $ADDITIONAL
|
|||
echo $HC >> $ADDITIONAL
|
||||
fi
|
||||
|
||||
PATCHECK=$(cat $ADDITIONAL | grep PAT)
|
||||
PATCHECK=$(grep "PAT" $ADDITIONAL)
|
||||
if [ -n "$PATCHECK" ]; then
|
||||
INFO=$(yad --form --width=420 --text-align=center --center --title="Build-a-Pi" \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
|
@ -423,7 +435,7 @@ sudo apt-get -y upgrade
|
|||
sudo apt -y full-upgrade
|
||||
|
||||
#set wallpaper
|
||||
pcmanfm --set-wallpaper $HOME/pi-build/bap-wallpaper.jpg
|
||||
pcmanfm --set-wallpaper $MYPATH/bap-wallpaper.jpg
|
||||
|
||||
mkdir -p $DIR 2> /dev/null
|
||||
|
||||
|
@ -471,8 +483,8 @@ cat > build-a-pi.desktop <<EOF
|
|||
Name=Build-a-Pi
|
||||
GenericName=KM4ACK Build-a-Pi
|
||||
Comment=Build-a-Pi App Manager
|
||||
Exec=$HOME/pi-build/update
|
||||
Icon=$HOME/pi-build/logo.png
|
||||
Exec=$MYPATH/update
|
||||
Icon=$MYPATH/logo.png
|
||||
Terminal=true
|
||||
Type=Application
|
||||
Categories=Settings;DesktopSettings;GTK;X-LXDE-Settings;
|
||||
|
@ -483,9 +495,9 @@ sudo mv build-a-pi.desktop /usr/share/applications/
|
|||
#####################################
|
||||
# Install Base Apps
|
||||
#####################################
|
||||
touch $HOME/.config/KM4ACK
|
||||
while read i ; do
|
||||
touch $RB
|
||||
source $FUNCTIONS/base.function
|
||||
while read i ; do
|
||||
$i
|
||||
done < $BASE
|
||||
|
||||
|
@ -495,19 +507,17 @@ done < $BASE
|
|||
#####################################
|
||||
source $FUNCTIONS/flsuite.function
|
||||
#perform memory increase if needed
|
||||
CHECKFL=$(cat $MYPATH/flsuite.txt)
|
||||
if [ -n "$CHECKFL" ]; then
|
||||
CHECKFL="$MYPATH/flsuite.txt"
|
||||
if [ -s "$CHECKFL" ]; then
|
||||
FLSTART
|
||||
fi
|
||||
touch $HOME/.config/KM4ACK
|
||||
touch $RB
|
||||
while read i ; do
|
||||
source $FUNCTIONS/flsuite.function
|
||||
$i
|
||||
done < $FLSUITE
|
||||
|
||||
source $FUNCTIONS/flsuite.function
|
||||
#Perform memory reset if needed
|
||||
if [ -n "$CHECKFL" ]; then
|
||||
if [ -s "$CHECKFL" ]; then
|
||||
FLSTOP
|
||||
fi
|
||||
|
||||
|
@ -515,8 +525,8 @@ fi
|
|||
#####################################
|
||||
# Install ADDITIONAL Apps
|
||||
#####################################
|
||||
while read i ; do
|
||||
source $FUNCTIONS/additional.function
|
||||
while read i ; do
|
||||
$i
|
||||
done < $ADDITIONAL
|
||||
|
||||
|
@ -524,8 +534,8 @@ done < $ADDITIONAL
|
|||
#####################################
|
||||
# Install KM4ACK Utilites
|
||||
#####################################
|
||||
while read i ; do
|
||||
source $FUNCTIONS/utility.function
|
||||
while read i ; do
|
||||
$i
|
||||
done < $UTILITY
|
||||
|
||||
|
|
12
diagnostic
12
diagnostic
|
@ -18,21 +18,13 @@ CHECK(){
|
|||
#----------------------------------------------------#
|
||||
# Hotspot
|
||||
#----------------------------------------------------#
|
||||
HOTSPOT=$(ls /usr/bin/ | grep autohotspotN)
|
||||
if [ -z "$HOTSPOT" ]; then
|
||||
HOTSPOT="/usr/bin/autohotspotN"
|
||||
if [ ! -f "$HOTSPOT" ]; then
|
||||
HOTSPOT="Not Installed"
|
||||
else
|
||||
HOTSPOT="Installed"
|
||||
fi
|
||||
|
||||
#----------------------------------------------------#
|
||||
# Hotspot tools
|
||||
#----------------------------------------------------#
|
||||
if [ ! -d $HOME/hotspot-tools2 ]; then
|
||||
HSTOOLS="Not Installed"
|
||||
else
|
||||
HSTOOLS="Installed"
|
||||
fi
|
||||
#----------------------------------------------------#
|
||||
# AX25
|
||||
#----------------------------------------------------#
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
#additional software to install with build-a-pi
|
||||
#20200513 km4ack
|
||||
|
||||
MYPATH=$HOME/pi-build
|
||||
TEMPCRON=$MYPATH/cron.tmp
|
||||
DIR=$MYPATH/temp
|
||||
WHO=$(whoami)
|
||||
|
@ -28,7 +27,7 @@ FIG=$HOME/.wl2k/config.json
|
|||
#set callsign
|
||||
sed -i "s/\"mycall\": \".*\",/\"mycall\": \"$CALL\",/" $FIG
|
||||
#set password
|
||||
WL2KPASS=$(cat $HOME/pi-build/config | grep WL2KPASS | sed 's/"//g' | sed 's/WL2KPASS=//')
|
||||
WL2KPASS=$(grep "WL2KPASS" $MYPATH/config | sed 's/"//g' | sed 's/WL2KPASS=//')
|
||||
sed -i "s/\"secure_login_password\": \".*\",/\"secure_login_password\": \""$WL2KPASS"\",/" $FIG
|
||||
#set locator
|
||||
sed -i "s/\"locator\": \".*\",/\"locator\": \"$GRID\",/" $FIG
|
||||
|
@ -270,9 +269,9 @@ cat > gridtracker.desktop <<EOF
|
|||
Name=GridTracker
|
||||
Comment=GridTracker
|
||||
GenericName=GridTracker, a WSJT-X Companion
|
||||
Exec=/home/pi/GridTracker/GridTracker --disable-accelerated-2d-canvas --num-raster-threads=2
|
||||
Icon=/home/pi/GridTracker/gridtracker.png
|
||||
Path=/home/pi/GridTracker
|
||||
Exec=$HOME/GridTracker/GridTracker --disable-accelerated-2d-canvas --num-raster-threads=2
|
||||
Icon=$HOME/GridTracker/gridtracker.png
|
||||
Path=$HOME/GridTracker
|
||||
Type=Application
|
||||
Encoding=UTF-8
|
||||
Terminal=false
|
||||
|
@ -384,15 +383,15 @@ sudo killall pat
|
|||
sudo systemctl start pat@$WHO
|
||||
|
||||
#Move info.markdown from EES folder to Documents
|
||||
sudo mv /var/www/html/info.markdown /home/pi/Documents/
|
||||
sudo chown pi:pi /home/pi/Documents/info.markdown
|
||||
sudo mv /var/www/html/info.markdown $HOME/Documents/
|
||||
sudo chown $WHO:$WHO $HOME/Documents/info.markdown
|
||||
#move info.html to pi documents folder
|
||||
sudo cp /var/www/html/index.html /home/pi/Documents/info.html
|
||||
sudo chown pi:pi /home/pi/Documents/info.html
|
||||
sudo cp /var/www/html/index.html $HOME/Documents/info.html
|
||||
sudo chown $WHO:$WHO $HOME/Documents/info.html
|
||||
#move script to be run by cron to bin dir
|
||||
sudo mv /var/www/html/webcopy /home/pi/bin/
|
||||
sudo chown pi:pi /home/pi/bin/webcopy
|
||||
sudo chmod +x /home/pi/bin/webcopy
|
||||
sudo mv /var/www/html/webcopy $HOME/bin/
|
||||
sudo chown $WHO:$WHO $HOME/bin/webcopy
|
||||
sudo chmod +x $HOME/bin/webcopy
|
||||
|
||||
#set up cron job for EES
|
||||
echo "#-----Start EES Server Options------" >> $TEMPCRON
|
||||
|
@ -403,7 +402,7 @@ echo "#Auto post replies for EES server" >> $TEMPCRON
|
|||
echo "#Default is off. Activate by removing # on line below" >> $TEMPCRON
|
||||
echo "#*/1 * * * * /var/www/html/autopostreply" >> $TEMPCRON
|
||||
echo "#Line below moves info.html to index.html when modified" >> $TEMPCRON
|
||||
echo "*/1 * * * * /home/pi/bin/webcopy" >> $TEMPCRON
|
||||
echo "*/1 * * * * $HOME/bin/webcopy" >> $TEMPCRON
|
||||
echo "#-----End EES Server Options------" >> $TEMPCRON
|
||||
|
||||
|
||||
|
|
|
@ -9,10 +9,6 @@
|
|||
#km4ack 20190923
|
||||
#km4ack 20200513 mod for BAP script
|
||||
|
||||
MYPATH=$HOME/pi-build
|
||||
|
||||
|
||||
|
||||
shackwifi=$1
|
||||
shackpass=$2
|
||||
wifipasswd=$3
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
#this installs the basic software for build-a-pi
|
||||
#km4ack 20200513
|
||||
|
||||
MYPATH=$HOME/pi-build
|
||||
TEMPCRON=$MYPATH/cron.tmp
|
||||
DIR=$MYPATH/temp
|
||||
mkdir -p $DIR
|
||||
|
@ -12,8 +11,8 @@ source $MYPATH/config
|
|||
# HOTSPOT
|
||||
################################
|
||||
HOTSPOT(){
|
||||
HS=$(ls /usr/bin/ | grep autohotspotN)
|
||||
if [ -z "$HS" ]; then
|
||||
HS="/usr/bin/autohotspotN"
|
||||
if [ ! -f "$HS" ]; then
|
||||
#pass variables with script because run as root
|
||||
sudo bash $MYPATH/functions/autohotspot "$SHACKSSID" "$SHACKPASS" "$HSPASS"
|
||||
echo "*/5 * * * * sudo /usr/bin/autohotspotN >/dev/null 2>&1" >> $TEMPCRON
|
||||
|
|
24
update
24
update
|
@ -12,7 +12,7 @@
|
|||
# #
|
||||
##################################################################
|
||||
|
||||
MYPATH=$HOME/pi-build
|
||||
MYPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
BASE=$MYPATH/base.txt
|
||||
FUNCTIONS=$MYPATH/functions
|
||||
ADDITIONAL=$MYPATH/additional.txt
|
||||
|
@ -21,7 +21,7 @@ FLSUITE=$MYPATH/flsuite.txt
|
|||
CONFIG=$MYPATH/config
|
||||
LOGO=$MYPATH/logo.png
|
||||
TEMPCRON=$MYPATH/cron.tmp
|
||||
VERSION=$(cat $MYPATH/changelog | grep version= | sed 's/version=//')
|
||||
VERSION=$(grep "version=" $MYPATH/changelog | sed 's/version=//')
|
||||
|
||||
FINISH(){
|
||||
if [ -f "$BASE" ]; then
|
||||
|
@ -60,7 +60,7 @@ mkdir -p $HOME/.config/autostart
|
|||
#Check for BAP updates
|
||||
#Check for build a pi updates
|
||||
echo "Checking for Build a Pi updates"
|
||||
CURRENT=$(cat $MYPATH/changelog | head -1 | sed s'/version=//')
|
||||
CURRENT=$(head -1 $MYPATH/changelog | sed s'/version=//')
|
||||
|
||||
LATEST=$(curl -s https://raw.githubusercontent.com/km4ack/pi-build/master/changelog | head -1 | sed 's/version=//')
|
||||
|
||||
|
@ -85,7 +85,7 @@ echo $BUT
|
|||
elif [ $BUT = 2 ]; then
|
||||
echo "Updating Build a Pi to $LATEST"
|
||||
mv $MYPATH/config $HOME/Documents/config.bap
|
||||
rm -rf $HOME/pi-build
|
||||
rm -rf $MYPATH
|
||||
cd ~
|
||||
git clone https://github.com/km4ack/pi-build.git
|
||||
mv $HOME/Documents/config.bap $MYPATH/config
|
||||
|
@ -123,8 +123,8 @@ CHECK(){
|
|||
#----------------------------------------------------#
|
||||
# Hotspot
|
||||
#----------------------------------------------------#
|
||||
HOTSPOT=$(ls /usr/bin/ | grep autohotspotN)
|
||||
if [ -z "$HOTSPOT" ]; then
|
||||
HOTSPOT="/usr/bin/autohotspotN"
|
||||
if [ ! -f "$HOTSPOT" ]; then
|
||||
HOTSPOT="Not Installed"
|
||||
else
|
||||
HOTSPOT="Installed"
|
||||
|
@ -447,8 +447,8 @@ fi
|
|||
#----------------------------------------------------#
|
||||
# XASTIR
|
||||
#----------------------------------------------------#
|
||||
XA=$(ls /usr/bin/ | grep xastir)
|
||||
if [ -z "$XA" ]; then
|
||||
XA="/usr/bin/xastir"
|
||||
if [ ! -f "$XA" ]; then
|
||||
XASTIR="Not Installed"
|
||||
else
|
||||
XASTIR="Installed"
|
||||
|
@ -457,8 +457,8 @@ fi
|
|||
#----------------------------------------------------#
|
||||
# YAAC
|
||||
#----------------------------------------------------#
|
||||
YAAC=$(ls $HOME | grep YAAC)
|
||||
if [ -z "$YAAC" ]; then
|
||||
YAAC="$HOME/YAAC"
|
||||
if [ ! -d "$YAAC" ]; then
|
||||
YAAC="Not Installed"
|
||||
else
|
||||
YAAC="Installed"
|
||||
|
@ -485,8 +485,8 @@ fi
|
|||
#----------------------------------------------------#
|
||||
# GRIDTRACKER
|
||||
#----------------------------------------------------#
|
||||
GT=$(ls $HOME | grep GridTracker)
|
||||
if [ -z "$GT" ]; then
|
||||
GT="$HOME/GridTracker"
|
||||
if [ ! -d "$GT" ]; then
|
||||
GRIDTRACK="Not Installed"
|
||||
else
|
||||
GRIDTRACK="Installed"
|
||||
|
|
Ładowanie…
Reference in New Issue