However, if you'd like to use Windows - here is how:
A package manager is the way to go if you want to keep software on your computer up-to-date without a lot of manual fiddling. Package managers also provide versioning of software so you can install any version you like. That may be useful if a new version of a software (let's say NodeJS for example) breaks your code but worked fine in an older version. Another use case where this might be interesting is if a software accidentally pushed an update that included errors. Package managers help you with all these problems.
Sadly Windows does not come with any preinstalled. But we can install the package manager called Chocolatey pretty easily!
To install Chocolatey follow their installation instructions and test it afterwards by typing `
choco` into your console. The installation is successful if it prints something like:
Please run 'choco -?' or 'choco <command> -?' for help menu.
Now you are ready to install some software!
Install required software tools
Chocolatey's packages are maintained by the community which sadly means that not every software can be found there. To see which software is available you should check their package list. You will find a lot of free and/or open source software there.
So let's get started (run PowerShell with administrator privileges so it can install software on your system):
choco install -y git nodejs docker-cli docker-desktop docker-compose vscode yggdrasil rust mingw
After a successful installation you should probably do a reboot (it's still Windows and better be safe than sorry).
With Chocolatey you can update all your software installed with it by typing:
That command can be somewhat translated into choco update all my packages.
Another useful command if you want to install a specific version of a package (in this example NodeJS in the version 9.5.0):
choco install nodejs --version=9.5.0 --allow-downgrade
Git pretty much works out of the box but you should configure it for your user:
git config --global user.name "Your Name"
git config --global user.email firstname.lastname@example.org
Now your commits will be personalized to you.
To connect with other Yggdrasil peers you need a configuration file. The Yggdrasil console command can use the `
-genconf` flag to print a configuration file to STDOUT. To store it in a file we pipe it into a file:
yggdrasil -genconf > /your-desired-path/yggdrasil.conf
Now open this configuration file with your freshly installed Visual Studio Code to edit it:
At the top of the file you will find an empty array with the key `
Peers`. To connect with Thingylabs' Yggdrasil node you need to add `
ygg.tlbs.ai` to that `
Peers` array. It should then look like this:
Save the configuration file and open Windows Task Manager and go to the `
Services` tab then scroll down in the list to find the service called `
Yggdrasil` and restart it with right click -> restart.
Now back in your console start Yggdrasil with the just created configuration file:
yggdrasil -useconffile /your-desired-path/yggdrasil.conf
If it all goes well you are now successfully connected via Yggdrasil to Thingylab's node. You can validate this by pinging `
ygg-only.tlbs.ai` which is only accessible from within the Yggdrasil network:
While Windows still is not the ideal system to develop software (especially backend code) at Thingylabs it is possible! Using this article everyone should be able to set up their Windows workstation and get to the fun part as fast as possible.