This dh utility lets you compile your quicklisp-based Common Lisp code into a buildapp binary in a .deb with almost no effort.
For the "almost no effort" part to work,
$ wget https://github.com/ralt/dh-quicklisp-buildapp/releases/download/0.2/dh-quicklisp-buildapp_0.2_all.deb # Validate it with the .dsc $ sudo dpkg -i dh-quicklisp-buildapp_0.2_all.deb $ sudo apt-get -f install # Install missing dependencies if necessary
debian/ folder with at minimum:
control file should have your source and package information.
changelog should have the changelog of your application. See
dch for more information.
compat file should have just the
9 number in it.
rules file just needs this:
#!/usr/bin/make -f %: dh $@ --with=quicklisp_buildapp
(Note that a tab character is needed.)
When you run
dpkg-buildpackage in your source's root folder, for
each package defined in the
control file, it will get the system
$package, and use the
main function of it as the entrypoint.
It will fetch the latest quicklisp and then use
buildapp to generate
the binary that will be put in the .deb file.
package.buildapp file exists, it will be parsed
in the following way:
- Each line defines a binary
- Each line is 3 items separated by space: the binary name, the system's name, and the entrypoint name.
This lets you put multiple binaries in the same package.
All the .asd must be in the root folder.
dh-quicklisp-buildapp will support customizations such as:
- Specify the dist-url of quicklisp
- For each package, specify where the system's asd is
- For each package, specify the entrypoint
- For each package, specify the system's name
My keybase: https://keybase.io/fmargaine