From 824282bafafb18a2dc7a38e451e2698c044939e5 Mon Sep 17 00:00:00 2001 From: Matthias Frei Date: Fri, 15 Dec 2023 10:43:04 +0100 Subject: [PATCH] doc: mention packages in readme, general update --- README.md | 45 ++++++++++++++++++++++++++++----------------- doc/dev/setup.rst | 12 +----------- 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 0c3016ad61..65ca3d40f2 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,10 @@ # SCION [![Slack chat](https://img.shields.io/badge/chat%20on-slack-blue?logo=slack)](https://scionproto.slack.com) +[![Matrix chat](https://img.shields.io/badge/chat%20on-matrix-blue?logo=matrix)](https://matrix.to/#/#dev:matrix.scion.org) +[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/scionproto/awesome-scion) [![ReadTheDocs](https://img.shields.io/badge/doc-reference-blue?version=latest&style=flat&label=docs&logo=read-the-docs&logoColor=white)](https://docs.scion.org/en/latest) -[![Documentation](https://img.shields.io/badge/go.dev-reference-007d9c?logo=go&logoColor=white)](https://pkg.go.dev/github.com/scionproto/scion) +[![Go Docs](https://img.shields.io/badge/go.dev-reference-007d9c?logo=go&logoColor=white)](https://pkg.go.dev/github.com/scionproto/scion) [![Nightly Build](https://badge.buildkite.com/b70b65b38a75eb8724f41a6f1203c9327cfb767f07a0c1934e.svg)](https://buildkite.com/scionproto/scion-nightly/builds/latest) [![Go Report Card](https://goreportcard.com/badge/github.com/scionproto/scion)](https://goreportcard.com/report/github.com/scionproto/scion) [![GitHub issues](https://img.shields.io/github/issues/scionproto/scion/help%20wanted.svg?label=help%20wanted&color=purple)](https://github.com/scionproto/scion/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) @@ -10,28 +12,37 @@ [![Release](https://img.shields.io/github/release-pre/scionproto/scion.svg)](https://github.com/scionproto/scion/releases) [![License](https://img.shields.io/github/license/scionproto/scion.svg?maxAge=2592000)](https://github.com/scionproto/scion/blob/master/LICENSE) -Welcome to the open-source implementation of -[SCION](http://www.scion-architecture.net) (Scalability, Control and Isolation -On next-generation Networks), a future Internet architecture. SCION is the first -clean-slate Internet architecture designed to provide route control, failure -isolation, and explicit trust information for end-to-end communication. To find -out more about the project, please visit our [documentation -site](https://docs.scion.org/en/latest/). +Welcome to the open-source implementation of [SCION](http://www.scion-architecture.net) (Scalability, Control and Isolation On next-generation Networks), a future Internet architecture. +SCION provides route control, failure isolation, and explicit trust information for end-to-end communication. +To find out more about the project, please visit our [documentation site](https://docs.scion.org/en/latest/). ## Connecting to the SCION Test Network -Join [SCIONLab](https://www.scionlab.org) if you're interested in playing with -SCION in an operational global test deployment of SCION. As part of the SCIONLab -project, we support [pre-built binaries as Debian -packages](https://docs.scionlab.org/content/install/). +Join [SCIONLab](https://www.scionlab.org) if you're interested in playing with SCION in an operational global test deployment of SCION. -## Building +The [awesome-scion](https://github.com/scionproto/awesome-scion) list containes pointers production deployments of SCION. -To find out how to work with SCION, please visit our [documentation -site](https://docs.scion.org/en/latest/dev/setup.html) -for instructions on how to install build dependencies, build and run SCION. +## Installation -Pre-built binaries for x86-64 Linux are available from the [latest nightly build](https://buildkite.com/scionproto/scion-nightly/builds/latest). +Installation packages for Debian and derivatives are available for x86-64, arm64, x86-32 and arm. +These packages can be found in the [latest release](https://github.com/scionproto/scion/releases/latest). +Packages for in-development versions can be found from the [latest nightly build](https://buildkite.com/scionproto/scion-nightly/builds/latest). + +Alternatively, "naked" pre-built binaries are available for Linux x86-64 and +can be downloaded from the [latest release](https://github.com/scionproto/scion/releases/latest) or the +[latest nightly build](https://buildkite.com/scionproto/scion-nightly/builds/latest). + +### Build from sources + +SCION can be built with `go build`. To build all binaries needed in a SCION deployment (i.e. excluding the testing and development tools), run + +``` +CGO_ENABLED=0 go build -o bin ./router/... ./control/... ./dispatcher/... ./daemon/... ./scion/... ./scion-pki/... ./gateway/... +``` + +The default way to build SCION, however, uses Bazel. +In particular, allows to run all the tests, linters etc. +Please visit our [documentation site](https://docs.scion.org/en/latest/dev/setup.html) for instructions on how to set up Bazel and the full development environment. ## Contributing diff --git a/doc/dev/setup.rst b/doc/dev/setup.rst index 4b6e5e7aa4..139ddef478 100644 --- a/doc/dev/setup.rst +++ b/doc/dev/setup.rst @@ -113,21 +113,11 @@ rejecting your changes. #. Install go. Either follow `the official instructions `_ or check the `Ubuntu specific installation options on the golang wiki `_. -#. Decide which implementation of sqlite you want to use: - - - `mattn`: A cgo implementation. It is well established but makes go - executables dependent on a minimum glibc version. - - `modernc`: A pure go implementation. It does not cause glibc version - issues but is less common. modernc is currently recommended due to - the glibc issue. - #. Build SCION services and tools. .. code-block:: bash - go build -o -tags sqlite_ bin .//cmd/... - - where is one of `modernc` or `mattn`. + go build -o bin .//cmd/... Tips and Tricks