~ chicken-core (chicken-5) /chicken-install.mdoc


  1.\"  Copyright (c) 2007-2022, The CHICKEN Team
  2.\"  All rights reserved.
  3.\"
  4.\"  Redistribution and use in source and binary forms, with or without
  5.\"  modification, are permitted provided that the following conditions
  6.\"  are met:
  7.\"  1. Redistributions of source code must retain the above copyright
  8.\"     notice, this list of conditions and the following disclaimer.
  9.\"  2. Redistributions in binary form must reproduce the above copyright
 10.\"     notice, this list of conditions and the following disclaimer in the
 11.\"     documentation and/or other materials provided with the distribution.
 12.\"  3. The name of the authors may not be used to endorse or promote products
 13.\"     derived from this software without specific prior written permission.
 14.\"
 15.\"  THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
 16.\"  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 17.\"  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 18.\"  IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 19.\"  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 20.\"  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 21.\"  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 22.\"  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 23.\"  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 24.\"  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 25.\"
 26.\"
 27.Dd Apr 26, 2017
 28.Dt CHICKEN-INSTALL 1
 29.Os
 30.Sh NAME
 31.Nm chicken-install
 32.Nd download and install extension libraries for CHICKEN Scheme
 33.Sh SYNOPSIS
 34.Nm
 35.Op Ar OPTION ...
 36.Op Ar NAME[:VERSION] ...
 37.Sh DESCRIPTION
 38.Nm
 39downloads, compiles and installs a prepackaged extension library from sources.
 40If no extension name is given on the command line, then any existing
 41.Em egg
 42descriptions in the current directory will be executed in unspecified order.
 43.Pp
 44The program accepts following arguments:
 45.Bl -tag -width Ds
 46.It Fl h , Fl help
 47Show usage and exit.
 48.It Fl version
 49Show version and exit.
 50.It Fl v , Fl verbose
 51Print extra information during installation.
 52.It Fl force
 53Install without confirmation, even if versions don't match.
 54.It Fl k , Fl keep
 55Keep temporary files.
 56.It Fl s , Fl sudo
 57Use an external program to elevate privileges for filesystem operations.
 58The program defaults to
 59.Xr sudo 8
 60but can be overridden with the
 61.Ev SUDO
 62environment variable.
 63.It Fl r , Fl retrieve
 64Just retrieve the egg, don't install it
 65.No (giving Fl r No more than once implies Fl recursive Ns ).
 66.It Fl recursive
 67.No If Fl retrieve No is given, also fetch dependencies recursively.
 68.It Fl dry-run
 69Do not build or install, just print the locations of the generated build
 70& install scripts.
 71.It Fl list-versions
 72List available versions for the given eggs.
 73.It Fl purge
 74Remove cached files for given eggs (or purge cache completely).
 75.It Fl host
 76When cross-compiling, only compile extensions for host.
 77.It Fl target
 78When cross-compiling, only compile extensions for target.
 79.It Fl test
 80Run included test cases, if available.
 81.It Fl n , Fl no-install
 82Do not install the egg, just build it.
 83.It Fl no-install-dependencies
 84Do not install dependencies. Note that this option may result in build
 85failures due to missing extension libraries.
 86.It Fl u , Fl update-db
 87Update export database.
 88.It Fl repository
 89Print path used for egg installation.
 90.It Fl override Ar filename
 91Override versions for installed eggs with information from
 92.Ar filename .
 93.It Fl from-list Ar filename
 94Install eggs listed in
 95.Ar filename ,
 96which has the same format as
 97.Xr chicken-status 1 Ns 's
 98.Fl list No output.
 99This option may be given multiple times.
100.It Fl cached
101Only install eggs from cache, do not download.
102.It Fl l , Fl location Ar directory
103Get egg sources from the given directory.  
104May be provided multiple times.
105Locations specified on the command line have precedence over the
106ones specified in setup.defaults.
107.It Fl feature , Fl D Ar name
108Register feature 
109.Ar name ,
110usable as a condition in cond-expand clauses.
111.El
112.Sh ENVIRONMENT
113Following environment variables change the behaviour of
114.Nm Ns :
115.Bl -tag -width CHICKEN_INSTALL_REPOSITORY
116.It Ev CHICKEN_EGG_CACHE
117Location where eggs are retrieved and built.
118.It Ev CHICKEN_INSTALL_PREFIX
119The path prefix for all target files, as given when building the system.
120Use this variable to override where programs, include files and additional
121data files shall be installed.
122.It Ev CHICKEN_INSTALL_REPOSITORY
123The path where extension libraries are installed. Defaults to the
124package library path selected during configuration
125.Pq usually $prefix/lib/chicken/<binary-version> .
126Note that this variable takes precedence to CHICKEN_INSTALL_PREFIX.
127.It Ev SUDO
128The command to execute when using
129.Fl s
130flag in command. If not provided, defaults to
131.Xr sudo 8 .
132.El
133.Sh FILES
134.Bl -tag -width 4n
135.It Pa $XDG_CONFIG_HOME/chicken/setup.defaults
136User specific setup.defaults file. (
137.Ev $XDG_CONFIG_HOME
138defaults to
139.Pa $HOME/.config
140)
141.It Pa $prefix/share/chicken/setup.default
142System-wide setup.defaults file.
143.It Pa $XDG_CACHE_HOME/chicken-install/
144Default directory for cached eggs. (
145.Ev $XDG_CACHE_HOME
146defaults to
147.Pa $HOME/.cache
148)
149.El
150.Sh EXIT STATUS
151The
152.Nm
153utility exits 0 on success, 2 if the user aborted an operation, 3 if it
154was invoked with no explicitly given egg names and no *.egg files could
155be found in the current directory, and >0 if any other error occurs.
156.Sh EXAMPLES
157Install
158.Sq regex
159egg as root user:
160.Pp
161.Dl # chicken-install regex
162.Pp
163Install an egg as an normal user but using
164.Xr sudo 8 :
165.Pp
166.Dl $ chicken-install -s regex
167.Pp
168Install an egg as an normal user but elevating privileges with different program, such as OpenBSD
169.Xr doas 1 :
170.Pp
171.Dl $ SUDO=/usr/bin/doas chicken-install -s regex
172.Sh SEE ALSO
173.Xr chicken 1 ,
174.Xr chicken-status 1 ,
175.Xr chicken-uninstall 1 ,
176.Xr csc 1
177.Pp
178More information can be found in the
179.Lk http://wiki.call-cc.org/manual/index "CHICKEN User's Manual".
180.Sh AUTHORS
181.An The CHICKEN Team
182.Sh BUGS
183Submit bug reports by e-mail to
184.Mt chicken-janitors@nongnu.org
Trap