The web 3.0 (that came from Ethereum, IPFS and TheGraph) is replacing the web 2.0, and Web3Updater will put it also on OS/app updates! As Web3Updater can be used in any product to manage updates (such as Electron apps), it also uses itself to update itself (meta-language).
Imagine Windows Update, but for the Web 3.0 and for any app/CLI program/OS.
To not depend on a failure-prone centralized server. The true focus isn't about censorship concerns, but mainly because an OS or app that handles user's digital money shouldn't be vulnerable to individuals.
To use a public ledger to validate decentralized DNS/domains.
Because it is the pioneer on smart-contracts and fostering innovation (such as the eco-friendly PoS, token-burning and sharding) while choosing decentralization/security over speed.
First, W3U takes use of ENS (Ethereum Name System) to store file/folder content hashes (known on IPFS as CIDs - Content IDs), so updates are secured by the Ethereum blockchain; in the next step, these updates are downloaded directly from IPFS (not a blockchain, but a distributed file-sharing protocol like BitTorrent) and patched, and also seeded to other neighboor users (P2P, faster updates).
It can not only be itself updating itself (meta language), but can also be initiated in your projects (soon); for now only CLI apps, but soon we will enable new creative uses such as an NPM package to decentralizedly update Electron apps.
Every time you wish to add an new update: edit files such as update.sh and new_patch_at.json adding commands and increasing numbers and... ...more instructions coming.
Web3Updater is developed with focus on being:
Feel free to open an issue, here. Pull requests are also welcome <3