-
-
Notifications
You must be signed in to change notification settings - Fork 57
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
More information for building Rymdport for distribution packagers
- Loading branch information
Showing
2 changed files
with
39 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# Packing Rymdport | ||
|
||
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: | ||
|
||
[![Packaging status](https://repology.org/badge/vertical-allrepos/rymdport.svg)](https://repology.org/project/rymdport/versions) | ||
|
||
## Requirements | ||
|
||
Rymdport compiles into a statically linked binary with no explicit runtime dependencies. | ||
Compiling requires a [Go](https://go.dev) compiler (aversion 1.18 or later is required) and the [prerequisites for Fyne](https://developer.fyne.io/started/). | ||
|
||
## Downloading the source | ||
|
||
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](https://github.com/Jacalz/rymdport/releases/). | ||
That file has all of the dependencies vendored into the tarball and can thus be built without network access. | ||
|
||
## Building the binary | ||
|
||
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. | ||
|
||
## Installing | ||
|
||
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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters