This file describes how to build and install Rymdport when building distribution packages for Linux or BSD systems.
The following distributions also have binary packages available through their respective package managers:
Rymdport compiles into a statically linked binary with no explicit runtime dependencies. Compiling requires a Go compiler (aversion 1.18 or later is required) and the prerequisites for Fyne.
The Go toolchain automatically downloads all dependencies from go.mod
when building.
This works great locally but can be problematic if the package is built in a container without network access.
Instead of grabbing the autogenerated release source that GitHub provides (called Source code (tar.gz)
),
you can download the rymdport-vX.Y.Z-vendored.tar.xz
file (where X, Y, Z correspond to a version)
from the latest release.
That file has all of the dependencies vendored into the tarball and can thus be built without network access.
It is possible to build Rymdport by just running go build
in the source root but it is recommended to build with the make
command.
The Makefile
provides two specialized targets for debug
and release
(a bare call to make
will use the former).
Both commands disable bundling of the emoji font in Fyne for smaller binaries and trims local file path information from the binary.
However, the release
target also strips debug information and disables the bundling of VCS information.
Installation is most easily done with make install
(likely with sudo
infront).
This will install the binary, the desktop file, all the different icon sizes and the appstream metadata into the right directories.