Closed SwiftAdviser closed 1 year ago
LGTM
Ok, we're already doing it in a long time. Firstly, we got docker slim image for all systems and binaries with toncli in it with just 60mb size - https://github.com/disintar/toncli/pull/59
Soon we will present easy to use scripts one-liners, so if your machine support docker you will just use curl | bash
.
Secondary, soon we will introduce packages to all systems, so you will do apt get install ton
or brew install ton
and that's all. Work is ongoing here
Ok, we're already doing it in a long time. Firstly, we got docker slim image for all systems and binaries with toncli in it with just 60mb size - disintar/toncli#59 Soon we will present easy to use scripts one-liners, so if your machine support docker you will just use
curl | bash
.Secondary, soon we will introduce packages to all systems, so you will do
apt get install ton
orbrew install ton
and that's all. Work is ongoing here
Sounds cool! 🔥 That's very cool that the community already has results to solve this problem. I have some questions here.
What about users who can't run docker emulation on their machine for some reason?
That's why we work on packages for systems. apt install ton
don't need docker.
What about a one-line solution for Windows users?
@tonthemoon packages will support windows. Docker images also runs in Windows very easelly.
What about arm64 binaries? (macOS M* series for today)
M1 already supported in docker and in @tonthemoon brew package.
What about users who can't run docker emulation on their machine for some reason?
That's why we work on packages for systems.
apt install ton
don't need docker.What about a one-line solution for Windows users?
@tonthemoon packages will support windows. Docker images also runs in Windows very easelly.
What about arm64 binaries? (macOS M* series for today)
M1 already supported in docker and in @tonthemoon brew package.
Sounds perfect! This means all goals will be covered by the @tonthemoon project.
Maybe, you could become a responsible contributor to this Footstep?
I would be happy to integrate your project to the tonspace.co as soon as it would be ready to use instead of a giant "Installation" step!
Hi, I recently forked ton-compiler nodejs package and built tonc (https://github.com/Termina1/tonc). It has WASM-built func and fift, inspired by ton-contract-executor, but I also automated building WASM-binaries, so anyone can do it and it’s easy to update. The only thing it’s missing is lite-client, but fift and func can now be installed with one-liner:
npm install -g tonc
It should work on any system with nodejs. I probably could add lite-client to compiled binaries, but it would require a bit more work.
Now that we have https://github.com/ton-community/blueprint i think we can close this Footstep
Summary
TON Dev Chat has many questions and complaints about smart-contract binaries (func, fift, lite-client). On every system binaries need their setup and dependencies to work appropriately (Windows, Debian, Ubuntu, MacOS x86, MacOS arm64). That provides complexity and tons of questions for new developers in the ecosystem and lower conversion to future smart-contracts developers.
Tal Kol already simplified the process with pre-built binaries. But it is still not enough to make your "first smart contract in one evening". If TON wants to provide a first-class experience for developers the process should be as simple as possible.
Tal Kol's experience could be used to make the releases versioning to split versions of TON binaries used by the one-line installer in the future. But today we could start from the MVP of the one-line installer.
Context
Solana
To resolve this issue, other blockchains already have "one-line installer" solutions like Solana Install Tool:
Geth
Or Geth for Ethereum:
TON Installer Tool
TON Installer Tool solution must provide a simple experience for anyone curious about TON and smart-contract development. It must help to avoid a problem where you have many binaries for many versions of OS, which you should update every 3 months!
Goals
Deliverables
master
branch ofton-blockchain
Definition of Done
Reward