cenv -- Chicken 5 virtual environments

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

cenv -- Chicken 5 virtual environments

Jim Ursetto-2
Hola, amigos. I’ve written a little script, cenv, which takes the pain out of using user repositories. It's called cenv because coops was taken. It’s modeled somewhat on Python virtualenv, though it’s more simplistic.

## Description

A single `csi` script, `cenv.scm`, which creates a self-contained Chicken 5 environment in a specified directory. It remembers which Chicken you used to create it, and it keeps its own repository of eggs, which extends that base Chicken.

When the environment is active, `csi` and `csc` and compiled programs use this repository, falling back to the base repository if an extension does not exist. `chicken-install` installs eggs into this new repository. `chicken-uninstall` is limited to the new repository, and `chicken-status` shows both. Generally, everything behaves as you expect.

`cenv` could be useful if:

- You are a regular user using the system Chicken and you have no permissions to, or don't want to, install eggs systemwide.
- You want to test or switch between different versions of eggs, without creating an entire Chicken installation to house them.

Chicken-users mailing list
[hidden email]