-
Notifications
You must be signed in to change notification settings - Fork 45
Skywire Package Installation
Using a package of skywire allows the package manager to handle the installation and updates.
This guide will always reflect the latest / current procedure for package installation and updating.
Skywire is available to install as a package on .deb based linux distros from the apt repo at https://deb.skywire.dev using apt
on .deb based linux distros
Configuring the package repository in the software sources allows packages provided by the APT repo to be updated with the rest of the system software as new versions become available or revisions to packaging and scripts are made (i.e. minor release).
the skycoin/AUR contains builds for both the debian and archlinux packages.
This repo is a collection of AUR repositories.
Several types of build for skywire are maintained there.
The skywire or skywire-bin package can be built and installed from the AUR with tools such as yay
or manually cloned with git
and compiled into a package with makepkg
- 0) One-line installation via apt
- 1) Repository Configuration & Signing Key
- 2) Resync package database
- 3) install skywire
- 4) skywire-autoconfig
- 5) Remote Hypervisor
- 6) Set Reward Address
- 7) Additional Configuration
- 8) Updating
- 9) Troubleshooting
- 10) Uninstalling
- 11) Using
dpkg
- 12) Automatic Updates
- 13) Support and Issue Reporting
- Archlinux
steps 1, 2, and 3 are accomplished by the following command
sudo dpkg -i $(curl -L https://github.com/skycoin/apt-repo/releases/download/current/skyrepo-$(dpkg --print-architecture).deb -o skyrepo-$(dpkg --print-architecture).deb && echo -e skyrepo-$(dpkg --print-architecture).deb) && sudo rm skyrepo-*.deb && sudo install-skywire || sudo apt install skywire-bin
proceed to step 4
sudo dpkg -i $(curl -L https://github.com/skycoin/apt-repo/releases/download/current/skyrepo-$(dpkg --print-architecture).deb -o skyrepo-$(dpkg --print-architecture).deb && echo -e skyrepo-$(dpkg --print-architecture).deb) && sudo rm skyrepo-*.deb && sudo install-skywire || sudo apt install skywire-bin
curl -L https://github.com/skycoin/apt-repo/releases/download/current/skyrepo-$(dpkg --print-architecture).deb -o skyrepo-$(dpkg --print-architecture).deb
sudo dpkg -i skyrepo-*.deb
rm skyrepo-*.deb
curl -L https://github.com/skycoin/apt-repo/releases/download/current/skyrepo-$(dpkg --print-architecture).deb -o skyrepo-$(dpkg --print-architecture).deb
sudo dpkg -i skyrepo-*.deb
rm skyrepo-*.deb
Installing the skybian package installs the apt repo configuration and repository signing key. This will allow skywire to be installed or updated with apt
from the configured repo
Important note about previous configuations
This is no longer recommended or supported; the skybian package provides both the repository configuration and the signing key.
If you have previously configured the skycoin APT repo in /etc/apt/sources.list
, installing the skyrepo package will cause an updating conflict, as the repository will seem to be configured twice.
It's recommended to remove the configuration from /etc/apt/sources.list
and use the skyrepo package to accomplish this configuration.
sudo apt install skywire-bin
sudo apt install skywire-bin
sudo apt install skywire-bin
Note: The default config from skybian was used automatically if it existed
Skywire is now installed and a hypervisor configuration is generated by default.
Controlling skywire with systemd services
If you have installed skywire and it isn't running; start the skywire systemd service
sudo systemctl start skywire
To simultaneously start and enable the service to start on boot:
sudo systemctl enable --now skywire
updating skywire from this point (outside of the skyminer) will not change the running or enabled state of any service except to restart it.
The previous behavior, starting the service on installation or updates, has been maintained for the skybian installation by use of the environmental variable SKYBIAN=true
with skywire-autoconfig
Navigate to the hypervisor UI via one of the links which printed out in the terminal to ensure it worked as expected.
All additional configuration is optional
The skywire-autoconfig script runs as part of the postinstall process of linux package installation for the debian and archlinux packages
The script will enable skywire.service
and start it if SKYBIAN=true
SKYBIAN=true
is set by default in /etc/profile.d/skyenv.sh
by the skyrepo package, which contains the apt repository configuration & signing key
skywire.service
will be restarted by skywire-autoconfig if it is already running
if skywire.service
is not running or SKYBIAN=true
is not set, the service can be started with
sudo systemctl start skywire.service
To enable the service to start at boot and start it:
sudo systemctl enable --now skywire.service
or simply by providing the env SKYBIAN=true
to skywire-autoconfig
SKYBIAN=true skywire-autoconfig
Once the service is started, skywire-autoconfig
will print helpful text including
- links to any locally running UI
- the visor public key
- any remote hypervisor public key which is set
- the reward address, if set
- etc.
Assuming the previous steps have been completed on more than one machine, provide the public key of the hypervisor as an argument to the skywire-autoconfig
command
skywire-autoconfig 924b125136a9eeac0ceb079005846e02500d26129e073ef0d913bcd364795e8377
skywire-autoconfig
commandskywire-autoconfig 924b125136a9eeac0ceb079005846e02500d26129e073ef0d913bcd364795e8377
To subsequently reconfigure the visor back to a local hypervisor configuration and remove any remote hypervisors:
skywire-autoconfig 0
To reset both local and remote hypervisor configurations (meaning no locally running hypervisor UI and excluding any remote hypervisor)
skywire-autoconfig 1
skywire-cli reward <skycoin-address>
$ skywire-cli reward 2jBbGxZRGoQG1mqhPBnXnLTxK6oxsTf8os6
Reward address:
2jBbGxZRGoQG1mqhPBnXnLTxK6oxsTf8os6
skywire-cli reward <skycoin-address>
skywire-cli reward <skycoin-address>
$ skywire-cli reward 2jBbGxZRGoQG1mqhPBnXnLTxK6oxsTf8os6
Reward address:
2jBbGxZRGoQG1mqhPBnXnLTxK6oxsTf8os6
When the above command is executed, the reward address is written to the specified file and incorporated into the system survey, which is served over dmsghttp along with transport logs.
NOTE: Setting a reward address is not a garauntee of rewards.
The uptime and hardware requirements listed in the mainnet rules still apply and will be updated as deemed appropriate in the future
In v1.3.11. more flags were added for skywire-cli config gen
and a .conf template was created so that users could persist settings more effectively across updates or re-installation. This .conf template is updated by the skywire-autoconfig script to produce the configuration which corresponds with the arguments which are passed to skywire-autoconfig
.
This .conf file will be automatically created with any defaults set in /etc/profile.d/skyenv.sh
when using the linux packages
/etc/skywire.conf
Edit this file by uncommenting or commenting the desired lines, adding keys, etc. to change config defaults.
Skywire will be updated along with the rest of the software on the system with apt
apt update
apt upgrade
Skywire alone can be explicitly updated with
apt update
apt install skywire
In the instance of changes to the apt repository config, it is necessary to re-install the skyrepo package before updating skywire.
This can be accomplished by simply copying the one-line installation via apt from step 0 of this guide
The same command should be displayed on any skycoin apt repository mirror such as deb.skywire.skycoin.com
Almost any issue with configuration may be solved by running:
skywire-autoconfig
The visor or hypervisor will be enabled appropriately with this command. Missing configs will be regenerated.
Helpful text is printed with links to access the hypervisor UI, VPN, as well as links to the uptime tracker and whitelist.
Any errors with the underlying skywire-cli commands encountered by the script will be printed to the terminal.
It is safe to re-run this command at any time.
For assistance, please reach out to us on telegram @skywire
If the above troubleshooting procedure does not work, it may be necessary to uninstall and re-install the package.
Uninstalling can be done with APT:
sudo apt remove skywire-bin
In the instance that the packages fail to download with apt
, it is possible to install the package with dpkg
The packages can be manually downloaded from https://176.9.28.105/archive.
Copy the URL of the latest versioned release into the curl command:
sudo curl -L http://deb.skywire.dev/archive/skywire-bin.deb > skywire-bin.deb
and install with dpkg
sudo dpkg -i skywire-bin.deb
remove or uninstall a package with dpkg
sudo dpkg -r skywire-bin
By default, many deb-based linux distros now include the unattended-upgrades package, which can be enabled for use with the apt repository configured in the first step.
If you do not have this package installed, first install unattended-upgrades
apt install unattended-upgrades
Edit the file at /etc/apt/apt.conf.d/50unattended-upgrades
nano /etc/apt/apt.conf.d/50unattended-upgrades
Add the following line at the first blank line (around line 33)
"origin=skycoin,codename=sid,label=skycoin";
You may wish to uncomment some lines above it as well, this is left to the discretion of the user.
Save and exit the file (ctrl+x
type y
press return
)
Run the following commands as root to enable the automatic updates
echo unattended-upgrades unattended-upgrades/enable_auto_updates boolean true | debconf-set-selections
dpkg-reconfigure -f noninteractive unattended-upgrades
Issues related to the packaging should be reported in the skycoin/AUR repository
If you need immediate help, please describe the issue you are having in skywire telegram
Skywire is available to install from the Arch User Repos (AUR) with tools such as yay
or pamac
for the binary release:
yay -S skywire-bin
using the latest source archive:
yay -S skywire
Build to the develop branch using git clone
'd sources
yay --mflags " -p git.PKGBUILD " -S skywire
or manually, with makepkg
git clone https://aur.archlinux.org/skywire
cd skywire
makepkg -sif
#or build from cloned git sources
makepkg -sif -p git.PKGBUILD
skywire-cli config gen
and a .conf template was created so that users could persist settings more effectively across updates or re-installation. This .conf template is updated by the skywire-autoconfig script to produce the configuration which corresponds with the arguments which are passed to skywire-autoconfig
./etc/profile.d/skyenv.sh
when using the linux packages/etc/skywire.conf
Skywire will be updated along with the rest of the software on the system with apt
apt update
apt upgrade
apt update
apt upgrade
Skywire alone can be explicitly updated with
apt update
apt install skywire
In the instance of changes to the apt repository config, it is necessary to re-install the skyrepo package before updating skywire.
This can be accomplished by simply copying the one-line installation via apt from step 0 of this guide
The same command should be displayed on any skycoin apt repository mirror such as deb.skywire.skycoin.com
Almost any issue with configuration may be solved by running:
skywire-autoconfig
skywire-autoconfig
The visor or hypervisor will be enabled appropriately with this command. Missing configs will be regenerated.
Helpful text is printed with links to access the hypervisor UI, VPN, as well as links to the uptime tracker and whitelist.
Any errors with the underlying skywire-cli commands encountered by the script will be printed to the terminal.
It is safe to re-run this command at any time.
For assistance, please reach out to us on telegram @skywire
If the above troubleshooting procedure does not work, it may be necessary to uninstall and re-install the package.
Uninstalling can be done with APT:
sudo apt remove skywire-bin
In the instance that the packages fail to download with apt
, it is possible to install the package with dpkg
The packages can be manually downloaded from https://176.9.28.105/archive.
Copy the URL of the latest versioned release into the curl command:
sudo curl -L http://deb.skywire.dev/archive/skywire-bin.deb > skywire-bin.deb
and install with dpkg
sudo dpkg -i skywire-bin.deb
remove or uninstall a package with dpkg
sudo dpkg -r skywire-bin
By default, many deb-based linux distros now include the unattended-upgrades package, which can be enabled for use with the apt repository configured in the first step.
If you do not have this package installed, first install unattended-upgrades
apt install unattended-upgrades
Edit the file at /etc/apt/apt.conf.d/50unattended-upgrades
nano /etc/apt/apt.conf.d/50unattended-upgrades
Add the following line at the first blank line (around line 33)
"origin=skycoin,codename=sid,label=skycoin";
You may wish to uncomment some lines above it as well, this is left to the discretion of the user.
Save and exit the file (ctrl+x
type y
press return
)
Run the following commands as root to enable the automatic updates
echo unattended-upgrades unattended-upgrades/enable_auto_updates boolean true | debconf-set-selections
dpkg-reconfigure -f noninteractive unattended-upgrades
Issues related to the packaging should be reported in the skycoin/AUR repository
If you need immediate help, please describe the issue you are having in skywire telegram
Skywire is available to install from the Arch User Repos (AUR) with tools such as yay
or pamac
for the binary release:
yay -S skywire-bin
using the latest source archive:
yay -S skywire
Build to the develop branch using git clone
'd sources
yay --mflags " -p git.PKGBUILD " -S skywire
or manually, with makepkg
git clone https://aur.archlinux.org/skywire
cd skywire
makepkg -sif
#or build from cloned git sources
makepkg -sif -p git.PKGBUILD
please contact support via telegram @skywire
for rewards and technical support