Installation - Source - Linux

1. Prerequisites (Debian only)

Add current user to sudoers list first:

su root
nano /etc/sudoers

Within the section "# User privilege specification" you should already see an entry for the user root. Add the line with your specific username accordingly:

# User privilege specification
root    ALL=(ALL:ALL) ALL
<username>  ALL=(ALL:ALL) ALL

Save file and

exit

2. Permissions

Ubuntu

Add user to dialout group, to allow access serial devices without root:

sudo adduser $USER dialout
logout / login

3. Installation

Option 1: Fully manual installation (recommended for developers)

Note: This method makes system-wide changes for Python and NodeJS outside of Ubuntu's package management system.

Debian/Ubuntu

sudo apt install git build-essential cmake npm python3 portaudio19-dev python3-pyaudio python3-pip python3-colorama python3-venv
sudo npm install -g n
sudo n stable
git clone https://github.com/DJ2LS/FreeDATA.git
cd FreeDATA
 ./tools/create_python_env.sh
cd ~/FreeDATA/gui/
npm i

For enabling the virtual python environment run

cd ~/FreeDATA
. .venv/bin/activate

Option 2: Scripted installation

under revision

sudo apt install git build-essential cmake npm libfuse2
sudo apt install portaudio19-dev python3-pyaudio python3-pip python3-colorama python3-venv
git clone https://github.com/DJ2LS/FreeDATA.git
cd FreeDATA
 ./tools/create_python_env.sh

For enabling the virtual python environment run

. .venv/bin/activate

4. Install Hamlib

Older versions of Ubuntu, like Ubuntu 20.04 LTS or SUSE, sometimes have outdated versions of Hamlib in their repositories - please do not use these and ensure your hamlib has a version >= 4.0.

sudo apt-get install libhamlib-dev