summaryrefslogtreecommitdiff
path: root/gnu/packages/arcan.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/arcan.scm')
-rw-r--r--gnu/packages/arcan.scm73
1 files changed, 72 insertions, 1 deletions
diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm
index c4dfa8da3e..f86e8206e5 100644
--- a/gnu/packages/arcan.scm
+++ b/gnu/packages/arcan.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 L p R n d n <guix@lprndn.info>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
-;;; Copyright © 2023 Ahmad Draidi <a.r.draidi@redscript.org>
+;;; Copyright © 2023, 2024 Ahmad Draidi <a.r.draidi@redscript.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,6 +20,7 @@
(define-module (gnu packages arcan)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system meson)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
@@ -27,8 +28,10 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
+ #:use-module (gnu packages)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
@@ -183,6 +186,74 @@ engine with a Lua scripting interface.")
"-DSTATIC_FREETYPE=off" "-DSHMIF_TUI_ACCEL=on")))))
(synopsis "Combined display server, multimedia framework and game engine (SDL)")))
+(define-public durden
+ ;; Match Arcan 0.6.3
+ (let ((commit "a8938b9c835f55bedc2c42aec4ddc5c9739eb949")
+ (revision "1"))
+ (package
+ (name "durden")
+ (version (git-version "0.6.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (file-name (git-file-name name version))
+ (uri (git-reference
+ (url "https://github.com/letoram/durden")
+ (commit commit)))
+ (sha256
+ (base32 "1ybi6x2kwn597kjqycrqmlvp6z79yv2jfwzgx937wcckm55xlpvk"))
+ (patches (search-patches "durden-shadow-arcan.patch"))))
+ (build-system copy-build-system)
+ (arguments
+ (list
+ #:install-plan #~'(("durden/" "share/arcan/appl/durden/")
+ ("util/" "share/arcan/appl/durden/util/")
+ ("distr/durden" "bin/durden"))
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* "distr/durden"
+ (("/usr/share/\\$applname")
+ (string-append (assoc-ref outputs "out")
+ "/share/arcan/appl"))
+ (("@ARCAN_STORE_PATH@")
+ (string-append (assoc-ref inputs "arcan")
+ "/bin/arcan"))
+ (("([\\([:blank:]]+)basename " _ separator)
+ (string-append separator
+ (assoc-ref inputs "coreutils")
+ "/bin/basename "))
+ (("([\\([:blank:]]+)date " _ separator)
+ (string-append separator
+ (assoc-ref inputs "coreutils")
+ "/bin/date "))
+ (("([\\([:blank:]]+)ln " _ separator)
+ (string-append separator
+ (assoc-ref inputs "coreutils")
+ "/bin/ln "))
+ (("([\\([:blank:]]+)mkdir " _ separator)
+ (string-append separator
+ (assoc-ref inputs "coreutils")
+ "/bin/mkdir "))
+ (("([\\([:blank:]]+)true; " _ separator)
+ (string-append separator
+ (assoc-ref inputs "coreutils")
+ "/bin/true; "))
+ (("([\\([:blank:]]+)\\[ " _ separator)
+ (string-append separator
+ (assoc-ref inputs "coreutils")
+ "/bin/[ "))))))))
+ (inputs (list arcan coreutils))
+ (home-page "https://durden.arcan-fe.com/")
+ (synopsis "Desktop Environment for Arcan")
+ (description
+ "Durden is a desktop environment for the Arcan Display Server.
+It serves both as a reference showcase on how to take advantage of some of the
+features in Arcan, and as an entry to the advanced-user side of the desktop
+environment spectrum.")
+ (license (list license:bsd-3 license:expat license:cc-by3.0
+ license:cc-by4.0 license:asl2.0)))))
+
(define-public xarcan
(package
(name "xarcan")