Subject: [PATCH 4/4]

From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 8 May 2021 20:55:09 +0000

-- 
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
From 52a5f2d5b9dc3fdf6fdfcd9b25c395db373f7fff Mon Sep 17 00:00:00 2001
From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 8 May 2021 21:39:10 +0100
Subject: [PATCH 4/4] gnu: Add trivial-main-thread

* gnu/packages/lisp-xyz.scm (sbcl-trivial-main-thread,
  ecl-trivial-main-thread, cl-trivial-main-thread): New variables.
---
 gnu/packages/lisp-xyz.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 219fd9ff65..bd39cbcdaf 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -16534,3 +16534,37 @@ allow to wrangle OpenGL Shader Language (GLSL) source files.")
 
 (define-public cl-simple-tasks
   (sbcl-package->cl-source-package sbcl-simple-tasks))
+
+(define-public sbcl-trivial-main-thread
+  (let ((commit "25f114973bb69eb63e01d0bbfead31f8e682846a")
+        (revision "1"))
+    (package
+      (name "sbcl-trivial-main-thread")
+      (version (git-version "1.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/Shinmera/trivial-main-thread")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0bw1887i7396lqg75qvmgjfzz4xbiq9w5dp8wxdgrcsm0qwlraw7"))))
+      (build-system asdf-build-system/sbcl)
+      (inputs
+       `(("bordeaux-threads" ,sbcl-bordeaux-threads)
+         ("simple-tasks" ,sbcl-simple-tasks)
+         ("trivial-features" ,sbcl-trivial-features)))
+      (home-page "https://shinmera.github.io/trivial-main-thread/")
+      (synopsis "Compatibility library to run things in the main thread")
+      (description
+       "This package provides a Common Lisp system which wraps BORDEUX-THREADS
+system to be compatible to run GUI applications in the main thread of the
+implementation.")
+      (license license:zlib))))
+
+(define-public ecl-trivial-main-thread
+  (sbcl-package->ecl-package sbcl-trivial-main-thread))
+
+(define-public cl-trivial-main-thread
+  (sbcl-package->cl-source-package sbcl-trivial-main-thread))
-- 
2.31.1