.local-bin/docs/add_ipykernel/Usage.md

59 lines
1.8 KiB
Markdown

## [add_ipykernel](../../scripts/add_ipykernel)
Adds Python virtual environments as Jupyter ipykernel options.
## Description
This script automates the creation and registration of Python environments as Jupyter kernels. It supports both conda and pip virtual environments.
## Usage
```bash
./add_ipykernel.sh ENV_NAME [--create] [--verbose] [pkg1 pkg2 ...]
```
## Arguments
- `ENV_NAME`: Name of the environment/kernel to create or use
- `--create`: Create a new environment if it doesn't exist
- `--verbose`: Enable detailed output
- `pkg1 pkg2 ...`: Additional packages to install
## Examples
```bash
# Create new conda environment and register as kernel
./add_ipykernel.sh ds_env --create python=3.11 pandas
# Use existing environment
./add_ipykernel.sh ds_env --verbose
# Create pip venv with specific packages
./add_ipykernel.sh myproject --create numpy scipy matplotlib
```
## Package Manager Detection
The script automatically detects the appropriate package manager:
- **conda**: Used if environment exists in conda or if `environment.yml`/`conda.yaml` is present
- **pip**: Used if `requirements.txt` or `pyproject.toml` exists, or if already in a virtual environment
## What It Does
1. Detects package manager (conda or pip)
2. Creates environment if `--create` flag is used
3. Activates the environment
4. Installs `ipykernel` if not present
5. Registers the environment as a Jupyter kernel with display name `Python (ENV_NAME)`
## Requirements
- conda (for conda environments) OR python3 with venv (for pip environments)
- Jupyter installed (for kernel registration)
## Notes
- Kernels are registered in user space (`--user` flag)
- After registration, the kernel appears in Jupyter as "Python (ENV_NAME)"
- If environment already exists, just registers it without modifying packages