source: project/wiki/eggs @ 31441

Last change on this file since 31441 was 31441, checked in by sjamaan, 7 years ago

Add CHICKEN 5 index and feed to the "eggs" page

File size: 3.3 KB
Line 
1== Eggs
2
3[[toc:]]
4[[tags:navigation]]
5
6== Introduction
7
8''Eggs'' are CHICKEN-specific extension libraries, conveniently packaged
9in a source archive. They are stored in a centralized repository and can
10be downloaded and installed (mostly) automatically. You can create a [[running-an-egg-mirror|local mirror]] of the repository, if you prefer.
11
12[[http://wiki.call-cc.org/chicken-projects/egg-index-4.html|The egg index]]
13is the official list of eggs for the latest CHICKEN major version (4), along with their documentation. If you are looking for eggs for the previous CHICKEN major version (3), they are [[/eggref/3/index|here]]. The eggs for the upcoming new major release (5) are listed [[http://wiki.call-cc.org/chicken-projects/egg-index-5.html|here]].
14
15You can subscribe to the
16[[http://wiki.call-cc.org/chicken-projects/egg-rss-feed-4.xml|egg RSS 2.0 feed for CHICKEN 4]] or that for the upcoming [[http://wiki.call-cc.org/chicken-projects/egg-rss-feed-5.xml|next release]].
17
18
19== Installing eggs
20
21To install any of the eggs, run the following command, replacing {{name}} for the egg's name:
22
23 chicken-install name
24
25This will download the egg and install it. Enter
26
27 chicken-install -help
28
29for a list of options or consult the {{chicken-install(1)}} manual page.
30
31== Loading eggs
32
33To load and import an egg into your program, use:
34
35<enscript highlight="scheme">
36 (require-extension egg-name)      ; load library code, import identifiers
37</enscript>
38
39To restrict, rename, or prefix imported identifiers, you can split up
40the load and import pieces:
41
42<enscript highlight="scheme">
43 (require-library gopher)          ; load library code
44
45 (import (prefix gopher gopher:))  ; import identifiers with a prefix
46</enscript>
47
48== Keeping eggs in an alternative directory
49
50You can keep the eggs repository in a different repository. See the [[/man/4/Extensions#changing-repository-location|Extensions/Changing repository location]] section of the manual for more information on that.
51== Source code
52
53To obtain the source code to an egg, run
54
55 chicken-install -r name
56
57You can also browse the [[http://code.call-cc.org/svn/chicken-eggs/release/4/|Subversion egg repository]]
58on the web (for eggs hosted on call-cc.org -- see the egg documentation for eggs hosted on other sites).
59
60Use the username "anonymous" and the password "".
61
62See [[http://code.call-cc.org]] for instructions about how to checkout code for eggs.
63
64Many eggs in the repository contain {{tags/}} and {{trunk/}} directories --- {{tags/x.y.z}} corresponding to egg version ''x.y.z'', and {{trunk/}} being the development area --- so the last command may check out more code than you want. You can [[http://code.call-cc.org/svn/chicken-eggs/release/4/|browse the repository]] or use {{svn ls}} to find a specific version.  Additionally, the current "release" version number of each egg can be found on the [[http://wiki.call-cc.org/chicken-projects/egg-index-4.html|egg index page]].
65
66
67== Contribute
68
69If you want to help document the eggs, please consult the ''Documentation'' section at the [[eggs tutorial]] page.
70
71If you want to contribute new eggs, you might want to consult the
72[[eggs tutorial]] and the official, automatically built, list of eggs:
73[[http://wiki.call-cc.org/chicken-projects/egg-index-4.html|egg index]].
74
75In case you don't have a Subversion account, check the [[/contribute|Contribute]] page to know how to request one.
Note: See TracBrowser for help on using the repository browser.