Skywire requires a Golang version of 1.13
or higher.
# Clone.
$ git clone https://github.com/skycoin/skywire.git
$ cd skywire
# Build and Install
$ make build; make install
Skywire can be statically built. For instructions check the docs.
In order to expose the hypervisor UI, generate a config file with --is-hypervisor
flag:
$ skywire-cli visor gen-config --is-hypervisor
After starting up the visor, the UI will be exposed by default on localhost:8000
.
Every visor can be controlled by one or more hypervisors. To allow a hypervisor to access a visor, the PubKey of the hypervisor needs to be specified in the configuration file. You can add a remote hypervisor to the config with:
$ skywire-cli visor update-config --hypervisor-pks <public-key>
skywire-visor
hosts apps and is an applications gateway to the Skywire network.
skywire-visor
requires a valid configuration to be provided. If you want to run a VPN client locally, run the visor as sudo
.
$ sudo skywire-visor -c skywire-config.json
skywire-visor
can be run on Windows. The setup requires additional setup steps that are specified in the docs.
If you are interested in running the Skywire VPN as either a client or a server, please refer to the following guides:
To maintain actual skywire-visor
state on users' Skywire nodes we have a mechanism for updating skywire-visor
binaries.
Binaries for each version are uploaded to GitHub releases.
We use goreleaser for creating them.
- Make sure that
git
and goreleaser are installed. - Checkout to a commit you would like to create a release against.
- Run
go mod vendor
andgo mod tidy
. - Make sure that
git status
is in clean state. Commit all vendor changes and source code changes. - Uncomment
draft: true
in.goreleaser.yml
if this is a test release. - Create a
git
tag with desired release version and release name:git tag -a 0.1.0 -m "First release"
, where0.1.0
is release version andFirst release
is release name. - Push the created tag to the repository:
git push origin 0.1.0
, where0.1.0
is release version. - Issue a personal GitHub access token.
- Run
GITHUB_TOKEN=your_token make github-release
- Check the created GitHub release.