README.org (2098 bytes)
1 #+EMAIL: web@spensertruex.com 2 #+OPTIONS: email:t toc:2 3 #+VERSION: 0.0.2 4 5 Archived. Use [[https://github.com/roswell/roswell][roswell]] instead. 6 #+caption: Librarian icon 7 [[file:https://spensertruex.com/static/librarian-mini.png]] 8 9 #+begin_quote 10 Clapt, having been clapt into existence, is the apt CL package manager. 11 #+end_quote 12 13 * Clapt 14 A package managing /client/. Keep a list of packages efficiently installed. 15 * Install 16 We need to know which packages are needed, and whether they are from quicklisp. 17 1. =(asdf:load-system :clapt)= 18 2. =(clapt:install)=. SBCL will save and die. 19 By default clapt will try to overwrite your installed core file. This 20 may require root access on your system; alternatively, try 21 =(clapt:install :core "path-to-your-core")= for a different core. 22 * Adding packages 23 Call =clapt:add= with the manager and packages. Current managers are =:asdf= and 24 =:quicklisp=. 25 * Updating packages 26 #+begin_src common-lisp :tangle no 27 (clapt:update) 28 #+end_src 29 30 * Rationale 31 Loading a lot of packages from a script is slow, and having to reload the image 32 manually on every update is too laborious. A simple package manager should be able to do all of that. 33 * Alternatives 34 - Just write an init script for your lisp like: 35 #+begin_src common-lisp :tangle no 36 (ql:quickload :petalisp) 37 (ql:quickload :coleslaw) 38 ;;; ... etc. 39 #+end_src 40 This is fine if the number of packages is low. Eventually it can start to take 41 too long. 42 - Store your core manually. 43 1. Write a script like the one above. 44 2. =load= it. 45 3. Save your core. SBCL has =sb-ext:save-lisp-and-die= for this. 46 4. Start your lisp with =sbcl --core "path/to/core"= or similar. 47 This is essentially what this script does, but lacks backups and needs to be 48 done every time the lisp is updated. 49 - clpm is another attempt at the same, and has the benefit of removing itself 50 from the core. It has dependencies, and is a bit involved to use. 51 52 * Supported Systems 53 Looking to increase the number of items here: 54 - SUPPORTED: 55 - SBCL 56 - TO BE SUPPORTED: 57 - Clisp 58 - CCL 59 - 60 * Contributing 61 See the TODO file for ideas 62 * License 63 GNU GPL v3