More ways to build Local Link and help

Local Link is open source. Here's how to build it and help. Anything you contribute is licensed as Local Link is, under both MIT and Apache-2.0 with no additional terms, unless you say otherwise (License).

Developing

Build, run, test and ship a change to Local Link: Developing. Every program Local Link ships is written in Rust, one file each, with nothing to install first: Built in Rust.

Send a change

For anything bigger than a fix, open an issue before writing it.

  • Where things go: Architecture has the layout, the dependency rules (a test enforces them) and a table of where new code goes. Conventions has the rules every change follows.
  • Building, testing and the checks to run before pushing: Developing, and The Website for the website.
  • Branches and pull requests: Branches and Releases.
  • New dependencies must be permissively licensed. tests/e2e/tests/licenses.rs lists what's accepted.
  • Security problems are never issues or PRs. Report them privately, as Report a Vulnerability says.
  • Conduct follows the Contributor Covenant.
  • The name. "Local Link", "local.link" and the hosted service at local.link are not covered by the license. You are welcome to run your own relay (plugins/networking/relay/deploy) under your own domain, but please don't present a fork as the official service.

Getting help

Start with the docs, and open an issue for a bug or an idea.

  • Using Link: start with Install, then the page of the part you use.
  • Something broken: run lnk issue after the command that failed. It prints the bug report's fields, scrubbed of your names, paths, addresses and anything shaped like a secret, to read and paste; lnk issue --open fills them in on the form. Link sends nothing itself.
  • An idea: open a feature request.
  • A security problem: never an issue. See Report a Vulnerability.

Report a vulnerability

Found a way past the sandbox, or anything else that isn't safe? Report it privately: Report a Vulnerability.

Docs

  • Architecture: lnk is a small core that runs a plugin for each part of Local Link, and every agent runs in Link's sandbox, which lets it touch only what you allow
  • Code of Conduct: Everyone who takes part in Local Link keeps to the Contributor Covenant below, and a breach can be reported to so@local.link
  • Developing: Build lnk from source, test it, and ship a change to dev
  • Plugins: lnk is a small core, and each part of Link is a plugin, so you have only what you use and one plugin can't break another
  • Built in Rust: Every program Local Link ships is written in Rust: lnk and its plugins, the relay, Link Harness, Link's tools and the harness adapters
  • Report a Vulnerability: Report it privately, with Report a vulnerability on the repository's Security tab or by mail to so@local.link