aboutsummaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorJoseph Mingrone <jrm@FreeBSD.org>2017-08-18 14:27:26 +0000
committerJoseph Mingrone <jrm@FreeBSD.org>2017-08-18 14:27:26 +0000
commitca5de480403099f8fa66640c0631726b9a98b239 (patch)
tree910409ad93e9b8d7a911b14c0e7423f4d06f3666 /x11-wm
parent65873d9f25945683eb156f6e701d23517c67e19a (diff)
downloadports-ca5de480403099f8fa66640c0631726b9a98b239.tar.gz
ports-ca5de480403099f8fa66640c0631726b9a98b239.zip
x11-wm/stumpwm: re-add after deletion in 2014
Instead of bundling StumpWM, SBCL, and other libraries into one large executable, pull in SBCL and the other dependencies and use the simple CL framework that other FreeBSD CL ports use. Since StumpWM only supports running under SBCL, the port pulls in the *-sbcl port dependencies and conforms to the framework itself, except that it directly installs the fasl files instead of having an associated x11-wm/stumpwm-sbcl. This means no fasl files will be generated under ~/.cache/common-lisp/sbcl-*/ [1] and the package is only made up of the source, fasl files, and a few small, miscellaneous files. From a user perspective, they still get an executable, but it is a small shell script and the package is under 3 MB instead of around 65 MB. [1] Loading personal modules in ~/.stumpwmrc will still generate fasl files under ~/.cache/common-lisp/sbcl-*/
Notes
Notes: svn path=/head/; revision=448234
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/Makefile1
-rw-r--r--x11-wm/stumpwm/Makefile87
-rw-r--r--x11-wm/stumpwm/distinfo3
-rw-r--r--x11-wm/stumpwm/files/stumpwm.in6
-rw-r--r--x11-wm/stumpwm/pkg-descr8
-rw-r--r--x11-wm/stumpwm/pkg-plist85
6 files changed, 190 insertions, 0 deletions
diff --git a/x11-wm/Makefile b/x11-wm/Makefile
index 465f66967283..e754e50c9214 100644
--- a/x11-wm/Makefile
+++ b/x11-wm/Makefile
@@ -111,6 +111,7 @@
SUBDIR += selectwm
SUBDIR += simple-ccsm
SUBDIR += spectrwm
+ SUBDIR += stumpwm
SUBDIR += subtle
SUBDIR += swm
SUBDIR += tinywm
diff --git a/x11-wm/stumpwm/Makefile b/x11-wm/stumpwm/Makefile
new file mode 100644
index 000000000000..d0b63b2f8650
--- /dev/null
+++ b/x11-wm/stumpwm/Makefile
@@ -0,0 +1,87 @@
+# Created by: Alejandro Pulver <alepulver@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= stumpwm
+DISTVERSION= 1.0.0-168
+DISTVERSIONSUFFIX= -g49fdf94
+CATEGORIES= x11-wm lisp
+
+MAINTAINER= jrm@FreeBSD.org
+COMMENT= Tiling, keyboard driven Window Manager written in Common Lisp
+
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= cl-alexandria>=0:devel/cl-alexandria \
+ cl-alexandria-sbcl>=0:devel/cl-alexandria-sbcl \
+ cl-clx>=0:x11/cl-clx \
+ cl-clx-sbcl>=0:x11/cl-clx-sbcl \
+ cl-ppcre>=0:textproc/cl-ppcre \
+ cl-ppcre-sbcl>=0:textproc/cl-ppcre-sbcl \
+ texinfo>=0:print/texinfo
+RUN_DEPENDS= cl-alexandria>=0:devel/cl-alexandria \
+ cl-alexandria-sbcl>=0:devel/cl-alexandria-sbcl \
+ cl-clx>=0:x11/cl-clx \
+ cl-clx-sbcl>=0:x11/cl-clx-sbcl \
+ cl-ppcre>=0:textproc/cl-ppcre \
+ cl-ppcre-sbcl>=0:textproc/cl-ppcre-sbcl
+
+USE_GITHUB= yes
+GH_TAGNAME= 49fdf94
+USE_SBCL= yes
+
+PLIST_SUB= ASDF_PATHNAME="${ASDF_PATHNAME:S,^${PREFIX}/,,}" \
+ ASDF_REGISTRY="${ASDF_REGISTRY:S,^${PREFIX}/,,}"
+SUB_FILES= stumpwm
+SUB_LIST= ASDF_REGISTRY=${ASDF_REGISTRY} \
+ SBCL=${SBCL}
+
+INFO= ${PORTNAME}
+PORTDOCS= AUTHORS COPYING HACKING NEWS README.md
+PORTEXAMPLES= sample-stumpwmrc.lisp
+
+OPTIONS_DEFINE= DOCS EXAMPLES
+
+post-patch:
+ @${CP} ${WRKSRC}/load-stumpwm.lisp.in ${WRKSRC}/load-stumpwm.lisp
+ @${REINPLACE_CMD} -e 's|@STUMPWM_ASDF_DIR@|${ASDF_PATHNAME}|' \
+ ${WRKSRC}/load-stumpwm.lisp
+ ${CP} ${WRKSRC}/make-image.lisp.in ${WRKSRC}/make-image.lisp
+ @${REINPLACE_CMD} -e 's|@MODULE_DIR@|${DATADIR}|' \
+ ${WRKSRC}/make-image.lisp
+
+do-build:
+ (cd ${WRKSRC} && \
+ CL_SOURCE_REGISTRY="${WRKSRC}" \
+ ASDF_OUTPUT_TRANSLATIONS="/:" \
+ ${SBCL} \
+ --eval "(asdf:oos 'asdf:compile-op :${PORTNAME})" \
+ --eval "(load \"load-stumpwm.lisp\")" \
+ --eval "(load \"manual.lisp\")" \
+ --eval "(stumpwm::generate-manual)" \
+ --eval "(sb-ext:quit)" && \
+ makeinfo stumpwm.texi)
+
+do-install:
+ @${MKDIR} ${STAGEDIR}${ASDF_PATHNAME} \
+ ${STAGEDIR}${ASDF_REGISTRY} \
+ ${STAGEDIR}${ASDF_PATHNAME}/sbclfasl
+ ${INSTALL_SCRIPT} ${WRKDIR}/stumpwm ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_DATA} ${WRKSRC}/.dir-locals.el ${WRKSRC}/${PORTNAME}.asd \
+ ${WRKSRC}/*.lisp ${STAGEDIR}${ASDF_PATHNAME}
+ ${INSTALL_DATA} ${WRKSRC}/*.fasl ${STAGEDIR}${ASDF_PATHNAME}/sbclfasl
+ ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.info \
+ ${STAGEDIR}${PREFIX}/${INFO_PATH}
+ @${RLN} ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}.asd \
+ ${STAGEDIR}${ASDF_REGISTRY}
+
+do-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ (cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR})
+
+do-install-EXAMPLES-on:
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${WRKSRC}/${PORTEXAMPLES} ${STAGEDIR}/${EXAMPLESDIR}
+
+.include "${.CURDIR}/../../devel/cl-asdf/bsd.cl-asdf.mk"
+.include <bsd.port.mk>
diff --git a/x11-wm/stumpwm/distinfo b/x11-wm/stumpwm/distinfo
new file mode 100644
index 000000000000..3cd8532483ba
--- /dev/null
+++ b/x11-wm/stumpwm/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1503065096
+SHA256 (stumpwm-stumpwm-1.0.0-168-g49fdf94-49fdf94_GH0.tar.gz) = 243e621b8ce5e86f6fe79172fcaff9f05a115710efbcd9b88ec6388f69d17f1e
+SIZE (stumpwm-stumpwm-1.0.0-168-g49fdf94-49fdf94_GH0.tar.gz) = 197676
diff --git a/x11-wm/stumpwm/files/stumpwm.in b/x11-wm/stumpwm/files/stumpwm.in
new file mode 100644
index 000000000000..6faa1df410b7
--- /dev/null
+++ b/x11-wm/stumpwm/files/stumpwm.in
@@ -0,0 +1,6 @@
+#/bin/sh
+
+%%SBCL%% --eval "(in-package :cl-user)" \
+ --eval "(require :stumpwm)" \
+ --eval "(stumpwm:stumpwm)" \
+ --eval "(quit)"
diff --git a/x11-wm/stumpwm/pkg-descr b/x11-wm/stumpwm/pkg-descr
new file mode 100644
index 000000000000..272dc55a1b8d
--- /dev/null
+++ b/x11-wm/stumpwm/pkg-descr
@@ -0,0 +1,8 @@
+StumpWM is a tiling, keyboard driven X11 Window Manager written entirely in
+Common Lisp.
+
+StumpWM attempts to be customizable yet visually minimal. There are no window
+decorations, no icons, and no buttons. It does have various hooks to attach
+your personal customizations, and variables to tweak.
+
+WWW: http://www.nongnu.org/stumpwm/
diff --git a/x11-wm/stumpwm/pkg-plist b/x11-wm/stumpwm/pkg-plist
new file mode 100644
index 000000000000..2378fbc58f95
--- /dev/null
+++ b/x11-wm/stumpwm/pkg-plist
@@ -0,0 +1,85 @@
+%%ASDF_PATHNAME%%/.dir-locals.el
+%%ASDF_PATHNAME%%/bindings.lisp
+%%ASDF_PATHNAME%%/color.lisp
+%%ASDF_PATHNAME%%/command.lisp
+%%ASDF_PATHNAME%%/core.lisp
+%%ASDF_PATHNAME%%/events.lisp
+%%ASDF_PATHNAME%%/fdump.lisp
+%%ASDF_PATHNAME%%/floating-group.lisp
+%%ASDF_PATHNAME%%/font-rendering.lisp
+%%ASDF_PATHNAME%%/group.lisp
+%%ASDF_PATHNAME%%/head.lisp
+%%ASDF_PATHNAME%%/help.lisp
+%%ASDF_PATHNAME%%/input.lisp
+%%ASDF_PATHNAME%%/interactive-keymap.lisp
+%%ASDF_PATHNAME%%/ioloop.lisp
+%%ASDF_PATHNAME%%/iresize.lisp
+%%ASDF_PATHNAME%%/keysyms.lisp
+%%ASDF_PATHNAME%%/keytrans.lisp
+%%ASDF_PATHNAME%%/kmap.lisp
+%%ASDF_PATHNAME%%/load-stumpwm.lisp
+%%ASDF_PATHNAME%%/make-image.lisp
+%%ASDF_PATHNAME%%/manual.lisp
+%%ASDF_PATHNAME%%/menu.lisp
+%%ASDF_PATHNAME%%/message-window.lisp
+%%ASDF_PATHNAME%%/mode-line-formatters.lisp
+%%ASDF_PATHNAME%%/mode-line.lisp
+%%ASDF_PATHNAME%%/module.lisp
+%%ASDF_PATHNAME%%/package.lisp
+%%ASDF_PATHNAME%%/pathnames.lisp
+%%ASDF_PATHNAME%%/primitives.lisp
+%%ASDF_PATHNAME%%/sample-stumpwmrc.lisp
+%%ASDF_PATHNAME%%/screen.lisp
+%%ASDF_PATHNAME%%/selection.lisp
+%%ASDF_PATHNAME%%/stumpwm.asd
+%%ASDF_PATHNAME%%/stumpwm.lisp
+%%ASDF_PATHNAME%%/test-wm.lisp
+%%ASDF_PATHNAME%%/tile-group.lisp
+%%ASDF_PATHNAME%%/tile-window.lisp
+%%ASDF_PATHNAME%%/time.lisp
+%%ASDF_PATHNAME%%/user.lisp
+%%ASDF_PATHNAME%%/version.lisp
+%%ASDF_PATHNAME%%/window-placement.lisp
+%%ASDF_PATHNAME%%/window.lisp
+%%ASDF_PATHNAME%%/wrappers.lisp
+%%ASDF_PATHNAME%%/wse.lisp
+%%ASDF_REGISTRY%%/stumpwm.asd
+%%ASDF_PATHNAME%%/sbclfasl/bindings.fasl
+%%ASDF_PATHNAME%%/sbclfasl/color.fasl
+%%ASDF_PATHNAME%%/sbclfasl/command.fasl
+%%ASDF_PATHNAME%%/sbclfasl/core.fasl
+%%ASDF_PATHNAME%%/sbclfasl/events.fasl
+%%ASDF_PATHNAME%%/sbclfasl/fdump.fasl
+%%ASDF_PATHNAME%%/sbclfasl/floating-group.fasl
+%%ASDF_PATHNAME%%/sbclfasl/font-rendering.fasl
+%%ASDF_PATHNAME%%/sbclfasl/group.fasl
+%%ASDF_PATHNAME%%/sbclfasl/head.fasl
+%%ASDF_PATHNAME%%/sbclfasl/help.fasl
+%%ASDF_PATHNAME%%/sbclfasl/input.fasl
+%%ASDF_PATHNAME%%/sbclfasl/interactive-keymap.fasl
+%%ASDF_PATHNAME%%/sbclfasl/ioloop.fasl
+%%ASDF_PATHNAME%%/sbclfasl/iresize.fasl
+%%ASDF_PATHNAME%%/sbclfasl/keysyms.fasl
+%%ASDF_PATHNAME%%/sbclfasl/keytrans.fasl
+%%ASDF_PATHNAME%%/sbclfasl/kmap.fasl
+%%ASDF_PATHNAME%%/sbclfasl/menu.fasl
+%%ASDF_PATHNAME%%/sbclfasl/message-window.fasl
+%%ASDF_PATHNAME%%/sbclfasl/mode-line-formatters.fasl
+%%ASDF_PATHNAME%%/sbclfasl/mode-line.fasl
+%%ASDF_PATHNAME%%/sbclfasl/module.fasl
+%%ASDF_PATHNAME%%/sbclfasl/package.fasl
+%%ASDF_PATHNAME%%/sbclfasl/pathnames.fasl
+%%ASDF_PATHNAME%%/sbclfasl/primitives.fasl
+%%ASDF_PATHNAME%%/sbclfasl/screen.fasl
+%%ASDF_PATHNAME%%/sbclfasl/selection.fasl
+%%ASDF_PATHNAME%%/sbclfasl/stumpwm.fasl
+%%ASDF_PATHNAME%%/sbclfasl/tile-group.fasl
+%%ASDF_PATHNAME%%/sbclfasl/tile-window.fasl
+%%ASDF_PATHNAME%%/sbclfasl/time.fasl
+%%ASDF_PATHNAME%%/sbclfasl/user.fasl
+%%ASDF_PATHNAME%%/sbclfasl/version.fasl
+%%ASDF_PATHNAME%%/sbclfasl/window-placement.fasl
+%%ASDF_PATHNAME%%/sbclfasl/window.fasl
+%%ASDF_PATHNAME%%/sbclfasl/wrappers.fasl
+%%ASDF_PATHNAME%%/sbclfasl/wse.fasl
+bin/stumpwm