Tiny UDP GPS data gathering server https://www.lumi.pw

Mike Tatarko 4664270cd1 Fix ubsan in Makefile 9 months ago
debian 024f2faa71 Release 1.0.4 1 year ago
etc 024f2faa71 Release 1.0.4 1 year ago
man 024f2faa71 Release 1.0.4 1 year ago
src 024f2faa71 Release 1.0.4 1 year ago
COPYING 024f2faa71 Release 1.0.4 1 year ago
Makefile 4664270cd1 Fix ubsan in Makefile 9 months ago
PKGBUILD.proto aed19f1efa Fix support for archlinux 1 year ago
README.md f00b4b7080 Fix README.md 1 year ago
gpsdgs.spec 2c04fd870d Fix DESTDIR and PREFIX variable 1 year ago

README.md

Tiny UDP GPS data gathering server

  • This software is used in conjunction with the client, or any other, which may transmits the information over UDP.
  • The purpose of this software is the ability to create your personal server to track own devices, and saving location data without using a third-party servers for storing private information on the whereabouts.

Contact

Michael Tatarko

License

This software is distributed under the GNU GENERAL PUBLIC LICENSE Version 3.

Install

  • Read https://repo.lumi.pw or:
  • Install git, gcc, postgresql;
  • Install postgresql, glibc dev-packets;
  • Start the postgresql with trust access from 127.0.0.1.

For RHEL7 users:

Hmm... Remove git, gcc, and postgresql, glibc dev-packets;

$ sudo rpm --import https://repo.lumi.pw/pub/gpgkey-0CE205B4.txt
$ sudo dnf install https://repo.lumi.pw/pub/CentOS/7/x86_64/Packages/lumi-1.0.0-2.el7.centos.x86_64.rpm

install gpsdgs.

For rpm-based users:

$ sudo dnf install libpq-devel gcc make rpm-build
$ git clone --branch=1.0.x https://gogs.lumi.pw/mike/gpsdgs.git
$ cd gpsdgs
$ sudo make rpm

install gpsdgs-$(version).$(distribute).$(arch).rpm from rpmbuild/RPMS/$(arch) directory.

For deb-based users:

$ sudo apt install git build-essential debhelper libpq5 libpq-dev
$ git clone --branch=1.0.x https://gogs.lumi.pw/mike/gpsdgs.git
$ cd gpsdgs
$ make deb

install gpsdgs$(version)-1$(arch).deb;

For gentoo users:

Get ebuild from https://gogs.lumi.pw/mike/portage/src/master/net-misc/gpsdgs or:

# cat > /etc/portage/repos.conf/lumi.conf << EOF
[lumi]
location = /usr/local/share/lumi-overlay/
sync-type = git
sync-uri = https://gogs.lumi.pw/mike/portage.git
auto-sync = Yes
EOF
# eix-sync
# emerge -b gpsdgs

For arch-based users:

$ sudo pacman -S git fakeroot make gcc postgresql-libs
$ git clone --branch=1.0.x https://gogs.lumi.pw/mike/gpsdgs.git
$ cd gpsdgs
$ make pkg

install gpsdgs-$(version)-1-$(arch).pkg.tar.xz;

How to turn your operating system in Slackware:

$ git clone --branch=1.0.x https://gogs.lumi.pw/mike/gpsdgs.git
$ cd gpsdgs
$ make
$ sudo make DESTDIR=/ PREFIX=/usr install

Postinstall phase:

Do this if there are no postinstall scripts in the package, or the script fails.

$ cd etc
$ sudo sh postinstall.sh

Usage:

  • Run gpsdgs as root one time and then edit /etc/gpsdgs.conf;
  • Change passwords and access to the postgresql as you need.

Testing

  • Addition testing user with uid=0 into users table: INSERT INTO users VALUES (0,' ',' ',' ',' ',1,0);
  • Use gpsdgs-bench util for testing: gpsdgs-bench <domain or ip> <udp port> [packet number (1-1000, default=50)]
  • Clear table before next test: DELETE FROM data WHERE uid='0';
  • And then delete garbage from tables users and data: DELETE FROM users WHERE uid='0';DELETE FROM data WHERE uid='0';