Scroll to navigation



chicken-installdownload 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 descriptions in the current directory will be executed in unspecified order.

The program accepts following arguments:

, -help
Show usage and exit.
Show version and exit.
, -verbose
Print extra information during installation.
Install without confirmation, even if versions don't match.
, -keep
Keep temporary files.
, -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.
, -retrieve
Just retrieve the egg, don't install it (giving -r more than once implies -recursive).
-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.
, -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.
, -update-db
Update export database.
Print path used for egg installation.
Override versions for installed eggs with information from 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.
Install given eggs from cache and do not download.
, -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 /var/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 )


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


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

April 26, 2017 Debian