Automatic client updates
If you just want to download the newest version, see the downloads page.
For convenience Kowala keeps a repository of
kcoin binaries (the mining
client) which is updated as software development progresses. You can use this
repository to keep your client up to date automatically, but you don't have to:
you're free to upgrade your client manually, or even host your own repository
and use that for automatic updates.
We just use this system to deploy mining clients on our own testnets, and also to update our own personal mining machines, so we're pretty sure it works well. Since all kcoin networks are decentralized and owned by their users, we can't (and wouldn't) mandate the use of automatic updates — like everything else we produce, you're more or less free to do whatever you like. That said, we do recommend that you use automatic updates for the health of the network.
Basic usage via the CLI
The kcoin client provides a mechanism of self update using
command. By default this command uses Kowala binary repository, so if you want
to use that you don't need any arguments. You can just run:
$ kcoin update
To update using you another binary repository you can use the
$ kcoin -repository http://myserver.local update
To check current and latest version available against a repository:
$ kcoin -repository http://myserver.local version
Under the hood
Versions are maintained using Semantic Versioning, operating system version and computer architecture, and these are reflected in the file name. For example:
When you run a
kcoin update command against any repository, the client checks
the list of files to see if a newer version is available. If it is, then it's
Note that major versions of the binary are not automatically downloaded. We expect to release these infrequently, and they would constitute a major change to the communications protocols or other external interfaces. As a result, any major vrsion updates must be performed manually.
Hosting your own repository
You can host your own binary repository using any public-facing HTTP server.
You will need to host all binaries, following the filename conventions above,
and include an
index.txt file in root folder that has a list of all files in
repository. That's pretty much all there is to it!