Pre Workshop Checklist - skoriche/NGIAB-Calibration-DevCon25 GitHub Wiki

Pre-Workshop Checklist

This page contains all prerequisites and setup requirements for the NGIAB Calibration workshop.

Knowledge and Experience

It is recommended that participants have:

  • Familiarity with using Python
  • Experience with Git and GitHub for version control
  • Some prior knowledge of Docker concepts and basic commands
  • Comfort working with a command line/terminal interface
  • Prior exposure to the NextGeneration Water Resource Modeling Framework (NextGen Framework) OR completion of/familiarity with the NGIAB 101 workshop content (see NGIAB 101 Workshop Materials)

Required Software

Minimum Requirements

All participants need:

  • Docker - For running containerized environments
  • UV - Python package and project manager

Installation Instructions

🐧 Linux Installation

Install Docker

# Ubuntu/Debian
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
# Log out and back in, or restart your session

Install UV

curl -LsSf https://astral.sh/uv/install.sh | sh
#To add $HOME/.local/bin to your PATH, either restart your shell or run:
    source $HOME/.local/bin/env (sh, bash, zsh)
    #source $HOME/.local/bin/env.fish (fish)

Verify Installation

docker --version
uv --version
🍎 macOS Installation

Install Docker

  1. Download Docker Desktop for Mac
  2. Install and start Docker Desktop

Install UV

# Using Homebrew (recommended)
brew install uv

# Or using curl
curl -LsSf https://astral.sh/uv/install.sh | sh

Verify Installation

docker --version
uv --version
🪟 Windows (WSL2) Installation

Enable WSL2

  1. Open PowerShell as Administrator and run:
wsl --install
  1. Restart your computer
  2. Set up your Linux distribution (Ubuntu recommended)

Install Docker Desktop

  1. Download Docker Desktop for Windows
  2. Install with WSL2 backend enabled
  3. In Docker Desktop settings, ensure "Use the WSL 2 based engine" is checked

Install UV (in WSL2 terminal)

curl -LsSf https://astral.sh/uv/install.sh | sh
#To add $HOME/.local/bin to your PATH, either restart your shell or run:
    source $HOME/.local/bin/env (sh, bash, zsh)
    #source $HOME/.local/bin/env.fish (fish)

Verify Installation (in WSL2)

docker --version
uv --version

Additional Software (Optional)

For those who prefer to use their local machine or want a complete development environment:

  • Git: For cloning repositories
  • Python 3.11+: While not required (UV handles Python), useful for local development
  • IDE or Code Editor: Your preferred editor (e.g., VSCode, PyCharm, Sublime Text, Vim)

Workshop Access

Jetstream Virtual Machines

Workshop participants will be provided with access to a Virtual Machine (VM) on NSF Jetstream, which will have all necessary software and packages pre-installed.

Important: Detailed instructions for accessing the VM will be emailed to registered attendees before the conference.

To connect to your Jetstream instance:

ssh -L 5906:localhost:5906 exouser@IP-ADDRESS #000.000.000.000

Local Setup Option

If you prefer to use your local machine:

  1. Download workshop data:

    wget https://communityhydrofabric.s3.us-east-1.amazonaws.com/example_data/provo-10154200.tar.gz
    tar -xzf provo-10154200.tar.gz

    or click here to download

  2. Pre-download Docker image (optional, speeds up first run):

    docker pull awiciroh/ngiab-cal

Optional Accounts

  • GitHub account: For accessing repositories and potential collaborative tasks

Verification Steps

Before the workshop, please verify your setup:

  1. Check Docker is running:

    docker run hello-world
  2. Check UV is installed:

    uvx --version
  3. Test the tools (optional):

    # This will download and run a quick test
    uvx ngiab-cal --help

Troubleshooting

Having issues with setup? Check our Troubleshooting Guide or contact us for help.

Back to Home

⚠️ **GitHub.com Fallback** ⚠️