[arch-commits] Commit in (7 files)
George Rawlinson
grawlinson at gemini.archlinux.org
Tue May 17 22:02:05 UTC 2022
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 <grawlinson at archlinux.org>
+# Contributor: Johannes Weiner <hannes at saeurebad.de>
+# Contributor: Daniel Leidisch <spam at leidisch.net>
+# Contributor: Stefan Husmann <stefan-husmann at t-online.de>
+# 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
+}
More information about the arch-commits
mailing list