appimage updates

This commit is contained in:
David Young
2026-03-20 20:28:14 -06:00
parent 95bdac8b61
commit 167616af76
4 changed files with 44 additions and 11 deletions

View File

@@ -1,7 +1,7 @@
[QtTermTCP] [QtTermTCP]
version=0.1 version=0.1
wget=http://www.cantab.net/users/john.wiseman/Downloads/QtTermSource.zip wget=http://www.cantab.net/users/john.wiseman/Downloads/QtTermSource.zip
install=$HOME/.local/bin install=$HOME/.local/bin/QtTermTCP
steps=qmake, make, mv QtTermTCP $HOME/.local/bin/ steps=qmake, make, mv QtTermTCP $HOME/.local/bin/
[Kiwix-Desktop] [Kiwix-Desktop]
@@ -10,14 +10,9 @@ git=https://github.com/kiwix/kiwix-desktop.git
install=/usr/local/bin/kiwix-desktop install=/usr/local/bin/kiwix-desktop
steps=/usr/lib/qt6/bin/qmake, make, sudo make install steps=/usr/lib/qt6/bin/qmake, make, sudo make install
#[PotaCAT]
#version=1.1.0
#git=https://github.com/Waffleslop/POTACAT.git
#install=$HOME/.local/bin
#steps=npm install, $HOME/.local/share/HamPack/patch-potacat.sh, npm run dist:linux, mv /dist/*.AppImage $HOME/.local/bin/
[potacat] [potacat]
version=1.1.0 version=1.1.0
git=https://github.com/Waffleslop/POTACAT.git git=https://github.com/Waffleslop/POTACAT.git
install=$HOME/.local/bin/POTACAT.AppImage install=$HOME/.local/bin/POTACAT.AppImage
desktop=$HOME/.local/share/HamPack/desktop/potacat.desktop
steps=bash $HOME/.local/share/HamPack/patch-potacat.sh, npm install, npm run dist:linux, mv dist/*.AppImage $HOME/.local/bin/ steps=bash $HOME/.local/share/HamPack/patch-potacat.sh, npm install, npm run dist:linux, mv dist/*.AppImage $HOME/.local/bin/

BIN
desktop/icons/potacat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

8
desktop/potacat.desktop Normal file
View File

@@ -0,0 +1,8 @@
[Desktop Entry]
Name=POTACAT
Comment=Amateur radio spot aggregator with CAT control, QSO logging, and panadapter integration
Exec=$HOME/.local/bin/POTACAT.AppImage
Icon=$HOME/.local/share/HamPack/desktop/icons/potacat.png
Type=Application
Categories=HamRadio;Utility;
Terminal=false

View File

@@ -93,6 +93,25 @@ needs_update() {
return 0 return 0
} }
# Install desktop file if specified
install_desktop() {
local desktop="$1"
if [ -z "$desktop" ]; then
return
fi
if [ ! -f "$desktop" ]; then
echo " Warning: desktop file $desktop not found, skipping."
return
fi
echo " Installing desktop file..."
mkdir -p "$HOME/.local/share/applications"
cp "$desktop" "$HOME/.local/share/applications/"
echo " Desktop file installed."
}
# Fetch source via git or wget # Fetch source via git or wget
fetch_source() { fetch_source() {
local app="$1" local app="$1"
@@ -183,10 +202,19 @@ process_app() {
local install_path="$4" local install_path="$4"
local steps="$5" local steps="$5"
local version="$6" local version="$6"
local desktop="$7"
echo "" echo ""
echo "=== $app ===" echo "=== $app ==="
# Check if already installed
if command -v "$app" &> /dev/null || [ -f "$install_path" ]; then
if [ -z "$version" ]; then
echo " $app is already installed, skipping."
return
fi
fi
if [ -z "$version" ]; then if [ -z "$version" ]; then
echo " Warning: no version specified in compile.conf for $app." echo " Warning: no version specified in compile.conf for $app."
read -rp " Compile and install $app anyway? [y/N] " response read -rp " Compile and install $app anyway? [y/N] " response
@@ -200,23 +228,24 @@ process_app() {
fetch_source "$app" "$git_url" "$wget_url" fetch_source "$app" "$git_url" "$wget_url"
run_steps "$app" "$steps" run_steps "$app" "$steps"
install_desktop "$desktop"
save_installed_version "$app" "$version" save_installed_version "$app" "$version"
echo " $app $version installed successfully." echo " $app $version installed successfully."
} }
# Parse compile.conf and process each app # Parse compile.conf and process each app
process_conf() { process_conf() {
local app="" git_url="" wget_url="" install_path="" steps="" version="" local app="" git_url="" wget_url="" install_path="" steps="" version="" desktop=""
while IFS= read -r line || [ -n "$line" ]; do while IFS= read -r line || [ -n "$line" ]; do
[[ -z "$line" || "$line" == \#* ]] && continue [[ -z "$line" || "$line" == \#* ]] && continue
if [[ "$line" =~ ^\[(.+)\]$ ]]; then if [[ "$line" =~ ^\[(.+)\]$ ]]; then
if [ -n "$app" ]; then if [ -n "$app" ]; then
process_app "$app" "$git_url" "$wget_url" "$install_path" "$steps" "$version" process_app "$app" "$git_url" "$wget_url" "$install_path" "$steps" "$version" "$desktop"
fi fi
app="${BASH_REMATCH[1]}" app="${BASH_REMATCH[1]}"
git_url="" wget_url="" install_path="" steps="" version="" git_url="" wget_url="" install_path="" steps="" version="" desktop=""
continue continue
fi fi
@@ -229,13 +258,14 @@ process_conf() {
install) install_path="$value" ;; install) install_path="$value" ;;
steps) steps="$value" ;; steps) steps="$value" ;;
version) version="$value" ;; version) version="$value" ;;
desktop) desktop="$value" ;;
esac esac
done < "$CONF_FILE" done < "$CONF_FILE"
# Process the last app in the file # Process the last app in the file
if [ -n "$app" ]; then if [ -n "$app" ]; then
process_app "$app" "$git_url" "$wget_url" "$install_path" "$steps" "$version" process_app "$app" "$git_url" "$wget_url" "$install_path" "$steps" "$version" "$desktop"
fi fi
} }