Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Host binaries #332

Closed
3 tasks
Tracked by #367
tuler opened this issue Dec 21, 2023 · 1 comment
Closed
3 tasks
Tracked by #367

Host binaries #332

tuler opened this issue Dec 21, 2023 · 1 comment
Labels

Comments

@tuler
Copy link
Contributor

tuler commented Dec 21, 2023

📚 Context

Sunodo uses several external programs to fullfil its duties. This is a non-exaustive list of programs used by sunodo build and sunodo run commands:

  • cartesi-machine
  • genext2fs
  • bsdtar
  • server-manager
  • cartesi-rollups-advance-runner
  • cartesi-rollups-authority-claimer
  • cartesi-rollups-dispatcher
  • cartesi-rollups-graphql-server
  • cartesi-rollups-host-runner
  • cartesi-rollups-indexer
  • cartesi-rollups-inspect-server
  • cartesi-rollups-state-server

Some of these programs are maintained by the Machine Emulator Unit and others by the Node Unit.
The only binary distribution for those is currently to Debian, usually packaged as a Docker image, and compiled to amd64 and arm64 architectures.

Depending on Docker on the user machine has proven to not be so easy. Docker Desktop has improved the user experience a lot, but there are still some issues that may happen, and also users who don't use Docker Desktop and try different installation methods, causing problems.

✔️ Solution

We will still depend on Docker for buiding the root filesystem of the user application, with the help of Docker RISC-V support through QEMU, but we could reduce this dependency if we had the binaries above distributed to our supported development platforms and architectures:

OS:

  • macOS
  • Linux
  • Windows through WSL2

Architecture:

  • amd64
  • arm64

📈 Subtasks

  • talk to the Machine Emulator Unit to plan the roadmap for that
  • talk to the Node Unit to plan the roadmap for that

🎯 Definition of Done

  • sunodo build and sunodo run using Docker only for building the application rootfs, or for running services like Postgres, redis, anvil, traefik
@tuler
Copy link
Contributor Author

tuler commented Sep 4, 2024

Moved to cartesi/cli#72

@tuler tuler closed this as completed Sep 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant