This guide covers setting up Google Gemini on Windows Subsystem for Linux (WSL2), providing a Linux environment on Windows systems for DevOps professionals.
Prerequisites
Windows 10 version 2004+ or Windows 11
WSL2 installed and configured
A Linux distribution installed via WSL (Ubuntu recommended)
Python 3.9+ installed on your WSL distribution
A Google Cloud account with Gemini API access
Installation Steps
1. Prepare Your WSL Environment
First, ensure your WSL environment is up-to-date:
# Open your WSL terminal
wsl
# Update your Linux distribution
sudo apt update && sudo apt upgrade -y
# Install Python dependencies
sudo apt install -y python3-pip python3-venv python3-dev build-essential
2. Create a Python Virtual Environment
# Navigate to your home directory or preferred project directory
cd ~
# Create a directory for your Gemini projects
mkdir -p gemini-projects && cd gemini-projects
# Create a virtual environment
python3 -m venv gemini-env
# Activate the environment
source gemini-env/bin/activate
3. Install Google Generative AI SDK
# Upgrade pip
pip install --upgrade pip
# Install the Gemini Python SDK
pip install google-generativeai
# For more advanced features with Vertex AI
pip install -U "google-cloud-aiplatform[stable]"
# Download your service account key to your Windows filesystem
# For example to C:\Users\YourName\Documents\service-account.json
# Create directory for credentials in WSL
mkdir -p ~/.config/gcloud
# Copy the file to your WSL filesystem
cp /mnt/c/Users/YourName/Documents/service-account.json ~/.config/gcloud/
# Set the environment variable
echo 'export GOOGLE_APPLICATION_CREDENTIALS="$HOME/.config/gcloud/service-account.json"' >> ~/.bashrc
source ~/.bashrc
5. Install Google Cloud CLI (Optional but Recommended)
# Download and install the Google Cloud CLI
curl https://sdk.cloud.google.com | bash
# Restart your shell
exec -l $SHELL
# Initialize gcloud
gcloud init
# Install AI Platform components
gcloud components install ai-platform
6. Verify Installation
Create a test file:
cat > test_gemini.py << 'EOF'
import google.generativeai as genai
import os
# Configure the API key
genai.configure(api_key=os.getenv("GOOGLE_API_KEY"))
# Test the API
model = genai.GenerativeModel('gemini-pro')
result = model.generate_content("Create a brief explanation of what WSL2 is for DevOps engineers")
print(result.text)
EOF
# Run the test
python test_gemini.py
WSL-Specific Considerations
Filesystem Performance
For best performance when working with large projects:
# Store projects in the Linux filesystem, not Windows
mkdir -p ~/gemini-projects
# Avoid working from /mnt/c/ when possible for performance-sensitive tasks
GPU Acceleration for ML Workloads
WSL2 supports GPU acceleration, which can improve performance for large ML operations:
Install the latest NVIDIA CUDA drivers on Windows
Install CUDA support in your WSL distribution:
sudo apt install -y nvidia-cuda-toolkit
Verify GPU access from WSL:
nvidia-smi
Windows/WSL Integration
You can integrate Gemini with both Windows and Linux tools:
# Create a Windows alias for your Gemini environment (add to Windows PowerShell profile)
function gemini-wsl { wsl -d Ubuntu -u your-username "cd ~/gemini-projects && source gemini-env/bin/activate && python3 $args" }
Troubleshooting WSL-Specific Issues
Network Connectivity Issues:
# If you encounter network issues, edit /etc/resolv.conf
sudo nano /etc/resolv.conf
# Add or modify: nameserver 8.8.8.8
File Permission Problems:
# Fix permissions for key files
chmod 600 ~/.config/gcloud/service-account.json
WSL Memory Limitations:
Create a .wslconfig file in your Windows user directory: