No description
Find a file
Martin Hebnes Pedersen 8061aa4494 Bump version (v0.19.2)
2025-12-20 12:48:18 +01:00
.docker docker: Fix missing /tmp directory 2024-02-19 20:13:20 +01:00
.github/workflows GH Actions: Add govulncheck step 2025-09-18 10:05:50 +02:00
api Require Go 1.24 (and update deps) 2025-09-04 11:47:20 +02:00
app Revert "Temporarily disable prompt to defer OTA activation" 2025-09-12 09:44:16 +02:00
cfg Remove legacy // +build comments 2025-10-31 12:35:23 +01:00
cli Remove legacy // +build comments 2025-10-31 12:35:23 +01:00
debian Bump version (v0.19.2) 2025-12-20 12:48:18 +01:00
internal Bump version (v0.19.2) 2025-12-20 12:48:18 +01:00
man fix(manpage): update manpage to point users to proper paths for config, logs, and mailbox 2022-04-07 15:56:44 +02:00
osx Bump version (v0.19.2) 2025-12-20 12:48:18 +01:00
share Add systemd unit file for rigctld 2020-09-28 18:59:02 +02:00
web pre-release script 2025-12-20 12:48:18 +01:00
.editorconfig Add .editorconfig and reformat web sources 2025-05-24 08:23:03 +02:00
.gitignore Add mps command for managing message pickup stations 2025-06-13 12:48:18 +02:00
.gitmodules Switch to Go Modules for dependency management 2020-05-28 19:01:34 +02:00
CONTRIBUTING.md Add mps command for managing message pickup stations 2025-06-13 12:48:18 +02:00
docker-compose.yml Add Dockerfile and docker-compose.yml 2023-10-15 12:39:49 +02:00
Dockerfile docker: Fix missing /tmp directory 2024-02-19 20:13:20 +01:00
go.mod wl2k-go @ v1.0.1 2025-11-01 21:45:55 +01:00
go.sum wl2k-go @ v1.0.1 2025-11-01 21:45:55 +01:00
LICENSE Update copyright year 2020-02-20 21:46:06 +01:00
main.go Refactor reload handling 2025-06-22 20:22:37 +02:00
make.bash Avoid hardcoding executable name in make.bash 2025-12-20 12:45:31 +01:00
README.md Add mps command for managing message pickup stations 2025-06-13 12:48:18 +02:00
sighup_unix.go Add SIGHUP-based live reload functionality 2025-06-22 13:10:12 +02:00
sighup_windows.go Fix Windows build 2025-06-22 20:27:36 +02:00

Build status Go Report Card Liberapay Patreons

Overview

Pat is a cross platform Winlink client with basic messaging capabilities.

It is the primary sandbox/prototype application for the wl2k-go project, and provides both a command line interface and a responsive (mobile-friendly) web interface.

It is mainly developed for Linux, but is also known to run on OS X, Windows and Android.

Features

  • Message composer/reader (basic mailbox functionality).
  • Auto-shrink image attachments.
  • Post position reports with location from local GPS, browser location or manual entry.
  • Rig control (using hamlib).
  • CRON-like syntax for execution of scheduled commands (e.g. QSY or connect).
  • Built in http-server with web interface (mobile friendly).
  • Git style command line interface.
  • Listen for P2P connections using multiple modes concurrently.
  • AX.25, telnet, PACTOR and ARDOP support.
  • Experimental gzip message compression (See "Gzip experiment" below).
Example
martinhpedersen@duo:~$ pat interactive
> listen winmor,telnet-p2p,ax25
2015/02/03 10:33:10 Listening for incoming traffic (winmor,telnet-p2p,ax25)...
> connect winmor:///LA3F
2015/02/03 10:34:28 Connecting to winmor:LA3F...
2015/02/03 10:34:33 Connected to WINMOR:LA3F
RMS Trimode 1.3.3.0 Follo.SE Oslo. Pactor & Winmor Hybrid Gateway
LA5NTA has 117 minutes remaining with LA3F
[WL2K-2.8.4.8-B2FWIHJM$]
Wien CMS via LA3F >
>FF
FC EM FOYNU8AKXX59 260 221 0
F> 68
1 proposal(s) received
Accepting FOYNU8AKXX59
Receiving [//WL2K test til linux] [offset 0]
>FF
FQ
Waiting for remote node to close the connection...
> _

Gzip experiment

Gzip message compression has been added as an experimental B2F extension. The extension is implemented as a backwards compatible alternative to the ancient LZHUF compression.

This experiment is enabled by default and sessions between two Pat nodes (or other software supporting this B2F extension) will use gzip compression when transferring messages.

For more information, see https://github.com/la5nta/wl2k-go#gzip-experiment.

Copyright (c) 2020 Martin Hebnes Pedersen LA5NTA

Contributors (alphabetical)

  • AB3E - Justin Overfelt
  • DL1THM - Torsten Harenberg
  • HB9GPA - Matthias Renner
  • K0RET - Ryan Turner
  • K0SWE - Chris Keller
  • KD8DRX - Will Davidson
  • KE8HMG - Andrew Huebner
  • KI7RMJ - Rainer Grosskopf
  • KM6LBU - Robert Hernandez
  • LA3QMA - Kai Günter Brandt
  • LA4TTA - Erlend Grimseid
  • LA5NTA - Martin Hebnes Pedersen
  • N2YGK - Alan Crosswell
  • VE7GNU - Doug Collinge
  • W6IPA - JC Martin
  • WY2K - Benjamin Seidenberg

Thanks to

The JNOS developers for the properly maintained lzhuf implementation, as well as the original author Haruyasu Yoshizaki.

The paclink-unix team (Nicholas S. Castellano N2QZ and others) - reference implementation

Amateur Radio Safety Foundation, Inc. - The Winlink 2000 project

F6FBB Jean-Paul ROUBELAT - the FBB forwarding protocol

Pat/wl2k-go is not affiliated with The Winlink Development Team nor the Winlink 2000 project [http://winlink.org].