So after completing (?) the Pleroma bot, I talked about in a previous post I wanted to create a simple executable that would be self-contained and run on any machine. If you have a Common Lisp implementation on a computer it's trivial to run any program that is bundled in a package, just load the package and then run the appropriate entry function from the repl.

What happens if you don't have a Lisp installed?

Well most modern Lisps have the ability to dump the current Lisp environment in way that can be "re-run". In this way we can create executables that have the whole implementation in them and so they are self-contained. On this builds Buildapp, so it configures and saves a Lisp image in an executable file.

Buildapp works with SBCL or CCL. An easy way to get it is via quicklisp. Fire an SBCL repl and run:

(ql:quickload 'buildapp)
(buildapp:build-buildapp)


Then you get a binary file, so put it somewhere in your PATH.

Next step is to build our executable image/file.

buildapp --output pleroma-bot \
--asdf-tree ~/quicklisp/ \