Commit Graph

587 Commits

Author SHA1 Message Date
Hemna 83370689b9 Remove twine from dev-requirements
twine is only used for building a distribution and uploading
to pypi.  Unfortunately it has a dependency that pulls in
cryptography which is painful on rpi systems as it requires
the latest version of rustc and cargo.
2022-12-05 16:13:39 -05:00
Hemna e4f93a2ab4 Update to latest Makefile.venv
This patch updates the Makefile.venv to the latest upstream.
2022-12-02 17:08:10 -05:00
Walter A. Boring IV acecba27e8
Merge pull request #101 from craigerl/webchat_mobile
Add support for mobile browsers for webchat
2022-12-02 17:06:17 -05:00
Hemna 51b80cd4ea Refactored threads a bit
This patch refactors the rx threads a bit to reuse some code
responsible for processing acks when packets are received.

This also eliminates a custom thread in the webchat command for
processing received packets now that there is common code in the base
classes.
2022-12-02 16:26:48 -05:00
Hemna 480094b0d4 Mark packets as acked in MsgTracker
This patch updates webchat to track the msgs recieved as tracked
and acked, so the TX thread can stop trying to send.
2022-12-02 14:58:32 -05:00
Hemna 726c8f4f2f remove dev setting for template 2022-12-02 14:20:52 -05:00
Hemna ee96108324 Add GPS beacon to mobile page
This patch adds the GPS beacon button to the mobile layout.
2022-11-30 15:17:28 -05:00
Hemna 5067f745ca Allow werkzeug for admin interface.
This patch enables werkzeug for socketio for the admin interface
2022-11-30 14:31:44 -05:00
Hemna 98fe9daac5 Allow werkzeug for admin interface.
This patch enables werkzeug for socketio for the admin interface
2022-11-30 14:28:31 -05:00
Hemna f9e7195e25 Add support for mobile browsers for webchat
This patch adds initial support for changing the UI for webchat
based if the browser is on a mobile device.
2022-11-30 14:14:51 -05:00
Hemna 44696fbc56 Ignore callsign case while processing packets
This patch fixes an issue where aprsd was deciding if it was
supposed to process a packet destined for itself or not.  It was
making a case sensitive comparison.  This patch makes that comparison
case insensitive for the callsign itself.
2022-11-30 13:57:25 -05:00
Walter A. Boring IV 78329f79f4
Merge pull request #100 from craigerl/webchat_gps
Send GPS Beacon from webchat interface
2022-11-30 11:25:34 -05:00
Hemna 5add0f958d remove linux/arm/v7 for official builds for now 2022-11-26 18:34:32 -05:00
Hemna d40927d1c3 added workflow for building specific version 2022-11-26 18:28:14 -05:00
Hemna d5e56b553e Allow passing in version to the Dockerfile
This patch allows setting the version from pypi.org to use
when building the container.

Currently defaults to 2.5.9.
2022-11-26 18:23:07 -05:00
Hemna 1a1d00242b Send GPS Beacon from webchat interface
This patchset allow getting the GPS coordinates from the browser's
geolocation API (which can be denied by user), then send's the GPS
coordinates to aprsd via socketio and then aprsd sends a beacon.

This allows the APRS network to know the location of the person running
the webchat app via browser so packets can get routed back to it.
2022-11-25 13:25:09 -05:00
Walter A. Boring IV 19f804bf68
Merge pull request #99 from craigerl/remove-email-validation
Remove email validation
2022-11-25 11:38:13 -05:00
Hemna 4111d16aaf specify Dockerfile-dev 2022-11-25 11:21:10 -05:00
Hemna d1a0a988f2 Fixed build.sh
This patch fixes passing the branch to the build script
2022-11-25 10:05:16 -05:00
Hemna d9b39734e6 Build on the source not released aprsd 2022-11-25 10:03:34 -05:00
Hemna d4bf0f1e3c Remove email validation
The package/library being used for email validation is basically
defunct now.
2022-11-25 09:29:41 -05:00
Hemna 117f81f55f Add support for building linux/arm/v7
This patch adds support for the github workflow for building
the raspi architecture
2022-11-24 09:44:32 -05:00
Hemna b41e4a9ef3 Remove python 3.7 from docker build github
This patch removes the testing of python 3.7 during the
github action workflow for building the docker image
2022-11-23 15:41:27 -05:00
Walter A. Boring IV e66dc344b8
Merge pull request #91 from craigerl/small_refactor
Small refactor
2022-11-23 13:33:23 -05:00
Hemna 5acddbd466 Fixed failing unit tests
This patch re-adds in the pytz lib for the generic time plugins.
2022-11-23 13:28:38 -05:00
Hemna 17e784629e change github workflow
remove python 3.7
2022-11-23 13:06:33 -05:00
Hemna 528bdb99e7 Removed TimeOpenCageDataPlugin
This patch removes the TimeOpenCageDataPlugin as it's been superceded
by the aprsd-timeopencage-plugin
2022-11-23 13:02:46 -05:00
Hemna fc1ca52593 Dump config with aprsd dev test-plugin
This patch adds the dumping of the config read for the
aprsd dev test-plugin command
2022-11-23 13:02:46 -05:00
Hemna 075078b520 Updated requirements 2022-11-23 13:02:44 -05:00
Hemna 7d970cbe70 Got webchat working with KISS tcp
This patch reworks the KISS client to get rid of
aioax25 as it was too difficult to work with due to
heavy use of asyncio.

Switched to the kiss3 pypi library.
2022-11-23 13:01:43 -05:00
Hemna d717a22717 Added click auto_envvar_prefix
This allows setting environment variables that are
prefixed with APRSD_
2022-11-23 13:01:06 -05:00
Hemna 9b0c626b59 Update aprsd thread base class to use queue
This patch updates the main aprsd threads class to use
a shared queue to notify all aprsd thread classes they need
to exit.  This ensures any closing down of sockets, etc happens from
inside the context of the thread itself, not the MainThread that
calls stop.
2022-11-23 13:01:06 -05:00
Hemna 967959e7b3 Update packets to use wrapt
This patch updates the aprsd/packets.py to use wrapt for it's method
lock synchornization.
2022-11-23 13:01:06 -05:00
Hemna e5f60b5ce1 Add remving existing requirements
This patch updates the Makefile to do an rm on the requirements.txt
when updating the requirements files.
2022-11-23 13:01:06 -05:00
Hemna 2ce50d8861 Try sending raw APRSFrames to aioax25
This seems to work sending out, but still getting
third-party dropped packets as response from the local repeater.
2022-11-23 13:01:06 -05:00
Hemna ad79ed1261 Use new aprsd.callsign as the main callsign
This patch changes how aprsd identifies itself when connected to
any client, which is not relying on the login for each client.
There are 3 supported clients currently
aprsis,
tcpkiss
serialkiss.

Each client has their own potential login/callsign to connect
to the remote.  This patch tells aprsd to use the new config option
aprsd.callsign as a means to identify itself.  It will accept
packets as <aprsd.callsign> and reply as <aprsd.callsign> regardless
of which client object is being used to connect to the remote.

Note: this breaks backwards compatibility.  This patch now requires
the new config option
aprsd:
  callsign: <callsign>
2022-11-23 13:01:01 -05:00
Hemna 5f28788180 Fixed access to threads refactor 2022-11-23 13:00:37 -05:00
Hemna 585d55f10d Added webchat command
This patch adds the new aprsd webchat command which shows
a new webpage that allows you to aprsd chat with multiple
callsigns
2022-11-23 13:00:36 -05:00
Hemna 1ccb2f7695 Moved log.py to logging
Also renamed logging/logging.py to logging/rich.py
2022-11-23 13:00:36 -05:00
Hemna a62843920a Moved trace.py to utils
This patch moves trace.py to the utils directory
2022-11-23 13:00:36 -05:00
Hemna 29b84b453b Fixed pep8 errors 2022-11-23 13:00:36 -05:00
Hemna 347a6d69f7 Refactored threads.py
This patch creates a threads directory and separates out
the contents of threads.py into separate files in the
threads directory to make it easier to find and maintain.
2022-11-23 13:00:36 -05:00
Hemna bed060f1c5 Refactor utils to directory
This patch moves the utils.py to utils/__init__.py
and fuzzyclock.py to utils
and separates the ring_buffer to it's own file in utils
2022-11-23 13:00:36 -05:00
Hemna ab6583666f remove arm build for now 2022-11-04 14:06:03 -04:00
Hemna 3580425ca3 Added rustc and cargo to Dockerfile
This is an attempt to fix the failing docker image build for
linux/arm/v7
2022-11-04 11:34:27 -04:00
Hemna 358aa59042 remove linux/arm/v6 from docker platform build 2022-11-04 10:41:25 -04:00
Hemna 9671dacb1c Only tag master build as master 2022-11-04 10:32:22 -04:00
Hemna f9d3bc433f Remove docker build from test
This patch removes the container build from the main python.yml
github action that is only supposed to test tox results for commits
2022-11-04 10:30:34 -04:00
Walter A. Boring IV 1383352e75
create master-build.yml
This patch adds the tox and docker image build for the latest container image on every push to master branch
2022-11-04 10:27:43 -04:00
Hemna b50f343440 Added container build action 2022-11-04 09:04:14 -04:00