Github messages for voidlinux
 help / color / mirror / Atom feed
From: MIvanchev <MIvanchev@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] New package: stumpwm-23.11
Date: Tue, 14 May 2024 12:03:50 +0200	[thread overview]
Message-ID: <20240514100350.9A2BC26731@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-49434@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 670 bytes --]

There is an updated pull request by MIvanchev against master on the void-packages repository

https://github.com/MIvanchev/void-packages stumpwm
https://github.com/void-linux/void-packages/pull/49434

New package: stumpwm-23.11
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (X86_64-GLIBC)


A patch file from https://github.com/void-linux/void-packages/pull/49434.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-stumpwm-49434.patch --]
[-- Type: text/x-diff, Size: 28763 bytes --]

From 6abb0331c3dd234108c02e905764aae62ea156c1 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Thu, 21 Mar 2024 15:40:54 +0100
Subject: [PATCH 01/10] New package: cl-alexandria-1.4

---
 srcpkgs/cl-alexandria/patches/run-tests.patch | 13 +++++++
 srcpkgs/cl-alexandria/template                | 35 +++++++++++++++++++
 2 files changed, 48 insertions(+)
 create mode 100644 srcpkgs/cl-alexandria/patches/run-tests.patch
 create mode 100644 srcpkgs/cl-alexandria/template

diff --git a/srcpkgs/cl-alexandria/patches/run-tests.patch b/srcpkgs/cl-alexandria/patches/run-tests.patch
new file mode 100644
index 00000000000000..65299e3fc44b49
--- /dev/null
+++ b/srcpkgs/cl-alexandria/patches/run-tests.patch
@@ -0,0 +1,13 @@
+diff --git a/alexandria-tests.asd b/alexandria-tests.asd
+index 6b785d3..fa0bb88 100644
+--- a/alexandria-tests.asd
++++ b/alexandria-tests.asd
+@@ -8,5 +8,6 @@
+   :perform (test-op (o c)
+              (flet ((run-tests (&rest args)
+                       (apply (intern (string '#:run-tests) '#:alexandria-tests) args)))
+-               (run-tests :compiled nil)
+-               (run-tests :compiled t))))
++               (unless (and (run-tests :compiled nil)
++                            (run-tests :compiled t))
++                 (error "Some tests failed.")))))
diff --git a/srcpkgs/cl-alexandria/template b/srcpkgs/cl-alexandria/template
new file mode 100644
index 00000000000000..a1784d4a4345d4
--- /dev/null
+++ b/srcpkgs/cl-alexandria/template
@@ -0,0 +1,35 @@
+# Template file for 'cl-alexandria'
+pkgname=cl-alexandria
+version=1.4
+revision=1
+makedepends="texlive texinfo sbcl tar"
+short_desc="Common Lisp utility library"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="Public Domain"
+homepage="https://alexandria.common-lisp.dev/"
+distfiles="https://gitlab.common-lisp.net/alexandria/alexandria/-/archive/v${version}/alexandria-v${version}.tar.gz"
+checksum=0512aec38d054a20daa66e9983cf8a98151582d7e2307e49e8c1b4a61bbb779a
+
+_LIBRARY_DIR=usr/share/common-lisp/source/alexandria
+
+do_check() {
+	sbcl --non-interactive \
+		--eval '(require "asdf")' \
+		--eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+		--eval '(asdf:test-system "alexandria-tests")'
+}
+
+do_build() {
+	make -C doc html info pdf
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vcopy alexandria-1 $_LIBRARY_DIR
+	vcopy alexandria-2 $_LIBRARY_DIR
+	vcopy alexandria.asd $_LIBRARY_DIR
+	vinstall doc/alexandria.info 644 usr/share/info
+	vdoc doc/alexandria.pdf
+	vdoc doc/alexandria.html
+	vlicense LICENCE
+}

From bee4c9c7a5f06416137cc43801ba719fc3802055 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Thu, 21 Mar 2024 18:18:58 +0100
Subject: [PATCH 02/10] New package: cl-trivial-gray-streams-20240217

---
 srcpkgs/cl-trivial-gray-streams/template | 52 ++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
 create mode 100644 srcpkgs/cl-trivial-gray-streams/template

diff --git a/srcpkgs/cl-trivial-gray-streams/template b/srcpkgs/cl-trivial-gray-streams/template
new file mode 100644
index 00000000000000..a95c0f73691f4f
--- /dev/null
+++ b/srcpkgs/cl-trivial-gray-streams/template
@@ -0,0 +1,52 @@
+# Template file for 'cl-trivial-gray-streams'
+pkgname=cl-trivial-gray-streams
+#
+# NOTE: trivial-gray-streams doesn't tag versions so we use the date as a
+# version and the last commit for that date UTC.
+#
+# According to this discsion:
+#
+# https://github.com/trivial-gray-streams/trivial-gray-streams/issues/15
+#
+# every push to master is a release.
+#
+_src_date=20240217
+_src_hash=a7ead683666849762ea657dac9137d693c5a4929
+version=20240217
+revision=1
+checkdepends="sbcl"
+short_desc="Portability library for CL gray streams"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="MIT"
+homepage="https://github.com/trivial-gray-streams/trivial-gray-streams.git"
+distfiles="https://github.com/trivial-gray-streams/trivial-gray-streams/archive/${_src_hash}.tar.gz"
+checksum=0b3734561620a27f42e7960312282d732ff6313278db18aa376450a15a8ce8e6
+
+if [ "$version" != "${_src_date}" ]; then
+	echo "Version not equal to ${_src_date}, must be " 2>&1
+	echo "updated manually." 2>&1
+	exit 1
+fi
+
+_LIBRARY_DIR=usr/share/common-lisp/source/trivial-gray-streams
+
+do_check() {
+	# According to the author, the failure in stream-advance-to-column
+	# currently happens across all LISP implementations and is expected.
+	# See: https://github.com/trivial-gray-streams/trivial-gray-streams/issues/16
+	sbcl --non-interactive \
+	     --eval '(require "asdf")' \
+	     --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	     --eval '(asdf:load-system "trivial-gray-streams-test")' \
+	     --eval '(in-package :trivial-gray-streams-test)' \
+	     --eval '(when (not (equal (list "stream-advance-to-column")
+	                               (failed-test-names (run-tests))))
+	               (uiop:quit 1))'
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vcopy *.lisp $_LIBRARY_DIR
+	vcopy trivial-gray-streams.asd $_LIBRARY_DIR
+	vlicense COPYING
+}

From 8cd457b39040c3a15ae4209f091070c451330514 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Thu, 21 Mar 2024 18:47:29 +0100
Subject: [PATCH 03/10] New package: cl-fiasco-20200514

---
 srcpkgs/cl-fiasco/template | 53 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 srcpkgs/cl-fiasco/template

diff --git a/srcpkgs/cl-fiasco/template b/srcpkgs/cl-fiasco/template
new file mode 100644
index 00000000000000..bd78bf218550a6
--- /dev/null
+++ b/srcpkgs/cl-fiasco/template
@@ -0,0 +1,53 @@
+# Template file for 'cl-fiasco'
+pkgname=cl-fiasco
+#
+# NOTE: fiasco doesn't tag versions so we use the date as a
+# version and the last commit for that date UTC.
+#
+_src_date=20200514
+_src_hash=bb47d2fef4eb24cc16badc1c9a73d73c3a7e18f5
+#
+# The version of value should be dynamically computed but this is rejected by
+# the linter so instead we set it manually and later check for equality.
+#
+version=20200514
+revision=1
+depends="cl-alexandria cl-trivial-gray-streams"
+checkdepends="sbcl ${depends}"
+short_desc="Test framework for Common Lisp"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="Public Domain"
+homepage="https://github.com/joaotavora/fiasco.git"
+distfiles="https://github.com/joaotavora/fiasco/archive/${_src_hash}.tar.gz"
+checksum=070879b496f78b1048d4533b05a6e13dc1f6711da55f2f35e5d56e1cec92220c
+
+if [ "$version" != "${_src_date}" ]; then
+	echo "Version not equal to ${_src_date}.${_src_hash}, must be " 2>&1
+	echo "updated manually." 2>&1
+	exit 1
+fi
+
+_LIBRARY_DIR=usr/share/common-lisp/source/fiasco
+
+do_check() {
+	# Taken out of .travis.yml
+	sbcl --non-interactive \
+	     --eval '(require "asdf")' \
+	     --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	     --eval '(asdf:load-system "fiasco")' \
+	     --eval '(asdf:load-system "fiasco-self-tests")' \
+	     --eval "(unless (fiasco:run-tests
+	                       (quote (:fiasco-basic-self-tests
+	                               :fiasco-intro-example
+	                               :fiasco-suite-tests
+	                       )))
+	               (uiop:quit 1))"
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vcopy src $_LIBRARY_DIR
+	vcopy test $_LIBRARY_DIR
+	vcopy fiasco.asd $_LIBRARY_DIR
+	vlicense LICENCE
+}

From 7d9bfe79b0f3ae40f4bc523f628572ca5262f95b Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Thu, 21 Mar 2024 19:02:59 +0100
Subject: [PATCH 04/10] New package: cl-flexi-streams-1.0.20

---
 srcpkgs/cl-flexi-streams/template | 37 +++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 srcpkgs/cl-flexi-streams/template

diff --git a/srcpkgs/cl-flexi-streams/template b/srcpkgs/cl-flexi-streams/template
new file mode 100644
index 00000000000000..198d7969cf54b4
--- /dev/null
+++ b/srcpkgs/cl-flexi-streams/template
@@ -0,0 +1,37 @@
+# Template file for 'cl-flexi-streams'
+pkgname=cl-flexi-streams
+version=1.0.20
+revision=1
+depends="cl-trivial-gray-streams"
+checkdepends="sbcl ${depends}"
+short_desc="Flexible bivalent streams for Common Lisp"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="BSD-2-Clause"
+homepage="https://github.com/edicl/flexi-streams.git"
+distfiles="https://github.com/edicl/flexi-streams/archive/refs/tags/v${version}.tar.gz"
+checksum=8ebb0226e3748529564bc564e4012912b7dc2326d73c06eb41b5d0d07a60b538
+
+_LIBRARY_DIR=usr/share/common-lisp/source/flexi-streams
+
+do_check() {
+	sbcl --non-interactive \
+	     --eval '(require "asdf")' \
+	     --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	     --eval '(asdf:find-system "flexi-streams")' \
+	     --eval '(asdf:load-system "flexi-streams-test")' \
+	     --eval '(unless (flexi-streams-test:run-all-tests)
+	               (uiop:quit 1))'
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vcopy *.lisp $_LIBRARY_DIR
+	vcopy flexi-streams.asd $_LIBRARY_DIR
+	vdoc docs/index.html
+	# NOTE: Manually check license after this before submitting an update!
+	sed -n "4,28p" ascii.lisp | cut -c 5- > COPYING
+	# Print copyright notice to stdout for visual inspection
+	# in the build jobs.
+	cat COPYING
+	vlicense COPYING
+}

From 08c16836ea8c0f9dec1ee448118596855b2d28e8 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Fri, 22 Mar 2024 16:59:31 +0100
Subject: [PATCH 05/10] New package: cl-ppcre-2.1.1

---
 srcpkgs/cl-ppcre-unicode  |  1 +
 srcpkgs/cl-ppcre/template | 57 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)
 create mode 120000 srcpkgs/cl-ppcre-unicode
 create mode 100644 srcpkgs/cl-ppcre/template

diff --git a/srcpkgs/cl-ppcre-unicode b/srcpkgs/cl-ppcre-unicode
new file mode 120000
index 00000000000000..ca696f5b7df03e
--- /dev/null
+++ b/srcpkgs/cl-ppcre-unicode
@@ -0,0 +1 @@
+cl-ppcre
\ No newline at end of file
diff --git a/srcpkgs/cl-ppcre/template b/srcpkgs/cl-ppcre/template
new file mode 100644
index 00000000000000..b48cac1b50d584
--- /dev/null
+++ b/srcpkgs/cl-ppcre/template
@@ -0,0 +1,57 @@
+# Template file for 'cl-ppcre'
+pkgname=cl-ppcre
+version=2.1.1
+revision=1
+depends="cl-flexi-streams"
+checkdepends="sbcl ${depends}"
+short_desc="Common Lisp regular expression library"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="BSD-2-Clause"
+homepage="https://edicl.github.io/cl-ppcre/"
+distfiles=" https://github.com/edicl/cl-ppcre/archive/refs/tags/v${version}.tar.gz"
+checksum="89631179b71648d9e6c565a928f6896a9d5742aa2083b9c1b705fe0b45d85def"
+
+# NOTE:
+#
+# cl-ppcre-unicode is maintained as a separate package due to a circular
+# dependency on cl-unicode.
+#
+
+_LIBRARY_DIR=usr/share/common-lisp/source/cl-ppcre
+
+post_extract() {
+	rm "${wrksrc}/test/unicodetestdata"
+	rm "${wrksrc}/test/unicode-tests.lisp"
+}
+
+do_check() {
+	sbcl --non-interactive \
+	     --eval '(require "asdf")' \
+	     --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	     --eval '(asdf:find-system "cl-ppcre")' \
+	     --eval '(asdf:load-system "cl-ppcre-test")' \
+	     --eval "(unless (cl-ppcre-test:run-all-tests)
+	               (uiop:quit 1))"
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vcopy test $_LIBRARY_DIR
+	vcopy *.lisp $_LIBRARY_DIR
+	vcopy cl-ppcre.asd $_LIBRARY_DIR
+	vdoc docs/index.html
+	# NOTE: Manually check license after this before submitting an update!
+	#       Also, the master branch includes a LICENSE file so it'd
+	#       probably end up in an upcoming release.
+	if [ ! -f LICENSE ]; then
+		sed -n "6,30p" api.lisp | cut -c 5- > COPYING
+		# Print copyright info to stdout for visual inspection
+		# in the build jobs.
+		cat COPYING
+		vlicense COPYING
+	else
+		echo -n "This if statement is no longer necessary because " 1>&2
+		echo "a LICENSE file is present and can be used." 1>&2
+		exit 1
+	fi
+}

From 14980f7b7f3cc8ad8c991e740a30dd1a6603dbb2 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Sat, 23 Mar 2024 09:39:00 +0100
Subject: [PATCH 06/10] New package: cl-ppcre-unicode-2.1.1

---
 srcpkgs/cl-ppcre-unicode          |  1 -
 srcpkgs/cl-ppcre-unicode/template | 56 +++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 1 deletion(-)
 delete mode 120000 srcpkgs/cl-ppcre-unicode
 create mode 100644 srcpkgs/cl-ppcre-unicode/template

diff --git a/srcpkgs/cl-ppcre-unicode b/srcpkgs/cl-ppcre-unicode
deleted file mode 120000
index ca696f5b7df03e..00000000000000
--- a/srcpkgs/cl-ppcre-unicode
+++ /dev/null
@@ -1 +0,0 @@
-cl-ppcre
\ No newline at end of file
diff --git a/srcpkgs/cl-ppcre-unicode/template b/srcpkgs/cl-ppcre-unicode/template
new file mode 100644
index 00000000000000..2b6738d35c2855
--- /dev/null
+++ b/srcpkgs/cl-ppcre-unicode/template
@@ -0,0 +1,56 @@
+# Template file for 'cl-ppcre-unicode'
+pkgname=cl-ppcre-unicode
+version=2.1.1
+revision=1
+depends="cl-ppcre cl-unicode"
+checkdepends="sbcl ${depends}"
+short_desc="Common Lisp regular expression library (Unicode property support)"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="BSD-2-Clause"
+homepage="https://edicl.github.io/cl-ppcre/"
+distfiles=" https://github.com/edicl/cl-ppcre/archive/refs/tags/v${version}.tar.gz"
+checksum=89631179b71648d9e6c565a928f6896a9d5742aa2083b9c1b705fe0b45d85def
+
+# NOTE:
+#
+# This is a separate package from cl-ppcre due to a circular dependency on
+# cl-unicode.
+#
+
+_LIBRARY_DIR=usr/share/common-lisp/source/cl-ppcre-unicode
+
+do_check() {
+	sbcl --non-interactive \
+	     --eval '(require "asdf")' \
+	     --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	     --eval '(asdf:find-system "cl-ppcre")' \
+	     --eval '(asdf:load-system "cl-ppcre-test")' \
+	     --eval '(asdf:find-system "cl-ppcre-unicode")' \
+	     --eval '(asdf:load-system "cl-ppcre-unicode-test")' \
+	     --eval "(unless (cl-ppcre-test:run-all-tests :more-tests 'cl-ppcre-test:unicode-test)
+	               (uiop:quit 1))"
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vmkdir $_LIBRARY_DIR/test
+	vcopy test/unicode-tests.lisp $_LIBRARY_DIR/test
+	vcopy test/unicodetestdata $_LIBRARY_DIR/test
+	vcopy cl-ppcre-unicode $_LIBRARY_DIR
+	vcopy cl-ppcre-unicode.asd $_LIBRARY_DIR
+	vdoc docs/index.html
+	# NOTE: Manually check license after this before submitting an update!
+	#       Also, the master branch includes a LICENSE file so it'd
+	#       probably end up in an upcoming release.
+	if [ ! -f LICENSE ]; then
+		sed -n "6,30p" api.lisp | cut -c 5- > COPYING
+		# Print copyright info to stdout for visual inspection
+		# in the build jobs.
+		cat COPYING
+		vlicense COPYING
+	else
+		echo -n "This if statement is no longer necessary because " 1>&2
+		echo "a LICENSE file is present and can be used." 1>&2
+		exit 1
+	fi
+}

From d344b9ef1270435e96f1602b9d092eab4d9fe752 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Sat, 23 Mar 2024 09:46:43 +0100
Subject: [PATCH 07/10] New package: cl-unicode-0.1.6

---
 srcpkgs/cl-unicode/template | 50 +++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)
 create mode 100644 srcpkgs/cl-unicode/template

diff --git a/srcpkgs/cl-unicode/template b/srcpkgs/cl-unicode/template
new file mode 100644
index 00000000000000..ec170f197a6641
--- /dev/null
+++ b/srcpkgs/cl-unicode/template
@@ -0,0 +1,50 @@
+# Template file for 'cl-unicode'
+pkgname=cl-unicode
+version=0.1.6
+revision=1
+makedepends="sbcl cl-flexi-streams cl-ppcre"
+depends="cl-ppcre"
+short_desc="Portable Unicode library for Common Lisp"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="BSD-2-Clause"
+homepage="https://github.com/edicl/cl-unicode.git"
+distfiles="https://github.com/edicl/cl-unicode/archive/refs/tags/v${version}.tar.gz"
+checksum=97166b51a4e1e4251393df1c7bea80cde783d1771fb6f7aa2a69665ce37fbbfd
+
+_LIBRARY_DIR=usr/share/common-lisp/source/cl-unicode
+
+# do_check() {
+	# Taken out of .travis.yml
+	#
+	# Sadly in 0.1.6 the tests are expected to fail because of missing
+	# properties. This is fixed on master so uncomment this ocde
+	# once a new version is released.
+	#
+	# sbcl --non-interactive \
+	#      --eval '(require "asdf")' \
+	#      --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	#      --eval '(asdf:load-system "cl-unicode/test")' \
+	#      --eval '(uiop:quit (if (cl-unicode-test:run-all-tests)
+	#                           0 1))'
+# }
+
+do_build() {
+	sbcl --non-interactive \
+	     --eval '(require "asdf")' \
+	     --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	     --eval '(asdf:load-system "cl-unicode/build")'
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vcopy test $_LIBRARY_DIR
+	vcopy *.lisp $_LIBRARY_DIR
+	vcopy cl-unicode.asd $_LIBRARY_DIR
+	vdoc docs/index.html
+	# NOTE: Manually check license after this before submitting an update!
+	sed -n "4,28p" alias.lisp | cut -c 5- > COPYING
+	# Print conatenated copyright notices to stdout to inspect visually
+	# in the build jobs.
+	cat COPYING
+	vlicense COPYING
+}

From 792e7de5553f33be0f63eb1ef0ed0bf816a45a1b Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Sat, 23 Mar 2024 10:04:41 +0100
Subject: [PATCH 08/10] New package: cl-clx-0.7.6

---
 srcpkgs/cl-clx/template | 142 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 142 insertions(+)
 create mode 100644 srcpkgs/cl-clx/template

diff --git a/srcpkgs/cl-clx/template b/srcpkgs/cl-clx/template
new file mode 100644
index 00000000000000..b3b43c2164d571
--- /dev/null
+++ b/srcpkgs/cl-clx/template
@@ -0,0 +1,142 @@
+# Template file for 'cl-clx'
+pkgname=cl-clx
+version=0.7.6
+revision=1
+hostmakedepends="texinfo"
+checkdepends="xvfb-run sbcl cl-fiasco"
+short_desc="X11 client for Common Lisp"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="MIT, Public Domain, custom:COFFEEWARE"
+homepage="https://github.com/sharplispers/clx"
+distfiles="https://github.com/sharplispers/clx/archive/refs/tags/${version}.tar.gz"
+checksum=bcc9cd736e7e28ec2b8085ce1c9686e02ffbee9257e1072f5c4fc393e33467e8
+
+_LIBRARY_DIR=usr/share/common-lisp/source/clx
+
+do_check() {
+	xvfb-run sbcl --non-interactive \
+	              --eval '(require "asdf")' \
+	              --eval "(push #p\"${wrksrc}/\" asdf:*central-registry*)" \
+	              --eval '(asdf:load-system "clx/test")' \
+	              --eval '(unless (uiop:symbol-call :fiasco :run-tests :xlib-test)
+	                        (uiop:quit 1))'
+}
+
+do_build() {
+	makeinfo manual/clx.texinfo
+}
+
+do_install() {
+	vmkdir $_LIBRARY_DIR
+	vmkdir $_LIBRARY_DIR/manual
+	vcopy extensions $_LIBRARY_DIR
+	vcopy manual/clx.texinfo $_LIBRARY_DIR/manual
+	vcopy debug $_LIBRARY_DIR
+	vcopy demo $_LIBRARY_DIR
+	vcopy tests $_LIBRARY_DIR
+	vcopy *.asd $_LIBRARY_DIR
+	vcopy *.lisp $_LIBRARY_DIR
+	vcopy *.c $_LIBRARY_DIR
+	vcopy CHANGES $_LIBRARY_DIR
+	vcopy README.md $_LIBRARY_DIR
+	vcopy README-R5 $_LIBRARY_DIR
+	vcopy exclMakefile $_LIBRARY_DIR
+	vcopy exclREADME $_LIBRARY_DIR
+	vinstall manual/clx.texinfo 644 usr/share/info
+
+	vlicense LICENSE
+
+	# The provided license file doesn't include all license info spread
+	# around in the package so we gather it all in an extended license
+	# file
+
+	_license_file=LICENSE.ext
+
+	# Portions Copyright (C) 1987 Texas Instruments Incorporated.
+	# Portions Copyright (C) 1988, 1989 Franz Inc, Berkeley, Ca.
+	sed -n "5,21p" clx.asd | cut -c 5- > ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) 1987 Texas Instruments Incorporated.
+	sed -n '5,19p' demo/zoid.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) 1987, 1989 Massachussetts Institute of Technology
+	sed -n "5,14p" sockcl.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) Digital Equipment Corporation, 1996
+	sed -n "6,14p" extensions/dpms.lisp | cut -c 7- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (c) 2004, Christophe Rhodes
+	sed -n "40,60p" demo/clipboard.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# (c) copyright 2014 by Johannes Martinez
+	sed -n "7,18p" extensions/randr.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# (c) copyright 1999 by Gilbert Baumann
+	sed -n "7,18p" extensions/shape.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (c) 1987, 1988, 1989 Franz Inc, Berkeley, Ca.
+	sed -n "4,14p" excldep.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) 2008, Julian Stecklina
+	sed -n "2,9p" extensions/xinerama.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) 1990 Symbolics, Inc.
+	sed -n "3,11p" generalock.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# (c) copyright 2002, 2003 by Gilbert Baumann
+	# (c) copyright 2002 by Christian Sunesson
+	sed -n "8,20p" extensions/xrender.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# (c) copyright 2005 by Istvan Marko
+	sed -n "7,18p" extensions/screensaver.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# (c) copyright 2006 Richard Kreuter
+	# (c) copyright 2007 by Christophe Rhodes
+	sed -n "3,13p" extensions/big-requests.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright    Massachusetts Institute of Technology    1988
+	head -n 1 socket.c >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# (c) copyright 2003 by Iban Hatchondo
+	sed -n "7,18p" extensions/xvidmode.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) 1988 Michael O. Newton (newton@csvax.caltech.edu)
+	sed -n "827,832p" demo/clx-demos.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright 1990 Massachusetts Institute of Technology, Cambridge,
+	sed -n "3,12p" package.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Copyright (C) 1988 Texas Instruments Incorporated.
+	sed -n "3,17p" demo/menu.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Public domain: Scott Fahlman
+	sed -n "4,7p" cmudep.lisp | cut -c 5- >> ${_license_ext}
+	echo "===============================================================" >> ${_license_ext}
+
+	# Public domain: Lionel Flandrin
+	sed -n "6,7p" extensions/xtest.lisp | cut -c 5- >> ${_license_ext}
+
+	# Print concatenated copyright notices to for visual inspection
+	# in the build jobs.
+	cat ${_license_ext}
+
+	vlicense ${_license_ext}
+}

From 028577cf65bb173209f288501bb26b152aa19f97 Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Sat, 23 Mar 2024 10:57:28 +0100
Subject: [PATCH 09/10] New package: stumpwm-23.11

---
 srcpkgs/stumpwm/INSTALL.msg                | 15 +++++++++
 srcpkgs/stumpwm/patches/require-asdf.patch | 17 ++++++++++
 srcpkgs/stumpwm/template                   | 38 ++++++++++++++++++++++
 3 files changed, 70 insertions(+)
 create mode 100644 srcpkgs/stumpwm/INSTALL.msg
 create mode 100644 srcpkgs/stumpwm/patches/require-asdf.patch
 create mode 100644 srcpkgs/stumpwm/template

diff --git a/srcpkgs/stumpwm/INSTALL.msg b/srcpkgs/stumpwm/INSTALL.msg
new file mode 100644
index 00000000000000..f5b14779279a85
--- /dev/null
+++ b/srcpkgs/stumpwm/INSTALL.msg
@@ -0,0 +1,15 @@
+*** IMPORTANT ***
+
+You most likely need to export SBCL_HOME before running StumpWM.
+See https://github.com/stumpwm/stumpwm/issues/760 for more info.
+In most cases when using Bash it will suffice to execute:
+
+export SBCL_HOME=/usr/lib/sbcl/
+
+before running /usr/bin/stumpwm.
+
+*** EVEN MORE IMPORTANT ***
+
+Should you update SBCL you MUST also update StumpWM because of compiled
+code compatibility. Updating SBCL without updating StumpWM will lead to
+strange errors when you start StumpWM.
diff --git a/srcpkgs/stumpwm/patches/require-asdf.patch b/srcpkgs/stumpwm/patches/require-asdf.patch
new file mode 100644
index 00000000000000..b6ffd2c27859d0
--- /dev/null
+++ b/srcpkgs/stumpwm/patches/require-asdf.patch
@@ -0,0 +1,17 @@
+diff --git a/Makefile.in b/Makefile.in
+index ff09b91..56b2c86 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -1,9 +1,9 @@
+ LISP=@LISP_PROGRAM@
+ MAKEINFO=@MAKEINFO@
+ 
+-sbcl_BUILDOPTS=--non-interactive --eval "(setf sb-impl::*default-external-format* :UTF-8)" --load ./make-image.lisp
+-sbcl_INFOOPTS=--non-interactive --eval "(setf sb-impl::*default-external-format* :UTF-8)" --eval "(progn (load \"load-stumpwm.lisp\") (load \"manual.lisp\"))" --eval "(progn (stumpwm::generate-manual) (sb-ext:quit))"
+-sbcl_TESTOPTS=--non-interactive --eval "(setf sb-impl::*default-external-format* :UTF-8)" --eval "(progn (load \"load-stumpwm.lisp\") (asdf:load-system :stumpwm-tests))" --eval "(if (fiasco:all-tests) (uiop:quit 0) (uiop:quit 1))"
++sbcl_BUILDOPTS=--non-interactive --eval "(require 'asdf)" --eval "(setf sb-impl::*default-external-format* :UTF-8)" --load ./make-image.lisp
++sbcl_INFOOPTS=--non-interactive --eval "(require 'asdf)" --eval "(setf sb-impl::*default-external-format* :UTF-8)" --eval "(progn (load \"load-stumpwm.lisp\") (load \"manual.lisp\"))" --eval "(progn (stumpwm::generate-manual) (sb-ext:quit))"
++sbcl_TESTOPTS=--non-interactive --eval "(require 'asdf)" --eval "(setf sb-impl::*default-external-format* :UTF-8)" --eval "(progn (load \"load-stumpwm.lisp\") (asdf:load-system :stumpwm-tests))" --eval "(if (fiasco:all-tests) (uiop:quit 0) (uiop:quit 1))"
+ 
+ datarootdir = @datarootdir@
+ prefix=@prefix@
diff --git a/srcpkgs/stumpwm/template b/srcpkgs/stumpwm/template
new file mode 100644
index 00000000000000..430feaf1368f35
--- /dev/null
+++ b/srcpkgs/stumpwm/template
@@ -0,0 +1,38 @@
+# Template file for 'stumpwm'
+pkgname=stumpwm
+# WARNING !!! WARHNING !!! WARNING !!!
+#
+# This package MUST be rebuilt for EVERY SBCL update because compiled FASL
+# files (and thus the executable) are ONLY compatible with specific versions.
+#
+version=23.11
+revision=1
+makedepends="autoconf sbcl cl-ppcre cl-alexandria cl-clx texinfo"
+depends="sbcl>=2.4.2_1 cl-ppcre cl-alexandria cl-clx"
+checkdepends="sbcl cl-fiasco"
+short_desc="Stump Window Manager"
+maintainer="Mihail Ivanchev <contact@ivanchev.net>"
+license="GPL-2.0-only"
+homepage="https://github.com/stumpwm/stumpwm"
+distfiles="https://github.com/stumpwm/stumpwm/archive/refs/tags/${version}.tar.gz"
+checksum=01e5fa4ec6466b8d5817d8105e41f9f1628e898c8770bbeb6377fadb23ee4817
+nostrip=yes
+
+export SBCL_HOME=/usr/lib/sbcl
+
+do_configure() {
+	./autogen.sh
+	./configure --prefix="${DESTDIR}/usr" --with-module-dir=/usr/share/stumpwm/contrib
+}
+
+do_build() {
+	make
+}
+
+do_check() {
+	make test
+}
+
+do_install() {
+	make install
+}

From ecc40f147b9fcffca74eedf6177c13156284706c Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Sat, 23 Mar 2024 17:11:58 +0100
Subject: [PATCH 10/10] sbcl: warnings regarding StumpWM and compiled code in
 general.

---
 srcpkgs/sbcl/template | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/srcpkgs/sbcl/template b/srcpkgs/sbcl/template
index acdb5f8c27ba88..04db3c628a8f4a 100644
--- a/srcpkgs/sbcl/template
+++ b/srcpkgs/sbcl/template
@@ -1,5 +1,14 @@
 # Template file for 'sbcl'
 pkgname=sbcl
+# WARNING !!! WARHNING !!! WARNING !!!
+#
+# When updating this package, all compiled SBCL executables needs to be
+# rebuilt and released because compiled code (FASL) is only compatible
+# to the compiler version it was generated with. This currently includes
+# the following packages:
+#
+# stumpwm
+#
 version=2.4.4
 revision=1
 # make sure the sbcl option in maxima is enabled for the same archs

  parent reply	other threads:[~2024-05-14 10:03 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-21 17:11 [PR PATCH] [WIP] " MIvanchev
2024-03-21 17:19 ` [PR PATCH] [Updated] " MIvanchev
2024-03-21 17:35 ` MIvanchev
2024-03-21 17:37 ` MIvanchev
2024-03-21 17:47 ` MIvanchev
2024-03-21 18:03 ` MIvanchev
2024-03-22 16:04 ` MIvanchev
2024-03-22 16:08 ` MIvanchev
2024-03-22 21:34 ` MIvanchev
2024-03-22 21:38 ` MIvanchev
2024-03-23  8:46 ` MIvanchev
2024-03-23  8:54 ` MIvanchev
2024-03-23  8:57 ` MIvanchev
2024-03-23  9:04 ` MIvanchev
2024-03-23  9:09 ` MIvanchev
2024-03-23  9:21 ` MIvanchev
2024-03-23  9:27 ` MIvanchev
2024-03-23  9:27 ` MIvanchev
2024-03-23  9:45 ` MIvanchev
2024-03-23  9:57 ` MIvanchev
2024-03-23 10:05 ` MIvanchev
2024-03-23 16:12 ` MIvanchev
2024-03-23 18:32 ` MIvanchev
2024-05-12 16:50 ` [PR PATCH] [Updated] " MIvanchev
2024-05-12 16:52 ` MIvanchev
2024-05-12 17:08 ` MIvanchev
2024-05-13 11:33 ` MIvanchev
2024-05-13 11:38 ` MIvanchev
2024-05-14 10:03 ` MIvanchev [this message]
2024-05-14 10:32 ` MIvanchev
2024-05-14 10:38 ` MIvanchev
2024-05-14 15:22 ` MIvanchev
2024-06-03 21:52 ` [PR PATCH] [Updated] " MIvanchev
2024-06-15 10:26 ` MIvanchev
2024-09-14  1:55 ` github-actions
2024-09-14  8:52 ` MIvanchev
2024-10-20 10:37 ` atisharma
2024-10-20 16:52 ` MIvanchev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240514100350.9A2BC26731@inbox.vuxu.org \
    --to=mivanchev@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).