Fitbit daemon voor OpenSuSE compileren en in gebruik nemen
– met dank aan Ralph Schell
1. Source van github downloaden en in home-directory plaatsen:
git clone https://github.com/paulburton/fitbitd
2. README gelezen, bevatte geen instructies
3. probeer een make, klaagde over ontbrekende pakketten
4. pakketten installeren:
- zypper in libusb-1_0-devel libusb-1_0-devel-32bit
- zypper in dbus-1-devel dbus-1-devel-32bit
- zypper in mxml-devel
- zypper in libindicator libindicator3-devel libindicator3-tools libindicator-devel libindicator-tools
- zypper in tinyxml
Opmerking: zypper in betekent installeren, gebruik anders rpm voor RedHat/CentOS of apt-get voor Debian/Ubuntu
- zypper si gtk3
- zypper si dbus-1
- zypper si mxml
- zypper si libindicator
- zypper si mxml
- zypper si tinyxml
- zypper si ltxml
Opmerking: zypper si betekent source-install, wrschl zijn er vergelijkbere opties voor RdeHat/CentOS of Debian/Ubuntu
5. probeer nogmaals make, klaagde over werrors
makefile aanpassen: regel met CFLAGS wijzigen:
CFLAGS += \
-Wall -O2 \
-DVERSION=\"$(VER_MAJ).$(VER_MIN)$(addprefix ~,$(VER_GIT))\" \
-I. -I/usr/local/include # -I/usr/include -Werror
zet Werror achter # en voeg toe -I/usr/local/include [voor mee te compileren mxml lib]
6. Mini-XML [mxml] downloaden van https://www.msweet.org/downloads.php?L+Z3
hier heb ik eerst de 2.8 versie gedownload, maar fitbitd wilde niet met de site syncen. Gaf ook SEGV/11 errors. Uiteindelijk versie 2.6 gedownload en met tar -zxvf mxml-v2.6.tar.gz uitgepakt.
met ./configure, dan make, dan sudo make install deze libraries geïnstalleerd
7. Daarna weer terug naar de fitbitd directory, en met (sudo) make clean, dan make, en dan sudo make install de fitbitd executable weer geïnstalleerd
8. Kopie maken van 51-fitbit.rules in /etc/udev/rules.d
9. Kopie maken van fitbitd/fitbitd.service in /etc/systemd/system en aanpassen
[Unit]
# Description=eu.paulburton.fitbitd.server
Description=run fitbit
[Service]
User=ralph
ExecStart=/usr/bin/fitbitd –no-dbus –no-daemon
Opmerking: dus uitvoeren als user ralph [dus de user waarmee je inlogt op je linux]
10. Als user ralph fitbitd – –no-dbus – –no-daemon uitgevoerd en gekeken naar de output
11. Daarna fitbitd – –exit uitgevoerd
12. Dan als root systemctl start fitbitd uitgevoerd
13. En ter controle enkele keren systemctl status fitbitd.service -l uitgevoerd
14. Afsluiten met systemctl stop fitbitd.service
15. Herstarten zoals in punt 12.
Opmerking: Fedora kent systemd, dus dit zal ook werken in Fedora, Ubuntu gebruikt daarentegen upstart.