Date: Tuesday, May 17, 2022 @ 22:02:04 Author: grawlinson Revision: 1207742
addpkg: emacs-slime 2.27-1 Added: emacs-slime/ emacs-slime/repos/ emacs-slime/trunk/ emacs-slime/trunk/PKGBUILD emacs-slime/trunk/fix-swank-loader-path.patch emacs-slime/trunk/fix-texinfo-path.patch emacs-slime/trunk/slime.install -----------------------------+ PKGBUILD | 108 ++++++++++++++++++++++++++++++++++++++++++ fix-swank-loader-path.patch | 38 ++++++++++++++ fix-texinfo-path.patch | 11 ++++ slime.install | 24 +++++++++ 4 files changed, 181 insertions(+) Added: emacs-slime/trunk/PKGBUILD =================================================================== --- emacs-slime/trunk/PKGBUILD (rev 0) +++ emacs-slime/trunk/PKGBUILD 2022-05-17 22:02:04 UTC (rev 1207742) @@ -0,0 +1,108 @@ +# Maintainer: George Rawlinson <[email protected]> +# Contributor: Johannes Weiner <[email protected]> +# Contributor: Daniel Leidisch <[email protected]> +# Contributor: Stefan Husmann <[email protected]> +# Contributor: Polar Phoenix <polarphoenixx at gmail dot com> + +pkgbase=emacs-slime +pkgname=('emacs-slime' 'cl-swank') +pkgver=2.27 +pkgrel=1 +pkgdesc='Superior Lisp Interaction Mode for Emacs' +arch=('any') +url='https://slime.common-lisp.dev' +license=( + 'MIT' + 'GPL' + 'LGPL' + 'custom:LLGPL' + 'custom:Public' +) +makedepends=( + 'git' + 'emacs' + 'texlive-core' +) +_commit='cf30941e5858e93eb91574ad91499075222a447b' +source=( + "$pkgbase::git+https://github.com/slime/slime#commit=$_commit" + 'fix-swank-loader-path.patch' + 'fix-texinfo-path.patch' +) +b2sums=('SKIP' + 'db30f1d35bab8be64a2206af4b338b85be226d7af7eef240384d700dc76119b57cda7ba3fb0e78ffa767d394371ed8726be48965f2ad5854f9a041a7dc8c48c4' + '067c07d49afa83748804481153e771edef68ce72437431ca994494f9e8e8d3265cfdab0a6a7a670aa62e279d5c1a2b4aecca0b37d5d8b3ecf0b06b488125a367') + +pkgver() { + cd "$pkgbase" + + git describe --tags | sed 's/^v//' +} + +prepare() { + cd "$pkgbase" + + # apply patches + patch --strip=1 --input="$srcdir/fix-swank-loader-path.patch" + patch --strip=1 --input="$srcdir/fix-texinfo-path.patch" + + # license extraction + sed -n '/License/,/public/p' README.md > LICENSE +} + +build() { + cd "$pkgbase" + + # compile emacs lisp files + make + + # create texinfo page & html manual + make -C doc slime.info html/index.html +} + +package_emacs-slime() { + _pkgname="${pkgname#emacs-}" + depends=('emacs' 'cl-swank') + install='slime.install' + + cd "$pkgbase" + + # install package + install -vd "$pkgdir/usr/share/emacs/site-lisp/$_pkgname" + cp -vr contrib lib ./*.el{,c} "$pkgdir/usr/share/emacs/site-lisp/$_pkgname" + + # delete unnecessary files + find "$pkgdir/usr/share/emacs/site-lisp/$_pkgname" \ + -name 'Makefile' -delete -or \ + -name '*.lisp' -delete + + # general documentation + install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" CONTRIBUTING.md \ + README.md NEWS PROBLEMS doc/slime-refcard.pdf + + # texinfo file + install -vDm644 -t "$pkgdir/usr/share/info" doc/slime.info + + # html manual + cp -vr doc/html "$pkgdir/usr/share/doc/$pkgname" + + # license + install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE +} + +package_cl-swank() { + local _pkgname="${pkgname#cl-}" + pkgdesc+=' (Lisp-side server)' + depends=('common-lisp' 'cl-asdf') + + cd "$pkgbase" + + # install library + install -vDm644 -t "$pkgdir/usr/share/common-lisp/source/$_pkgname" ./*.{lisp,asd} + install -vDm644 -t "$pkgdir/usr/share/common-lisp/source/$_pkgname/contrib" contrib/*.lisp + install -vDm644 -t "$pkgdir/usr/share/common-lisp/source/$_pkgname/$_pkgname" swank/*.lisp + echo "$pkgver" > "$pkgdir/usr/share/common-lisp/source/$_pkgname/slime-version" + + # license + install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE +} Added: emacs-slime/trunk/fix-swank-loader-path.patch =================================================================== --- emacs-slime/trunk/fix-swank-loader-path.patch (rev 0) +++ emacs-slime/trunk/fix-swank-loader-path.patch 2022-05-17 22:02:04 UTC (rev 1207742) @@ -0,0 +1,38 @@ +--- a/slime.el ++++ b/slime.el +@@ -179,7 +179,7 @@ This applies to the *inferior-lisp* buffer and the network connections." + :prefix "slime-" + :group 'slime) + +-(defcustom slime-backend "swank-loader.lisp" ++(defcustom slime-backend "/usr/share/common-lisp/source/swank/swank-loader.lisp" + "The name of the Lisp file that loads the Swank server. + This name is interpreted relative to the directory containing + slime.el, but could also be set to an absolute filename." +--- a/swank-loader.lisp ++++ b/swank-loader.lisp +@@ -16,6 +16,7 @@ + ;; (load ".../swank-loader.lisp") + ;; (setq swank-loader::*fasl-directory* "/tmp/fasl/") + ;; (swank-loader:init) ++(require "asdf") + + (cl:defpackage :swank-loader + (:use :cl) +@@ -145,14 +146,10 @@ operating system, and hardware architecture." + (defun slime-version-string () + "Return a string identifying the SLIME version. + Return nil if nothing appropriate is available." +- (with-open-file (s (merge-pathnames "slime.el" *source-directory*) ++ (with-open-file (s (merge-pathnames "slime-version" *source-directory*) + :if-does-not-exist nil) + (when s +- (loop with prefix = ";; Version: " +- for line = (read-line s nil :eof) +- until (eq line :eof) +- when (string-starts-with line prefix) +- return (subseq line (length prefix)))))) ++ (read-line s)))) + + (defun default-fasl-dir () + (merge-pathnames Added: emacs-slime/trunk/fix-texinfo-path.patch =================================================================== --- emacs-slime/trunk/fix-texinfo-path.patch (rev 0) +++ emacs-slime/trunk/fix-texinfo-path.patch 2022-05-17 22:02:04 UTC (rev 1207742) @@ -0,0 +1,11 @@ +--- a/slime.el ++++ b/slime.el +@@ -4492,7 +4492,7 @@ With prefix argument include internal symbols." + (defun slime-info () + "Open Slime manual" + (interactive) +- (let ((file (expand-file-name "doc/slime.info" slime-path))) ++ (let ((file "/usr/share/info/slime.info.gz")) + (if (file-exists-p file) + (info file) + (message "No slime.info, run `make slime.info' in %s" Added: emacs-slime/trunk/slime.install =================================================================== --- emacs-slime/trunk/slime.install (rev 0) +++ emacs-slime/trunk/slime.install 2022-05-17 22:02:04 UTC (rev 1207742) @@ -0,0 +1,24 @@ +post_install() { + cat << EOF + +To make use of SLIME, add the following lines to your +Emacs configuration file: + +(setq inferior-lisp-program "/path/to/lisp-executable") +(add-to-list 'load-path "/usr/share/emacs/site-lisp/slime/") +(require 'slime) +(slime-setup) + +Then run 'M-x slime' from within Emacs. + +EOF +} + +post_remove() { +cat << EOF + +You may want to remove SLIME related lines from your +Emacs configuration. + +EOF +}
