Skip to content

feat: add automated install script for Linux/WSL setup - #17

Open
EclipseWraith wants to merge 1 commit into
nsb-ucsc:mainfrom
EclipseWraith:feat/install-script
Open

EclipseWraith wants to merge 1 commit into
nsb-ucsc:mainfrom
EclipseWraith:feat/install-script

Conversation

@EclipseWraith

Copy link
Copy Markdown

Summary

Adds (install.sh), a single-command automated installer that replaces
the 9-step manual setup process for Linux and WSL.

What it does

Running (./install.sh) will:

  1. Install system packages via apt (cmake, redis, python3, etc.)
  2. Build and install Abseil from source (skips if already installed)
  3. Build and install Protobuf v27.5 from source (skips if already installed)
  4. Compile the NSB daemon
  5. Set up the Python client with pip

The script also handles the known proto file nesting bug automatically
(where protoc generates files into proto/proto/ instead of proto/).

Features

  • Skips Abseil/Protobuf if already installed (safe to re-run)
  • Terminal output for clear progress tracking
  • Cleanup trap ensures temp build directories are removed on failure
  • Works on both native Linux and WSL (Ubuntu 24.04)

Testing

Tested on WSL Ubuntu 24.04 in two separate directories:

  • Fresh install from the repo root
  • Clean reinstall in same directory

Both passed all verification checks:

  • Redis: PONG
  • Daemon: Server started on port 65432
  • Python proto import: OK
  • Python client connection to daemon: OK

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.

1 participant