chicken-install - Man Page

download and install extension libraries for CHICKEN Scheme


chicken-install[OPTION ...] [NAME[:VERSION] ...]


chicken-install downloads, compiles and installs a prepackaged extension library from sources. If no extension name is given on the command line, then any existing egg descriptions in the current directory will be executed in unspecified order.

The program accepts following arguments:

-h, -help

Show usage and exit.


Show version and exit.

-v, -verbose

Print extra information during installation.


Install without confirmation, even if versions don't match.

-k, -keep

Keep temporary files.

-s, -sudo

Use an external program to elevate privileges for filesystem operations. The program defaults to sudo(8) but can be overridden with the SUDO environment variable.

-r, -retrieve

Just retrieve the egg, don't install it (giving -r more than once implies -recursive).


If -retrieve is given, also fetch dependencies recursively.


Do not build or install, just print the locations of the generated build & install scripts.


List available versions for the given eggs.


Remove cached files for given eggs (or purge cache completely).


When cross-compiling, only compile extensions for host.


When cross-compiling, only compile extensions for target.


Run included test cases, if available.

-n, -no-install

Do not install the egg, just build it.


Do not install dependencies. Note that this option may result in build failures due to missing extension libraries.

-u, -update-db

Update export database.


Print path used for egg installation.

-override filename

Override versions for installed eggs with information from filename.

-from-list filename

Install eggs listed in filename, which has the same format as chicken-status(1)'s -list output. This option may be given multiple times.


Only install eggs from cache, do not download.

-feature, -D name

Register feature name, usable as a condition in cond-expand clauses.


Following environment variables change the behaviour of chicken-install:


Location where eggs are retrieved and built.


The path where extension libraries are installed. Defaults to the package library path selected during configuration (usually $prefix/lib/chicken/<binary-version>).


The command to execute when using -s flag in command. If not provided, defaults to sudo(8).



User specific setup.defaults file. ( $XDG_CONFIG_HOME defaults to $HOME/.config )


System-wide setup.defaults file.


Default directory for cached eggs. ( $XDG_CACHE_HOME defaults to $HOME/.cache )

Exit Status

The chicken-install utility exits 0 on success, 2 if the user aborted an operation, 3 if it was invoked with no explicitly given egg names and no *.egg files could be found in the current directory, and >0 if any other error occurs.


Install ‘regex’ egg as root user:

# chicken-install regex

Install an egg as an normal user but using sudo(8):

$ chicken-install -s regex

Install an egg as an normal user but elevating privileges with different program, such as OpenBSD doas(1):

$ SUDO=/usr/bin/doas chicken-install -s regex

See Also

chicken(1), chicken-status(1), chicken-uninstall(1), csc(1)

More information can be found in the CHICKEN User's Manual.




Submit bug reports by e-mail to

Referenced By

chicken(1), chicken-do(1), chicken-status(1), chicken-uninstall(1).

April 26, 2017