From 574f0db6f5d603fa3d9a40913b7504e9b8efd75b Mon Sep 17 00:00:00 2001 From: Eugene Crosser Date: Wed, 27 Apr 2022 23:18:19 +0200 Subject: [PATCH] debianize --- debian/changelog | 6 ++++++ debian/control | 19 +++++++++++++++++++ debian/copyright | 1 + debian/gps303.collector.service | 17 +++++++++++++++++ debian/gps303.conf | 31 +++++++++++++++++++++++++++++++ debian/gps303.default | 5 +++++ debian/gps303.lookaside.service | 17 +++++++++++++++++ debian/gps303.storage.service | 17 +++++++++++++++++ debian/gps303.target | 9 +++++++++ debian/gps303.termconfig.service | 17 +++++++++++++++++ debian/install | 1 + debian/postinst | 7 +++++++ debian/py3dist-overrides | 1 + debian/rules | 16 ++++++++++++++++ debian/source/format | 1 + gps303/__init__.py | 0 setup.py | 24 ++++++++++++++++++++++++ 17 files changed, 189 insertions(+) create mode 100644 debian/changelog create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/gps303.collector.service create mode 100644 debian/gps303.conf create mode 100644 debian/gps303.default create mode 100644 debian/gps303.lookaside.service create mode 100644 debian/gps303.storage.service create mode 100644 debian/gps303.target create mode 100644 debian/gps303.termconfig.service create mode 100644 debian/install create mode 100644 debian/postinst create mode 100644 debian/py3dist-overrides create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 gps303/__init__.py create mode 100644 setup.py diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..618501e --- /dev/null +++ b/debian/changelog @@ -0,0 +1,6 @@ +gps303 (0.01) experimental; urgency=low + + [ Eugene Crosser ] + * Initial release + + -- Eugene Crosser Wed, 27 Apr 2022 23:12:11 +0200 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..537b220 --- /dev/null +++ b/debian/control @@ -0,0 +1,19 @@ +Source: gps303 +Maintainer: Eugene Crosser +Section: misc +Priority: optional +Standards-Version: 4.5.1 +X-Python-Version: >= 3.6 +Homepage: http://www.average.org/gps303 +Build-Depends: debhelper-compat (= 12), + dh-python, + python3-all, + python3-setuptools, + python3-zmq, + +Package: python3-gps303 +Architecture: all +Section: python +Depends: ${misc:Depends}, + ${python3:Depends} +Description: Suite of modules to collect reports from xz303 GPS trackers diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..7c3c203 --- /dev/null +++ b/debian/copyright @@ -0,0 +1 @@ +Licese: MIT diff --git a/debian/gps303.collector.service b/debian/gps303.collector.service new file mode 100644 index 0000000..0f70acd --- /dev/null +++ b/debian/gps303.collector.service @@ -0,0 +1,17 @@ +[Unit] +Description=GPS303 Collector Service +PartOf=gps303.target + +[Service] +Type=simple +EnvironmentFile=-/etc/default/gps303 +ExecStart=python3 -m gps303.collector $OPTIONS +KillSignal=INT +Restart=on-failure +StandardOutput=journal +StandardError=inherit +User=gps303 +Group=gps303 + +[Install] +WantedBy=gps303.target diff --git a/debian/gps303.conf b/debian/gps303.conf new file mode 100644 index 0000000..10889eb --- /dev/null +++ b/debian/gps303.conf @@ -0,0 +1,31 @@ +[collector] +port = 4303 +publishurl = ipc:///var/lib/gps303/collected +listenurl = ipc:///var/lib/gps303/responses + +[storage] +dbfn = /var/lib/gps303/gps303.sqlite + +[opencellid] +dbfn = /var/lib/opencellid/opencellid.sqlite + +[termconfig] +statusIntervalMinutes = 25 +uploadIntervalSeconds = 0x0300 +binarySwitch = 0b00110001 +alarms = + 0 + 0 + 0 +dndTimeSwitch = 0 +dndTimes = + 0 + 0 + 0 +gpsTimeSwitch = 0 +gpsTimeStart = 0 +gpsTimeStop = 0 +phoneNumbers = + "" + "" + "" diff --git a/debian/gps303.default b/debian/gps303.default new file mode 100644 index 0000000..ed0c0cc --- /dev/null +++ b/debian/gps303.default @@ -0,0 +1,5 @@ +# Environment for gps303 suite +# Common command-line option for all daemons +#OPTIONS="-c /etc/gps303.conf -d" +# Which lookaside service to use: opencellid or googleloc +LOOKASIDE=opencellid diff --git a/debian/gps303.lookaside.service b/debian/gps303.lookaside.service new file mode 100644 index 0000000..058e048 --- /dev/null +++ b/debian/gps303.lookaside.service @@ -0,0 +1,17 @@ +[Unit] +Description=GPS303 Lookaside Service +PartOf=gps303.target + +[Service] +Type=simple +EnvironmentFile=-/etc/default/gps303 +ExecStart=python3 -m gps303.lookaside $OPTIONS +KillSignal=INT +Restart=on-failure +StandardOutput=journal +StandardError=inherit +User=gps303 +Group=gps303 + +[Install] +WantedBy=gps303.target diff --git a/debian/gps303.storage.service b/debian/gps303.storage.service new file mode 100644 index 0000000..7266b14 --- /dev/null +++ b/debian/gps303.storage.service @@ -0,0 +1,17 @@ +[Unit] +Description=GPS303 Storage Service +PartOf=gps303.target + +[Service] +Type=simple +EnvironmentFile=-/etc/default/gps303 +ExecStart=python3 -m gps303.storage $OPTIONS +KillSignal=INT +Restart=on-failure +StandardOutput=journal +StandardError=inherit +User=gps303 +Group=gps303 + +[Install] +WantedBy=gps303.target diff --git a/debian/gps303.target b/debian/gps303.target new file mode 100644 index 0000000..b6750a8 --- /dev/null +++ b/debian/gps303.target @@ -0,0 +1,9 @@ +[Unit] +Description=GPS303 support suite +Wants=gps303.collector.service \ + gps303.storage.service \ + gps303.termconfig.service \ + gps303.lookaside.service + +[Install] +WantedBy=multi-user.target diff --git a/debian/gps303.termconfig.service b/debian/gps303.termconfig.service new file mode 100644 index 0000000..0e75f89 --- /dev/null +++ b/debian/gps303.termconfig.service @@ -0,0 +1,17 @@ +[Unit] +Description=GPS303 Termconfig Service +PartOf=gps303.target + +[Service] +Type=simple +EnvironmentFile=-/etc/default/gps303 +ExecStart=python3 -m gps303.termconfig $OPTIONS +KillSignal=INT +Restart=on-failure +StandardOutput=journal +StandardError=inherit +User=gps303 +Group=gps303 + +[Install] +WantedBy=gps303.target diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..b9ae54a --- /dev/null +++ b/debian/install @@ -0,0 +1 @@ +debian/gps303.conf etc/ diff --git a/debian/postinst b/debian/postinst new file mode 100644 index 0000000..59483bd --- /dev/null +++ b/debian/postinst @@ -0,0 +1,7 @@ +#!/bin/sh + +adduser --system --group --home /var/lib/gps303 gps303 + +#DEBHELPER# + +exit 0 diff --git a/debian/py3dist-overrides b/debian/py3dist-overrides new file mode 100644 index 0000000..a6d3a15 --- /dev/null +++ b/debian/py3dist-overrides @@ -0,0 +1 @@ +zeromq python3-zmq diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..0c56314 --- /dev/null +++ b/debian/rules @@ -0,0 +1,16 @@ +#!/usr/bin/make -f + +export PYBUILD_NAME=gps303 +#export PYBUILD_BEFORE_TEST=cp -r mypystubs {build_dir} +#export PYBUILD_AFTER_TEST=rm -rf {build_dir}/mypystubs + +%: + dh $@ --with python3 --buildsystem pybuild + + +override_dh_installsystemd: + dh_installsystemd --name=gps303 + dh_installsystemd --name=gps303.collector + dh_installsystemd --name=gps303.storage + dh_installsystemd --name=gps303.lookaside + dh_installsystemd --name=gps303.termconfig diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..89ae9db --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native) diff --git a/gps303/__init__.py b/gps303/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..c3f2736 --- /dev/null +++ b/setup.py @@ -0,0 +1,24 @@ +from setuptools import setup +from re import findall + +with open("debian/changelog", "r") as clog: + _, version, _ = findall( + r"(?P.*) \((?P.*)\) (?P.*); .*", + clog.readline().strip(), + )[0] + +setup( + name="gps303", + version=version, + description="Suite of daemons to collect reports from xz303 GPS trackers", + url="http://www.average.org/gps303/", + author="Eugene Crosser", + author_email="crosser@average.org", + install_requires=["zeromq"], + license="MIT", + packages=[ + "gps303", + ], + scripts=["scripts/gps303"], + long_description=open("README.md").read(), +) -- 2.39.2