Debian GNU/Linux is a non-commercial Linux-distribution which is very popular with developers, and has CMUCL packages which are frequently updated. All the software in the main distribution (section) of Debian is DFSG-compliant - they invented the guidelines, after all.

Quite a lot of CL software is in Debian, packaged using the common-lisp-controller system. Look for packages whose names start with cl-. There is the CL-Debian project, that provides information about Common Lisp packaging, various source packages in Darcs repositories and a mailing list.

Extra repositories

Backports has packages of recent Common Lisp libraries and implementations for Debian GNU/Linux Sarge on many architectures. Usage instructions can be found here.

Extra repositories also exist for Ubuntu releases, where the platform dependent packages are available for i386 only. The lines for your /etc/apt/source.list file look like this: For sarge add

deb ./
for ubuntu breezy add
deb ./

Lisp-related packages

Most Lisp programmers use the latest version of Debian called Sid or unstable. This version of Debian contains:


Software packages on CLiki

Other Software packages

Many of these are actually on CLiki, but miss the Debian package topic marker, which would make them show up on the list above. Industrious souls are encouraged to add such markers and delete the corresponding entry, if any, from this list.

Suggestions/Hints/etc for package creators

  • Please use a package prefix that helps to track down the package in Debian and dselect in particular. A prefix will hopefully also help wrt inclusion in ordinary Debian and to avoid name conflicts. One such prefix might be cl- for ordinary Common Lisp libraries.
  • If possible, use :Depends for other systems instead of including them in your package. As an example, the Langband-package should depend on binary-types instead of including them in the its package.
  • Persons investigating the natures and features of packaging systems, and persons intending to create Debian packages, may be interested in the page here on Debian Packages

Hints for users

  • When using Debian and the common-lisp-controller version 4, all packages can be loaded using the (clc:clc-require :name) syntax. For example, the cl-infix package can be loaded using (clc:clc-require :infix).
  • With an implementation that uses the common-lisp-controller you can simply use (clc:clc-require :infix) to load the precompiled version.