|
1 |
| -[](https://travis-ci.org/commonlispbr/quicklisp-meta) |
| 1 | +[](https://travis-ci.org/commonlispbr/quicksys) |
2 | 2 |
|
3 |
| -# quicklisp-meta |
| 3 | +# Quicksys |
4 | 4 |
|
5 | 5 | ## Description
|
6 | 6 |
|
7 |
| -A Quicklisp meta distribution tool to track multiple quicklisp |
8 |
| -distributions over world in a unique place. This software should build |
9 |
| -a catalog of common distributions over world like: |
| 7 | +Quicksys is a tool for fetching Common Lisp systems, regardless of the Quicklisp |
| 8 | +distribution they are catalogued in. To achieve that, this software is purposely |
| 9 | +built as a hardcoded catalog of famous Quicklisp distributions, including: |
10 | 10 |
|
11 | 11 | + cl-bodge
|
12 | 12 | + cl21
|
13 | 13 | + shirakumo
|
14 | 14 | + ultralisp
|
15 | 15 |
|
16 |
| -That way you can use to fetch first the distribution and so on the |
17 |
| -proper dependencies from it automatically. Today there is no automatic |
18 |
| -tool for softwares that are not in quicklisp xach central repository, |
19 |
| -so you need make a manual intervation to add different distributions. |
| 16 | +You may also add your own distributions at your will. |
| 17 | + |
| 18 | +## Motivation |
| 19 | + |
| 20 | +[Quicklisp](https://www.quicklisp.org/beta/) is an awesome tool for fetching |
| 21 | +systems, which you may use on your Common Lisp projects. However, Quicklisp only |
| 22 | +fetches systems from its central repository, by default. Adding a new repository |
| 23 | +implies manual management of distributions (here called _dists_), in order to |
| 24 | +fetch systems that are not in the central repo. |
| 25 | + |
| 26 | +In an effort to speed up the development of software in Common Lisp, we present |
| 27 | +Quicksys as a means of unifying some of the most popular distributions. This |
| 28 | +way, one can load specific systems, given that one also knows in which |
| 29 | +distribution it is; or even, one may also install a distribution on Quicklisp |
| 30 | +without ever manually configurating it. |
20 | 31 |
|
21 | 32 | ## Requirements
|
22 | 33 |
|
23 |
| -+ Common Lisp implementation |
| 34 | ++ A Common Lisp implementation |
24 | 35 | + Quicklisp
|
25 | 36 |
|
26 | 37 | ## How to use
|
27 | 38 |
|
28 |
| -Suppose we want to use the nice shirakumo softwares, so what you need |
29 |
| -is to subscribe to shirakumo own distribution list. |
| 39 | +Quicksys exports some symbols which may be easily used. The following |
| 40 | +instructions relate to the most important operations. |
| 41 | + |
| 42 | +### Installing a system |
| 43 | + |
| 44 | +Systems may be loaded regardless of whether its dists were installed under |
| 45 | +Quicklisp or not. |
| 46 | + |
| 47 | +To install a system *from a dist that was not installed*, use the following: |
| 48 | + |
| 49 | +```lisp |
| 50 | +(qs:quickload system-atom :dist dist-name) |
| 51 | +``` |
| 52 | + |
| 53 | +Where `system-name` is the proper identifier for the desired system, and |
| 54 | +`dist-name` is a proper name for a dist -- see "Installing a dist". |
30 | 55 |
|
31 |
| -``` lisp |
32 |
| -(ql-meta:install 'shirakumo) |
| 56 | +You may also use `qs:quickload` in the same way one would use `ql:quickload`. |
| 57 | +The effect is the same, for dists that are already installed. |
| 58 | + |
| 59 | +### Installing a dist |
| 60 | + |
| 61 | +One may easily install a dist by using: |
| 62 | + |
| 63 | +```lisp |
| 64 | +(qs:install-dist dist-name) |
33 | 65 | ```
|
34 | 66 |
|
35 |
| -That will install the distribution based on quicklisp-client. So you |
36 |
| -can load from `ql:quickload` any related shirakumo software. |
| 67 | +Where `dist-name` is a name (symbol or string) for a specific dist. |
| 68 | +Available dists may be listed using Quicksys' apropos command: |
| 69 | + |
| 70 | +```lisp |
| 71 | +(qs:dist-apropos "") |
| 72 | +``` |
37 | 73 |
|
| 74 | +This outputs a list of all available dists currently hardcoded, with their |
| 75 | +respective symbols and URLs. |
38 | 76 |
|
| 77 | +After installing a dist, you may install any system using Quicklisp or Quicksys |
| 78 | +normally. |
| 79 | + |
| 80 | +### Removing a dist |
| 81 | + |
| 82 | +Just like installation, one may remove an already installed dist by using a |
| 83 | +single command: |
| 84 | + |
| 85 | +```lisp |
| 86 | +(qs:uninstall-dist dist-name) |
| 87 | +``` |
39 | 88 |
|
40 | 89 | ## License
|
41 | 90 |
|
42 |
| -MIT |
| 91 | +This project is distributed under the MIT License. |
0 commit comments