uv/crates/gourgeist
konsti 1c0e03f807
puffin_interpreter cleanup ahead of #235 (#492)
Preparing for #235, some refactoring to `puffin_interpreter`.

* Added a dedicated error type instead of anyhow
* `InterpreterInfo` -> `Interpreter`
* `detect_virtual_env` now returns an option so it can be chained for
#235
2023-11-23 08:57:33 +00:00
..
src puffin_interpreter cleanup ahead of #235 (#492) 2023-11-23 08:57:33 +00:00
static Copy over gourgeist crate (#61) 2023-10-08 14:37:09 -04:00
benchmark.sh Copy over gourgeist crate (#61) 2023-10-08 14:37:09 -04:00
Cargo.toml Use Clippy lint table over Cargo config (#490) 2023-11-22 15:10:27 +00:00
compare_in_git.sh Copy over gourgeist crate (#61) 2023-10-08 14:37:09 -04:00
imasnake.py Copy over gourgeist crate (#61) 2023-10-08 14:37:09 -04:00
oranda.json Copy over gourgeist crate (#61) 2023-10-08 14:37:09 -04:00
README.md Enable release builds via cargo-dist (#79) 2023-10-09 20:48:55 +00:00
venv_checker.py Unify python interpreter abstractions (#178) 2023-10-25 20:11:36 +00:00

Gourgeist

Gourgeist is a rust library to create python virtual environments. It also has a CLI.

It currently supports only unix (linux/mac), windows support is missing.

Rust

use camino::Utf8PathBuf;
use gourgeist::{create_venv, get_interpreter_info, parse_python_cli};

let location = cli.path.unwrap_or(Utf8PathBuf::from(".venv"));
let python = parse_python_cli(cli.python)?;
let data = get_interpreter_info(&python)?;
create_venv(&location, &python, &data, cli.bare)?;

CLI

Use python as base for a virtualenv .venv:

gourgeist

Or use custom defaults:

gourgeist -p 3.11 my_env

Jessie's gourgeist

Jessie's gourgeist, a pokemon with a jack o'lantern as body