diff --git a/.github/workflows/build_nsis_bundle.yml b/.github/workflows/build_nsis_bundle.yml index 408a13a3..e13ead09 100644 --- a/.github/workflows/build_nsis_bundle.yml +++ b/.github/workflows/build_nsis_bundle.yml @@ -95,6 +95,6 @@ jobs: uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/v') with: - draft: true + draft: false files: ./FreeDATA-Installer.exe tag_name: ${{ github.ref_name }} diff --git a/.github/workflows/build_server.yml b/.github/workflows/build_server.yml index 2ef4ae73..c578b742 100644 --- a/.github/workflows/build_server.yml +++ b/.github/workflows/build_server.yml @@ -127,7 +127,7 @@ jobs: uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/v') with: - draft: true + draft: false files: ./freedata_server/server.dist/${{ matrix.zip_name }}.zip tag_name: ${{ github.ref_name }} diff --git a/.github/workflows/pip_package.yml b/.github/workflows/pip_package.yml index bb01886e..71c38f19 100644 --- a/.github/workflows/pip_package.yml +++ b/.github/workflows/pip_package.yml @@ -38,7 +38,7 @@ jobs: python setup.py sdist bdist_wheel - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@v1.12.3 + uses: pypa/gh-action-pypi-publish@v1.12.4 if: startsWith(github.ref, 'refs/tags/v') with: user: __token__ diff --git a/freedata_gui/src/components/grid/grid_stations_map.vue b/freedata_gui/src/components/grid/grid_stations_map.vue index a4d6eb36..932362c1 100644 --- a/freedata_gui/src/components/grid/grid_stations_map.vue +++ b/freedata_gui/src/components/grid/grid_stations_map.vue @@ -26,7 +26,7 @@ import * as d3 from 'd3'; import { feature } from 'topojson-client'; import { locatorToLatLng, distance } from 'qth-locator'; import { setActivePinia } from 'pinia'; -import pinia from '../../store/index'; // Import your Pinia instance +import pinia from '../../store/index'; import { useStateStore } from '../../store/stateStore.js'; // Activate Pinia @@ -199,14 +199,27 @@ const updatePinsAndLines = (g) => { const heardStations = toRaw(state.heard_stations); // Ensure it's the raw data const points = []; + // Prepare points for heard stations heardStations.forEach(item => { - if (item.gridsquare && item.gridsquare.trim() !== '' && item.origin) { - const [lat, lng] = locatorToLatLng(item.gridsquare); - points.push({ lat, lon: lng, origin: item.origin, gridsquare: item.gridsquare }); + if ( + item.gridsquare && + item.gridsquare.trim() !== '' && + item.gridsquare.trim() !== '------' && + item.origin + ) { + try { + const [lat, lng] = locatorToLatLng(item.gridsquare); + if (lat != null && lng != null) { + points.push({ lat, lon: lng, origin: item.origin, gridsquare: item.gridsquare }); + } + } catch (error) { + console.error(`Error converting gridsquare ${item.gridsquare}:`, error); + } } }); + // Add your own station's pin if mygrid is defined let mygrid = settings.remote.STATION.mygrid; if (mygrid) { diff --git a/requirements.txt b/requirements.txt index 411d6dd3..32fe5376 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,7 +9,7 @@ asyncio chardet colorama ordered-set -nuitka<=2.5.9 +nuitka<=2.6.2 pyinstaller websocket-client fastapi[standard] diff --git a/tools/Linux/README.txt b/tools/Linux/README.txt index f40e287c..39f6e65c 100644 --- a/tools/Linux/README.txt +++ b/tools/Linux/README.txt @@ -1,5 +1,9 @@ Suggested instructions for using the install and run scripts. +Before running the install script, ensure that your account is in the +"dialout" group, and that your account has "sudo" privileges. Refer to +your particular OS variant for instructions on how to do this. + To install the FreeDATA software: Open a terminal shell and run the following commands: diff --git a/tools/Linux/install-freedata-linux.sh b/tools/Linux/install-freedata-linux.sh index c084b552..6f9c068d 100755 --- a/tools/Linux/install-freedata-linux.sh +++ b/tools/Linux/install-freedata-linux.sh @@ -3,7 +3,8 @@ # Simple script to install FreeDATA in Linux # Dj Merrill - N1JOV # -# Currently supports Debian [11, 12], Ubuntu [22.04, 24.04], Fedora [40] +# Currently tested in Debian [11, 12], Ubuntu [22.04, 24.04], Fedora [40,41] +# Untested additions for Linux Mint [21.3] # # Run this script by typing in the terminal (without the quotes): # "bash install-freedata-linux.sh" to install from the main branch @@ -19,6 +20,16 @@ # # # Changelog: +# 2.3: 01 Feb 2025 (deej) +# Add untested additions for Linux Mint 21.3 +# +# 2.2: 01 Feb 2025 (deej) +# Check if account is in the dialout group +# Add a warning about account needing to be in sudoers +# +# 2.1: 01 Feb 2025 (deej) +# Add support for Fedora 41 +# # 2.0: 04 Oct 2024 (deej) # Add support for Fedora 40 # @@ -59,6 +70,15 @@ # 1.0: Initial release 25 Apr 2024 supporting Debian 12 # +# Account needs to be in the dialout group for some radios to work +checkdial=`grep -i $USER /etc/group | grep -i dialout` + +if [ -z "$checkdial" ]; +then + echo "Please add your account" $USER "to the dialout group in /etc/group and then re-run this script." + exit 1; +fi + case $1 in "" | "main") args="main" @@ -83,6 +103,11 @@ echo "Running on" $osname "version" $osversion echo "*************************************************************************" echo "Installing software prerequisites" echo "If prompted, enter your password to run the sudo command" +echo "" +echo "If the sudo command gives an error saying Sorry, or not in sudoers file," +echo "or something to that effect, check to make sure your account has sudo" +echo "privileges. This generally means a listing in /etc/sudoers or in a file" +echo "in the directory /etc/sudoers.d" echo "*************************************************************************" case $osname in @@ -104,9 +129,9 @@ case $osname in ;; - "Ubuntu") + "Ubuntu" | "Linux Mint") case $osversion in - "22.04" | "24.04") + "21.3" | "22.04" | "24.04") sudo apt install --upgrade -y fonts-noto-color-emoji git build-essential cmake python3 portaudio19-dev python3-pyaudio python3-pip python3-colorama python3-venv wget ;; @@ -121,7 +146,7 @@ case $osname in ;; "Fedora Linux") case $osversion in - "VERSION_ID=40") + "VERSION_ID=40" | "VERSION_ID=41") sudo dnf install -y git cmake make automake gcc gcc-c++ kernel-devel wget portaudio-devel python3-pyaudio python3-pip python3-colorama python3-virtualenv google-noto-emoji-fonts python3-devel ;; esac