Suunto makes some solid sport-watches, problem is that the management software is comprised of a closed source synchronization program (compatible with Windows and OSX only) and some cancerous cloud web interface accessible directly from their website.
Even putting aside my personal aversion for closed source software, it is clear that this approach is retarded because an internet connection is required to be able to download any kind of data from the watch.
What if I don’t have any signal? What if I don’t want to upload my data to Suunto’s servers?
Luckily some good lads reverse engineered the communication protocol used by the watch to speak with the PC synchronization client, and even more, they also wrote an open source Linux compatible tool that can be used to download data from the watch.
This tool is called: Openambit
The version included in Fedora 27 repositories is not up to date and does not support the Ambit3 Run I own, luckily the github version does.

Compile Openambit from source

First of all install some libraries that are required in order to successfully compile Openambit:

$ dnf install qt5-qtbase-devel qt5-linguist systemd-devel

Clone Openambit’s official git repository:

$ git clone https://github.com/openambitproject/openambit.git

Run the commands one by one in a terminal or run the following script to automagically compile and install openambit.

openambit.sh
---
#!/bin/sh

# git repo: https://github.com/openambitproject/openambit.git
# deps: qt5-qtbase-devel qt5-linguist systemd-devel

SRC_DIR="$(pwd)/openambit"
INSTALL_DIR="/opt/openambit"
DEBUG=0
FIRST_INSTALL=0
CORE_N=17

# compile #
cd $SRC_DIR
git pull
rm -rf build && mkdir build && cd build
if [ $DEBUG -eq "1" ]
then
   cmake -DUSE_QT5=1 CMAKE_BUILD_TYPE=Debug .DEBUG_PRINT_INFO=1 ..
else
   cmake -DUSE_QT5=1 ..
fi
time make -j$CORE_N

# install #
sudo rm -rf $INSTALL_DIR && sudo mkdir $INSTALL_DIR
sudo cp -r $SRC_DIR/build/src/* $INSTALL_DIR
sudo cp -r $SRC_DIR/tools/openambit2tcx-lap.py $INSTALL_DIR
sudo chmod 755 $INSTALL_DIR/openambit2gpx.py
if [ $FIRST_INSTALL -eq "1" ]
then
   sudo ln -s $INSTALL_DIR/openambit/openambit /usr/sbin/openambit
   sudo cp $SRC_DIR/src/libambit/libambit.rules /etc/udev/rules.d/
   sudo ln -s $INSTALL_DIR/openambit2tcx-lap.py /usr/sbin/openambit2tcx-lap.py
   sudo cp $SRC_DIR/icon.png $INSTALL_DIR
fi

The first time I had the watch attached to my PC openambit was unable to connect to the device, compiling with DEBUG flags showed what the error was:

libambit INFO: ambit_device_info_new(): ignoring unknown device (VID/PID: 0b0e/0305)
libambit INFO: ambit_device_info_new(): ignoring unknown device (VID/PID: 1af3/0001)
libambit INFO: ambit_device_info_new(): ignoring unknown device (VID/PID: 2516/001a)
libambit INFO: ambit_device_info_new(): ignoring unknown device (VID/PID: 2516/001a)
libambit INFO: ambit_device_info_new(): HID  : /dev/hidraw4: 'Suunto Ambit' (serial: xxx, VID/PID: xxxx/yyyy)
libambit ERROR: ambit_device_info_new(): cannot open HID device (/dev/hidraw4): Permission denied

To solve the issue simply chmod the device file.

sudo chmod 666 /dev/hidraw4

Compile GoldenCheetah from source

GoldenCheetah is not present in Fedora 27 repositories, installing it from source is the best option.
First of all, let’s add some required packages and clone the official git repository:

$ dnf install bison flex byacc qt5-qtbase-devel qt5-qtserialport-devel qt5-qtmultimedia-devel qt5-qtwebkit-devel qt5-qtcharts-devel qt5-qtsvg-devel qt5-qtconnectivity-devel openssl-devel
$ git clone https://github.com/GoldenCheetah/GoldenCheetah.git

The following script atomatically compile and install the program:

cat goldencheetah.sh"
---
#!/bin/sh

# git repo: https://github.com/GoldenCheetah/GoldenCheetah.git
# deps: bison flex byacc qt5-qtbase-devel qt5-qtserialport-devel qt5-qtmultimedia-devel qt5-qtwebkit-devel qt5-qtcharts-devel qt5-qtsvg-devel qt5-qtconnectivity-devel openssl-devel

SRC_DIR="$(pwd)/GoldenCheetah"
INSTALL_DIR="/opt/GoldenCheetah"
FIRST_INSTALL=0
CORE_N=17

cd $SRC_DIR
cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
echo "QMAKE_CXXFLAGS += -O3
MAKE_LEX = flex
QMAKE_YACC = bison
LIBZ_LIBS = -lz
QMAKE_LRELEASE = /usr/bin/lrelease-qt5" > src/gcconfig.pri
make clean
qmake -recursive
time make -j$CORE_N

if [ $FIRST_INSTALL -eq 1 ]
then
   sudo mkdir $INSTALL_DIR
fi
sudo cp $SRC_DIR/src/GoldenCheetah $INSTALL_DIR
sudo cp $SRC_DIR/src/Resources/images/gc.png $INSTALL_DIR
if [ $FIRST_INSTALL -eq 1 ]
then
   sudo ln -s $INSTALL_DIR/GoldenCheetah /usb/sbin/GoldenCheetah
fi

Converting Openambit logfiles to TCX format

Openambit logs are XML files but they are not recognized by GoldenCheetah so it is impossible to load them.
Openambit include a Python script to convert the logs to standard GPX files, unfortunately GPX does not store any kind of addition data other than GPU coordinates.
I could not find any existing program/script capable of converting Openambit logs into TCX files, so I wrote one.
The script can be found on my github, hopefully it will also be accepted into openambit official repo: openambit2tcx-lap.py