Skip to content

Addressing the issue of clear build and install instructions for majo… - #3947

Open
HappiProgrammer wants to merge 1 commit into
mimblewimble:masterfrom
HappiProgrammer:Clear-Build-and-Install-Instructions-for-each-Major-Os
Open

HappiProgrammer wants to merge 1 commit into
mimblewimble:masterfrom
HappiProgrammer:Clear-Build-and-Install-Instructions-for-each-Major-Os

Conversation

@HappiProgrammer

Copy link
Copy Markdown

Implement GitHub issue #2559 in the Grin repository:

Clear Build and Install Instructions for each Major OS
Issue: #2559

First, inspect the repository and determine the current, correct build process. Pay particular attention to:

  • doc/build.md
  • README.md
  • Cargo.toml
  • rust-toolchain / rust-toolchain.toml, if present
  • CI/workflow files
  • Existing platform-specific documentation

Task

Improve doc/build.md so a new contributor can build and run Grin from source without having to search through the repository.

Organize the document into clear sections for the major operating systems that the repository actually supports, such as:

  • Linux
  • macOS
  • Windows

For each supported OS, document:

  1. Prerequisites and required system dependencies.
  2. Rust/toolchain setup.
  3. Repository cloning.
  4. Building Grin.
  5. Running Grin.
  6. How to verify the build.
  7. Relevant platform-specific notes or troubleshooting.

Use actual commands from the repository and make them copy-pasteable.

Also document:

  • Debug/development builds vs release builds, where applicable.
  • The actual Grin executable/binary name.
  • Existing repository-supported tests or verification commands.
  • Important build requirements.

Critical rules

  • Do not guess or invent commands, dependencies, versions, or OS support.
  • Use the repository's current configuration as the source of truth.
  • Do not blindly copy outdated instructions from the GitHub issue.
  • Preserve useful existing documentation.
  • Keep the changes focused on issue Clear Build and Install Instructions for each Major OS #2559.
  • Prefer changing only doc/build.md.
  • Do not modify Rust source code.
  • Do not modify Cargo configuration or CI.
  • Do not add dependencies.
  • Do not create unrelated documentation.

Before finishing

Review the final doc/build.md as if you were a first-time Grin contributor.

Verify that:

  • Instructions are technically consistent with the repository.
  • Commands are correct.
  • Markdown formatting is clean.
  • OS sections have a consistent structure.
  • No unsupported platform is presented as supported.
  • No unrelated files were modified.

Finally, show me:

  1. Files changed.
  2. A concise summary of the changes.
  3. Any OS-specific limitations discovered.
  4. Any commands that could not be verified.
  5. A short explanation of how the changes satisfy issue Clear Build and Install Instructions for each Major OS #2559.

Do not make unrelated changes.

Comment thread doc/build.md
Then start a Grin node:

```sh
grin server run

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this command is rather for servers, at desktop users launch it with grin.

Comment thread doc/build.md
Then start a Grin node:

```sh
grin server run

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as for Linux, users at desktop type grin, they can run using target/release/grin

Comment thread doc/build.md
```sh
export PATH=`pwd`/target/release:$PATH
rustup target add x86_64-apple-darwin
cargo build --release --target x86_64-apple-darwin

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you dont need to specify target at actual platform to launch just with target/release/grin/

Comment thread doc/build.md

```sh
export PATH=`pwd`/target/release:$PATH
rustup target add x86_64-apple-darwin

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

at x86 this target is installed by default

Comment thread doc/build.md
.\target\release\grin.exe server run
```

Or add `target\release` to your `PATH` and run `grin server run`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to mention command grin to have TUI interface at desktop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants