Skip to content

chore: reproducible setup and onboarding #4035

@RafaelAPB

Description

@RafaelAPB

Is your feature request related to a problem? Please describe.
I'm frustrated that new contributors face a high setup cost: multiple toolchains (Node, pnpm, Rust, Go, Gradle) and platform variations make it difficult to get a consistent dev environment. This has been one (if not the most) pressing issue in the Cacti community since essentially its inception.

Describe the solution you'd like
We can study different tools to simplify our onboarding. One of them is NixOS: https://nixos.org/.
This task comprises creating a Nix flake (or equivalent reproducible environment) that provides a one-command developer environment (e.g., nix develop) with the right Node version, pnpm, Rust, Go, and any other tooling needed. Start with a prototype for satp-hermes, then expand to additional packages.

Describe alternatives you've considered

  • Provide Docker-based developer images (less flexible for local development and filesystem integration).
  • Document manual setup steps (error-prone and time-consuming).

Additional context
Deliverables:

  1. Nix flake under dev/flake.nix or repo root
  2. README with usage instructions
  3. Short guide for contributors to run common tasks (bootstrap/test/lint)´
  4. Cleanup old onboarding docs

Metadata

Metadata

Assignees

No one assigned

    Labels

    cleanupdocumentationImprovements or additions to documentationenhancementNew feature or request

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions