Commit graph

35 commits

Author SHA1 Message Date
Martin Hebnes Pedersen
1be2da800a Update Go dependencies
Requires Go 1.26 or later
2026-07-21 11:04:53 +02:00
Martin Hebnes Pedersen
10f9e9c31f Avoid hardcoding executable name in make.bash
That incorrectly produced `pat` instead of `pat.exe` on Windows.
2025-12-20 12:45:31 +01:00
Martin Hebnes Pedersen
d7890d96de Switch to containerized web asset build pipeline
For sandboxing and improved reproducibility, build the web assets in
docker.
2025-09-19 21:31:40 +02:00
Martin Hebnes Pedersen
b7df4198f0 Remove legacy buildinfo gitrev mechanism 2025-09-18 10:00:35 +02:00
Martin Hebnes Pedersen
4946b14a2c Add pre-release command in make.bash
To help with chores prior to a new release. Includes govulncheck to
check for vulnerabilities in the Go code (including dependencies).
2025-09-17 21:23:21 +02:00
Martin Hebnes Pedersen
063c15f38f Require Go 1.24 (and update deps) 2025-09-04 11:47:20 +02:00
Martin Hebnes Pedersen
d5e51bd201 Add packages for HF propagation prediction
* VOACAP implementation (supports voacapw and voacapl)
* SIDBC SILSO Sunspot Numbers source
  - Includes caching and embedded copy of current predictions
* Predictor interface to support multiple engines in the future
* Parallel prediction execution helper for optimization
* Caching middleware

Issue #494
2025-08-12 19:02:44 +02:00
Martin Hebnes Pedersen
f81e10cc44 Embed rmslist.json to use as fallback if offline 2025-08-12 10:24:34 +02:00
Martin Hebnes Pedersen
0d9657a935 Switch to ubuntu.hi.no as mirror for libax25
Our previous mirror dropped libax25_0.0.12-rc4.orig.tar.gz.
2025-07-30 17:42:59 +02:00
Martin Hebnes Pedersen
2b23ce295b wl2k-go@v0.11.6 (requires Go 1.19)
* fbb: Ignore leading whitespace when parsing msg
* Update dependencies (requires Go 1.19)
2023-10-18 20:57:41 +02:00
Martin Hebnes Pedersen
ba2499bf40 Run nvm install before building web assets 2023-05-22 12:43:43 +02:00
Martin Hebnes Pedersen
7bac797266 Handle build on linux without cgo
This fixes build issues on docker images like golang:alpine.

Ref #391
2023-03-01 20:38:30 +01:00
Chris Keller
93b8b6c512 If the developer has Node Version Manager, use it
For some reason, we're stuck on a slightly older (but still supported) version of node 14/npm 6. If we try to run npm commands with the latest LTS node 16/npm 8, `npm install` fails. There's already an `.nvmrc` file in the web directory to signal which version of node is needed, but this causes the `make.bash` file to make sure that version is actually used. Does nothing if the developer does not have nvm installed, they'll just get the warning about "unsupported engine."
2022-04-05 18:28:15 +02:00
Chris Keller
af07b47b05 Start using npm and webpack
This deletes all vendored libraries, uses npm to declare them (same version that was deleted), and uses webpack to compile and optimize web assets.
2022-03-27 15:37:03 +02:00
Chris Keller
3cffe173a2 Parameterize mac builds by architecture 2022-03-27 15:30:17 +02:00
Martin Hebnes Pedersen
18d49336be Skip tests in make.bash on SKIP_TESTS=1
Useful when cross-compiling for Windows.
2021-10-24 14:03:34 +02:00
Chris Keller
e94f05f37c Move config, data and state files to XDG locations
Addressing https://github.com/la5nta/pat/issues/216. Includes migration of existing files, plus refactoring of directory access and build info.
2021-08-15 19:35:15 +02:00
Martin Hebnes Pedersen
37f73134d6 Use embed instead of go-bindata-assetfs
In addition to providing similar functionality (bundle static data into
the binary), this new package does not require us to commit the binary
blob into the repo since it is supported by the Go toolchain. No more
"forgot to run go generate after modifying the front-end code"-issues.

This changes the required Go version to >= 1.16.
2021-05-20 19:32:51 +02:00
Martin Hebnes Pedersen
c8d4ac9835 Switch to Go Modules for dependency management
Keeping every module pinned to the same version as before.
2020-05-28 19:01:34 +02:00
Martin Hebnes Pedersen
1b4965758d Require Go 1.10 or later
Debian stable now ships with Go 1.11, and 1.11 are available for
oldstable through backports. Keeping compatibility with older versions
seems unnecessary.

Users are adviced to use the latest stable Go version.

Closes #122
2019-12-09 00:04:41 +01:00
Martin Hebnes Pedersen
64a17b5f59 Fix gitrev build argument for Go 1.10
On Go 1.10 the -ldflags should only apply to packages explicitly listed in the
packages list of the build command. It is probably a bug that the ldflags option
does not apply when omitting the package name (go build) on Linux.

https://github.com/golang/go/issues/24310
2018-04-21 12:47:03 +02:00
Martin Hebnes Pedersen
8ddb42c686 Update libax25 dist URL for build script
www.linux-ax25.org is currently down for unknown reasons. Use a debian
mirror, which should be more stable.
2018-04-21 11:53:10 +02:00
Martin Hebnes Pedersen
ff5f76f2d6 make.bash: Fix Go version check 2018-02-17 21:36:54 +01:00
Martin Hebnes Pedersen
e7f4ba2994 Use GOOS to determine build OS in make.bash
This will make it more convenient to cross-compile using make.bash
2017-12-06 20:22:55 +01:00
Martin Hebnes Pedersen
a1cb232f98 Don't build with system installed static libax25
A new debian policy restricts the use of fPIC compiled static libraries,
which is (apparently) required by cgo. libax25 in Debian Stretch is
built without fPIC, so we can't use it anymore.

I've included a function in make.bash that downloads and compiles
libax25 to use when building the static Pat binary. Users can use the
env variable CGO_LDFLAGS to specify a custom libax25.a path.
2017-08-12 01:54:24 +02:00
Martin Hebnes Pedersen
6ac68737dd Link libax25 statically (linux only)
Closes #59
2016-09-19 20:04:54 +02:00
Martin Hebnes Pedersen
d611b270e3 make.bash: Enable libax25 on Linux by default 2016-09-19 20:03:42 +02:00
Martin Hebnes Pedersen
db87f22b5e make.bash: Fix VERSION variable 2016-09-12 20:05:43 +02:00
Martin Hebnes Pedersen
cdad92f6cf make.bash: Build pkg on darwin if tool is available 2016-09-12 18:23:16 +02:00
Martin Hebnes Pedersen
b44887d9ee Update submodules on build 2016-05-07 22:10:47 +02:00
Martin Hebnes Pedersen
5dfaca90c9 Fix Go 1.5 build 2016-02-22 22:56:59 +01:00
Martin Hebnes Pedersen
f5568be99f Simplify make.bash and test wl2k-go 2016-02-22 21:54:32 +01:00
Martin Hebnes Pedersen
c8d8be1b47 cmd/wl2k: Fix build, take 2 2015-11-01 22:10:22 +01:00
Martin Hebnes Pedersen
a5937ba264 cmd/wl2k: Fix make.bash with Go < 1.5 2015-11-01 21:56:16 +01:00
Martin Hebnes Pedersen
66695a158a cmd/wl2k: Add version command.
This also includes a make.bash script to insert current git rev hash into the built binary.

Closes #18
2015-10-31 13:16:27 +01:00