mirror of
https://github.com/thetechprepper/emcomm-tools-os-community.git
synced 2026-09-17 15:41:44 -04:00
reticulum - Added support for MeshChat to et-mode; enabled Reticulum to support multi-interface routing
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Author : Gaston Gonzalez
|
# Author : Gaston Gonzalez
|
||||||
# Date : 6 November 2024
|
# Date : 6 November 2024
|
||||||
# Updated : 12 May 2026
|
# Updated : 13 May 2026
|
||||||
# Purpose : Configures the system for a specific mode of operation
|
# Purpose : Configures the system for a specific mode of operation
|
||||||
|
|
||||||
# Use a simple text file to save the state of the last mode selected
|
# Use a simple text file to save the state of the last mode selected
|
||||||
@@ -19,7 +19,8 @@ MODE_ID_BBS_CLIENT2="bbs-client2"
|
|||||||
MODE_ID_BBS_SERVER="bbs-server"
|
MODE_ID_BBS_SERVER="bbs-server"
|
||||||
MODE_ID_CHAT_CLIENT="chat-chattervox"
|
MODE_ID_CHAT_CLIENT="chat-chattervox"
|
||||||
MODE_ID_PACKET_DIGIPEATER="packet-digipeater"
|
MODE_ID_PACKET_DIGIPEATER="packet-digipeater"
|
||||||
MODE_ID_RETICULUM_PACKET="reticulum-packet"
|
MODE_ID_RETICULUM_MESHCHAT="reticulum-meshchat"
|
||||||
|
MODE_ID_RETICULUM_NOMADNET="reticulum-nomadnet"
|
||||||
MODE_ID_WINLINK_ARDOP="winlink-ardop"
|
MODE_ID_WINLINK_ARDOP="winlink-ardop"
|
||||||
MODE_ID_WINLINK_PACKET="winlink-packet"
|
MODE_ID_WINLINK_PACKET="winlink-packet"
|
||||||
MODE_ID_WINLINK_VARA_HF="winlink-vara-hf"
|
MODE_ID_WINLINK_VARA_HF="winlink-vara-hf"
|
||||||
@@ -179,7 +180,8 @@ if [ -e "${HOME}/.wine32/drive_c/VARA/VARA.exe" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
options+=("${MODE_ID_TIME_WWV}" "Sync clock to WWV")
|
options+=("${MODE_ID_TIME_WWV}" "Sync clock to WWV")
|
||||||
options+=("${MODE_ID_RETICULUM_PACKET}" "Reticulum over AX.25 Packet")
|
options+=("${MODE_ID_RETICULUM_MESHCHAT}" "Reticulum MeshChat over AX.25 Packet")
|
||||||
|
options+=("${MODE_ID_RETICULUM_NOMADNET}" "Reticulum NomadNet over AX.25 Packet")
|
||||||
|
|
||||||
# Prompt user for option and save exit status
|
# Prompt user for option and save exit status
|
||||||
SELECTED_MODE=$(dialog --clear --menu "Select a mode:" 18 65 10 "${options[@]}" 3>&1 1>&2 2>&3)
|
SELECTED_MODE=$(dialog --clear --menu "Select a mode:" 18 65 10 "${options[@]}" 3>&1 1>&2 2>&3)
|
||||||
@@ -298,7 +300,22 @@ if [ $exit_status -eq 0 ]; then
|
|||||||
wwv_mode
|
wwv_mode
|
||||||
sudo /opt/emcomm-tools/sbin/wrapper-et-wwv.sh
|
sudo /opt/emcomm-tools/sbin/wrapper-et-wwv.sh
|
||||||
;;
|
;;
|
||||||
${MODE_ID_RETICULUM_PACKET})
|
${MODE_ID_RETICULUM_MESHCHAT})
|
||||||
|
select_reticulum_mode
|
||||||
|
et-log "Using ${TERM_MODE} as the modem."
|
||||||
|
|
||||||
|
case "${TERM_MODE}" in
|
||||||
|
"1200")
|
||||||
|
start_and_wait_for_service et-service-reticulum-1200
|
||||||
|
;;
|
||||||
|
"300")
|
||||||
|
start_and_wait_for_service et-service-reticulum-300
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
et-meshchat
|
||||||
|
;;
|
||||||
|
${MODE_ID_RETICULUM_NOMADNET})
|
||||||
select_reticulum_mode
|
select_reticulum_mode
|
||||||
et-log "Using ${TERM_MODE} as the modem."
|
et-log "Using ${TERM_MODE} as the modem."
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
# always-on. This directive is optional and can be removed
|
# always-on. This directive is optional and can be removed
|
||||||
# for brevity.
|
# for brevity.
|
||||||
|
|
||||||
enable_transport = False
|
enable_transport = True
|
||||||
|
|
||||||
|
|
||||||
# By default, the first program to launch the Reticulum
|
# By default, the first program to launch the Reticulum
|
||||||
@@ -115,7 +115,7 @@
|
|||||||
|
|
||||||
[[Default Interface]]
|
[[Default Interface]]
|
||||||
type = AutoInterface
|
type = AutoInterface
|
||||||
enabled = No
|
enabled = Yes
|
||||||
|
|
||||||
[[Packet Radio AX25 KISS]]
|
[[Packet Radio AX25 KISS]]
|
||||||
type = AX25KISSInterface
|
type = AX25KISSInterface
|
||||||
|
|||||||
Executable
+42
@@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Author : Gaston Gonzalez
|
||||||
|
# Date : 13 May 2026
|
||||||
|
# Purpose : Install MeshChat for Reticulum
|
||||||
|
set -e
|
||||||
|
trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG
|
||||||
|
trap 'et-log "\"${last_command}\" command failed with exit code $?."' ERR
|
||||||
|
|
||||||
|
. ./env.sh
|
||||||
|
. ../overlay/opt/emcomm-tools/bin/et-common
|
||||||
|
|
||||||
|
APP=ReticulumMeshChat
|
||||||
|
VERSION=2.3.0
|
||||||
|
INSTALL_DIR="/opt/${APP}-${VERSION}"
|
||||||
|
INSTALL_BIN_DIR="${INSTALL_DIR}/bin"
|
||||||
|
LINK_PATH="/opt/${APP}"
|
||||||
|
|
||||||
|
DOWNLOAD_FILE="${APP}-v${VERSION}-linux.AppImage"
|
||||||
|
URL="https://github.com/liamcottle/reticulum-meshchat/releases/download/v${VERSION}/${DOWNLOAD_FILE}"
|
||||||
|
|
||||||
|
et-log "Installing ${APP} ${VERSION}..."
|
||||||
|
|
||||||
|
if [[ ! -e ${DOWNLOAD_FILE} ]]; then
|
||||||
|
download_with_retries ${URL} ${DOWNLOAD_FILE}
|
||||||
|
fi
|
||||||
|
|
||||||
|
chmod -v 755 ${DOWNLOAD_FILE}
|
||||||
|
|
||||||
|
[[ ! -e "${INSTALL_BIN_DIR}" ]] && mkdir -v -p "${INSTALL_BIN_DIR}"
|
||||||
|
|
||||||
|
mv ${DOWNLOAD_FILE} ${INSTALL_BIN_DIR}
|
||||||
|
|
||||||
|
ET_WRAPPER_SCRIPT="${ET_HOME}/bin/et-meshchat"
|
||||||
|
|
||||||
|
et-log "Creating wrapper script: ${ET_WRAPPER_SCRIPT}"
|
||||||
|
cat <<EOF > ${ET_WRAPPER_SCRIPT}
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
${INSTALL_BIN_DIR}/${DOWNLOAD_FILE}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod -v 755 ${ET_WRAPPER_SCRIPT}
|
||||||
+3
-2
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Author : Gaston Gonzalez
|
# Author : Gaston Gonzalez
|
||||||
# Date : 16 March 2024
|
# Date : 16 March 2024
|
||||||
# Updated : 11 May 2026
|
# Updated : 13 May 2026
|
||||||
# Purpose : Main installer for EmComm Tools Community (ETC)
|
# Purpose : Main installer for EmComm Tools Community (ETC)
|
||||||
|
|
||||||
. ./env.sh
|
. ./env.sh
|
||||||
@@ -119,8 +119,9 @@ exitIfNotRoot
|
|||||||
# Security Patches
|
# Security Patches
|
||||||
./patch-copy-fail.sh
|
./patch-copy-fail.sh
|
||||||
|
|
||||||
# Install Reticulum and NomadNet
|
# Install Reticulum and related applications (NomadNet, MeshChat)
|
||||||
./install-reticulum.sh
|
./install-reticulum.sh
|
||||||
|
./install-meshchat.sh
|
||||||
|
|
||||||
# Debrand Ubuntu
|
# Debrand Ubuntu
|
||||||
./debrand.sh
|
./debrand.sh
|
||||||
|
|||||||
Reference in New Issue
Block a user