From 79be91e305d8a7425f701a24a80064e50a6dff7a Mon Sep 17 00:00:00 2001 From: efebahadirgur Date: Thu, 30 Oct 2025 12:27:18 -0700 Subject: [PATCH 01/11] Windows easy install --- install_windows.ps1 | 125 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 install_windows.ps1 diff --git a/install_windows.ps1 b/install_windows.ps1 new file mode 100644 index 0000000..291e048 --- /dev/null +++ b/install_windows.ps1 @@ -0,0 +1,125 @@ +<# +Solo Server – Windows Installer +Command to run the installer: + powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 +#> + +# --- Ensure user-local Python bin directory is in PATH (for uv, pipx etc) --- +$UserPath = [System.Environment]::GetEnvironmentVariable('Path', 'User') +$BinPath = "$env:USERPROFILE\.local\bin" +$PathWasChanged = $false +if ($UserPath -notlike "*$BinPath*") { + [System.Environment]::SetEnvironmentVariable('Path', "$UserPath;$BinPath", 'User') + # Also add to the current process PATH so this script can use tools immediately + if ($env:Path -notlike "*$BinPath*") { $env:Path = "$env:Path;$BinPath" } + Write-Host "`n✔️ Added $BinPath to your user PATH and this session's PATH." -ForegroundColor Green + $PathWasChanged = $true +} else { + Write-Host "`n$BinPath already in your user PATH." -ForegroundColor Yellow +} + +# Continue without exiting; this session has PATH updated. You may still need to +# restart future terminals for the persistent user PATH to be picked up. + +Set-StrictMode -Version Latest +$ErrorActionPreference = "Stop" + +Write-Host "`n=== Solo Server – Windows Installation ===`n" -ForegroundColor Cyan + +function Have($cmd) { $null -ne (Get-Command $cmd -ErrorAction SilentlyContinue) } + +# --- 0) Pre-flight: where are we? -------------------------------------------- +if (-not (Test-Path ".git")) { + Write-Warning "This doesn't look like the repo root ('.git' not found). Continuing anyway..." +} + +# --- 1) Ensure Python 3.12 is available ------------------------------------- +$wantPy = "3.12" +Write-Host "Checking for Python $wantPy..." -ForegroundColor Cyan +$hasPy = $false +try { + & py -$wantPy --version | Out-Null + if ($LASTEXITCODE -eq 0) { $hasPy = $true } +} catch { } + +if (-not $hasPy) { + Write-Host "Python $wantPy not found via 'py' launcher. Attempting install with winget..." -ForegroundColor Yellow + if (-not (Have winget)) { + throw "winget is not available. Install Python $wantPy manually from https://www.python.org/downloads/windows/ then re-run." + } + winget install --id Python.Python.3.12 -e --source winget --accept-source-agreements --accept-package-agreements + Write-Host "Re-checking Python $wantPy..." -ForegroundColor Yellow + & py -$wantPy --version | Out-Host +} + +# --- 2) Ensure uv is installed ---------------------------------------------- +Write-Host "Checking for 'uv'..." -ForegroundColor Cyan +if (-not (Have uv)) { + Write-Host "Installing uv..." -ForegroundColor Yellow + +# irm https://astral.sh/uv/install.ps1 | iex + $script = Invoke-RestMethod -Uri 'https://astral.sh/uv/install.ps1' + Invoke-Expression $script + + if (-not (Have uv)) { + throw "uv installation appears to have failed. Close/reopen PowerShell and try again." + } +} +uv --version | Out-Host + +# --- 3) Create (or reuse) the venv ------------------------------------------ +$venv = "solo_venv" # matches Mac docs +if (Test-Path ".\$venv") { + Write-Host "Virtual environment '$venv' already exists. Reusing it." -ForegroundColor Yellow +} else { + Write-Host "Creating virtual environment '$venv' with Python $wantPy..." -ForegroundColor Cyan + uv venv $venv --python $wantPy +} + +# --- 4) Optional: seed .env from example ------------------------------------- +if ((Test-Path ".\.env") -eq $false -and (Test-Path ".\.env.example")) { + Copy-Item ".\.env.example" ".\.env" + Write-Host "Created .env from .env.example (edit as needed)." -ForegroundColor DarkCyan +} + +# --- 5) Set env vars for mujoco (if your project needs them) ----------------- +# Adjust as needed; harmless if not used. +$env:MUJOCO_PATH = "" +$env:MUJOCO_GL = "osmesa" + +# --- 6) Activate & install in editable mode with fallback -------------------- +Write-Host "Activating venv and installing project (editable)..." -ForegroundColor Cyan +$activate = ".\$venv\Scripts\Activate.ps1" +if (-not (Test-Path $activate)) { throw "Activate script not found at $activate" } + +# Tip: one subshell so we don't permanently modify this window's PATH +$installBlock=@' +& "$env:ACTIVATE" +try { + uv pip install -e . +} catch { + Write-Host "Primary install failed. Trying fallback path..." -ForegroundColor Yellow + uv pip install typer GPUtil psutil requests rich huggingface_hub pydantic transformers accelerate num2words + uv pip install lerobot --no-deps + uv pip install torch torchvision torchaudio + uv pip install gymnasium + uv pip install opencv-python + uv pip install pillow + uv pip install -e . +} +'@ + +$env:ACTIVATE = (Resolve-Path $activate).Path +powershell -NoProfile -ExecutionPolicy Bypass -Command $installBlock + +Write-Host "" +Write-Host "✅ Installation completed." +Write-Host "To start using it in this shell, run:" +Write-Host " .\$venv\Scripts\Activate.ps1" +Write-Host "Then verify:" +Write-Host " python --version (should be $wantPy.x)" +Write-Host " pip list" +Write-Host "" +Write-Host " solo --help" +Write-Host "" + From 8341550597e8fdcbcb4ec54a0c51680241ee7267 Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:17:20 -0700 Subject: [PATCH 02/11] Add Windows automated installation instructions Added automated PowerShell installation instructions for Windows users, including steps for cloning the repository, running the installation script, and verifying the setup. --- README.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f8ad344..232d4dc 100644 --- a/README.md +++ b/README.md @@ -82,6 +82,24 @@ source solo_venv/bin/activate [![Video: Mac Quickstart Installation](media/MacQuickInstallThumbnail.png)](https://youtu.be/bGjaIfKvyAA) +Quick Installation for Windows (Automated) +For Windows users, we provide an automated PowerShell installation script that handles all setup steps. +# Clone the repository +git clone https://github.com/GetSoloTech/solo-server.git +cd solo-server + +# Run the automated installation +powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 +The script will automatically: +Ensure Python 3.12 is installed (installs via Winget if missing) +Install the uv package manager +Create a virtual environment named solo_venv +Set environment variables for MuJoCo (if needed) +Install solo-server in editable (development) mode with fallback dependency setup +After installation, activate the virtual environment: +.\solo_venv\Scripts\Activate.ps1 +Then verify your setup +solo --help # test the CLI ## Solo Commands: @@ -202,4 +220,4 @@ Navigate to config file 2. Create feature branch (`git checkout -b feature/name`) 3. Commit changes (`git commit -m 'Add feature'`) 4. Push to branch (`git push origin feature/name`) -5. Open Pull Request \ No newline at end of file +5. Open Pull Request From a3a15d2f5e10e53477cc59e96ea4ac90981cd7ae Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:18:53 -0700 Subject: [PATCH 03/11] Change header for Windows installation instructions Updated the section header for Windows installation. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 232d4dc..580ca85 100644 --- a/README.md +++ b/README.md @@ -82,7 +82,7 @@ source solo_venv/bin/activate [![Video: Mac Quickstart Installation](media/MacQuickInstallThumbnail.png)](https://youtu.be/bGjaIfKvyAA) -Quick Installation for Windows (Automated) +## Quick Installation for Windows (Automated) For Windows users, we provide an automated PowerShell installation script that handles all setup steps. # Clone the repository git clone https://github.com/GetSoloTech/solo-server.git From 7babf7f53d0233adebdf00f523cbc47ee9fd96dc Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:26:37 -0700 Subject: [PATCH 04/11] Add Windows automated installation instructions Added automated PowerShell installation instructions for Windows users, detailing the steps and commands for setup. --- README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 580ca85..81f4a40 100644 --- a/README.md +++ b/README.md @@ -84,12 +84,15 @@ source solo_venv/bin/activate ## Quick Installation for Windows (Automated) For Windows users, we provide an automated PowerShell installation script that handles all setup steps. +```bash # Clone the repository git clone https://github.com/GetSoloTech/solo-server.git cd solo-server - +``` # Run the automated installation +```bash powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 +``` The script will automatically: Ensure Python 3.12 is installed (installs via Winget if missing) Install the uv package manager @@ -97,9 +100,11 @@ Create a virtual environment named solo_venv Set environment variables for MuJoCo (if needed) Install solo-server in editable (development) mode with fallback dependency setup After installation, activate the virtual environment: +```bash .\solo_venv\Scripts\Activate.ps1 Then verify your setup solo --help # test the CLI +``` ## Solo Commands: From 219533d65d41a03f87e869b267ca0a941fd14740 Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:28:04 -0700 Subject: [PATCH 05/11] Revise Windows installation section in README Removed detailed automated installation instructions for Windows and replaced with a brief section header. --- README.md | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/README.md b/README.md index 81f4a40..245b4a3 100644 --- a/README.md +++ b/README.md @@ -82,29 +82,7 @@ source solo_venv/bin/activate [![Video: Mac Quickstart Installation](media/MacQuickInstallThumbnail.png)](https://youtu.be/bGjaIfKvyAA) -## Quick Installation for Windows (Automated) -For Windows users, we provide an automated PowerShell installation script that handles all setup steps. -```bash -# Clone the repository -git clone https://github.com/GetSoloTech/solo-server.git -cd solo-server -``` -# Run the automated installation -```bash -powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 -``` -The script will automatically: -Ensure Python 3.12 is installed (installs via Winget if missing) -Install the uv package manager -Create a virtual environment named solo_venv -Set environment variables for MuJoCo (if needed) -Install solo-server in editable (development) mode with fallback dependency setup -After installation, activate the virtual environment: -```bash -.\solo_venv\Scripts\Activate.ps1 -Then verify your setup -solo --help # test the CLI -``` +## **Windows quick installation** ## Solo Commands: From 466332e4abcc8075f10a9ec5ba4872aae76414a6 Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:29:31 -0700 Subject: [PATCH 06/11] Clarify Windows installation section in README Updated the Windows installation section to clarify it as a quick download. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 245b4a3..aa6889c 100644 --- a/README.md +++ b/README.md @@ -82,7 +82,8 @@ source solo_venv/bin/activate [![Video: Mac Quickstart Installation](media/MacQuickInstallThumbnail.png)](https://youtu.be/bGjaIfKvyAA) -## **Windows quick installation** + +## Windows quick download: ## Solo Commands: From 5849678a3a1fd3440f14206801a47d46d2034bb6 Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:32:57 -0700 Subject: [PATCH 07/11] Revise Windows installation section in README Updated the section title for Windows installation and added a brief description about the automated installation script. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index aa6889c..028808e 100644 --- a/README.md +++ b/README.md @@ -83,7 +83,8 @@ source solo_venv/bin/activate -## Windows quick download: +## Quick İnstallation for Windows (Automated): +For Windows users, we provide an automated installation script that handles all the setup steps: ## Solo Commands: From 0409852d56d82f7ce033e2b4f3a239572926043d Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:33:57 -0700 Subject: [PATCH 08/11] Update README.md --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 028808e..c251510 100644 --- a/README.md +++ b/README.md @@ -85,6 +85,12 @@ source solo_venv/bin/activate ## Quick İnstallation for Windows (Automated): For Windows users, we provide an automated installation script that handles all the setup steps: +# Clone the repository +git clone https://github.com/GetSoloTech/solo-server.git +cd solo-server +# Run the automated installation +powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 + ## Solo Commands: From f0114d0ae257e6793147a80cf493c1a47e1d7517 Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:35:08 -0700 Subject: [PATCH 09/11] Update README with Windows installation script Added automated installation instructions for Windows users. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c251510..f49a8e9 100644 --- a/README.md +++ b/README.md @@ -85,12 +85,13 @@ source solo_venv/bin/activate ## Quick İnstallation for Windows (Automated): For Windows users, we provide an automated installation script that handles all the setup steps: +``` # Clone the repository git clone https://github.com/GetSoloTech/solo-server.git cd solo-server # Run the automated installation powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 - +``` ## Solo Commands: From ba765b3430fbf6a7503aeaf9b936225be9b0bd3c Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:37:06 -0700 Subject: [PATCH 10/11] Update README with virtual environment activation steps Added instructions for activating the virtual environment after installation. --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index f49a8e9..47f4cec 100644 --- a/README.md +++ b/README.md @@ -89,8 +89,14 @@ For Windows users, we provide an automated installation script that handles all # Clone the repository git clone https://github.com/GetSoloTech/solo-server.git cd solo-server + # Run the automated installation powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 + +# After installation, activate the virtual environment: +.\solo_venv\Scripts\Activate.ps1 +Then verify your setup +solo --help ``` ## Solo Commands: From 0f6ee5dc51346dc078ecaea9045b0c609565faad Mon Sep 17 00:00:00 2001 From: efebahadirgur <112219135+efebahadirgur@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:38:18 -0700 Subject: [PATCH 11/11] Update README with PowerShell execution policy Added PowerShell execution policy command for activation. --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 47f4cec..e73ca9e 100644 --- a/README.md +++ b/README.md @@ -94,8 +94,10 @@ cd solo-server powershell -ExecutionPolicy Bypass -File .\install_windows.ps1 # After installation, activate the virtual environment: +Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass .\solo_venv\Scripts\Activate.ps1 -Then verify your setup + +# Then verify your setup solo --help ```