Skip to content

kite 0.1.6

Choose a tag to compare

@github-actions github-actions released this 01 Oct 13:35
· 49 commits to main since this release

A release that signs the app center's index: Kite now uses only an index signed with the key it carries, so a CDN or a mirror that serves the index cannot change what a site installs.

Highlights

  • A signed index. kite-plus/apps signs index.json with minisign, and Kite carries the public key. An index whose signature is missing or does not match is not used, from the studio or the command line, and neither is one older than an index Kite has already used, which is how a copy from before a version was withdrawn would be passed off as current. The signed index names every archive by its sha256, so the signature vouches for the packages as well. When a fresh copy is refused, the one kept from the last good fetch stays in use, and Kite says so.
  • An index of your own. apps.key in kite.yaml, or KITE_APPS_KEY, names the public key of an index you sign yourself, as minisign -Sm index.json does. A copy of Kite's own index needs no key: served with its index.json.minisig beside it, it is checked with Kite's key.

Install

Download the archive for your system below, unpack it, put kite somewhere on your PATH, and run kite run in an empty folder. On macOS, xattr -d com.apple.quarantine kite lets a downloaded program run the first time.

To run a site on a server with Docker:

docker run -d --name kite --restart unless-stopped -p 127.0.0.1:1717:1717 -v kite-data:/data ghcr.io/kite-plus/kite:0.1.6

Every archive can be checked against checksums.txt, and a given commit builds to the same binary on any machine.

Upgrading from 0.1.5

Replace the binary, or pull the new image.

  • With Kite's own index nothing changes: it is already signed. The copy 0.1.5 kept in .kite/cache/apps has no signature, so it is fetched again the first time.
  • An index of your own, named by apps.index or KITE_APPS_URL, now has to be signed: a copy of Kite's index keeps index.json.minisig beside index.json, and an index you build yourself is signed with your own key, named in apps.key. Until then Kite refuses it, and installing by name from it stops.

Notes

Kite is in early development. The reference covers the signature and keys for an index of your own. The rest of the app center's plan is tracked in #16.

Every change in this release

Changelog

Features

Documentation

Install

Download the archive for your platform, or pin the version in a project
so that local builds and CI agree:

./kitew build

Verify a download against checksums.txt before running it.