diff options
author | Pierre Neidhardt <mail@ambrevar.xyz> | 2021-11-15 20:04:52 +0100 |
---|---|---|
committer | Pierre Neidhardt <mail@ambrevar.xyz> | 2021-11-16 12:47:00 +0100 |
commit | 6366aaf7cc2aeab57c9ee0eb8757170f7d10c6a6 (patch) | |
tree | 4687e696b2472f11ad7f823b75b2caf8e7ed8fc5 /gnu/packages | |
parent | 462bb6cca87c5ed8d9d0917de2ba191afaf8988b (diff) |
gnu: Add exit-hooks.
* gnu/packages/lisp-xyz.scm (cl-exit-hooks, ecl-exit-hooks, sbcl-exit-hooks):
New variables.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/lisp-xyz.scm | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index bba167ff8a..721f6150c2 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -18895,3 +18895,37 @@ information is taken from @url{https://publicsuffix.org}.") (define-public ecl-cl-strftime (sbcl-package->ecl-package sbcl-cl-strftime)) + +(define-public sbcl-exit-hooks + ;; No release. + (let ((commit "78050f4f55c138fcea86a9d720928782021b6012")) + (package + (name "sbcl-exit-hooks") + (version (git-version "0.0.0" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ailisp/exit-hooks/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "00rk0pr2cy3hy6giblh166b7yrg06d5lanipjcqv508gkfb0vi47")))) + (build-system asdf-build-system/sbcl) + (home-page "https://github.com/ailisp/exit-hooks") + (synopsis "Call functions automatically when Common Lisp exits") + (description + "@code{exit-hooks} provides a portable way to automatically call some +user-defined function when exiting Common Lisp (both @code{quit} from the REPL +or a kill in a shell). Like @code{atexit} in C and Python or Java’s +@code{Runtime.addShutdownHook()}. It currently supports SBCL, CCL, ECL, ABCL, +Allegro CL, clisp and CMUCL. Before exit-hooks, there was no portable way of +doing so and no staightforward way to use an exit hook on ABCL. It can be used +for tasks like parmenantly save something when exiting Lisp.") + (license license:bsd-2)))) + +(define-public cl-exit-hooks + (sbcl-package->cl-source-package sbcl-exit-hooks)) + +(define-public ecl-exit-hooks + (sbcl-package->ecl-package sbcl-exit-hooks)) |