Message ID | 682006543f08e606b9d774d75d0b29205b610d7e.1712661600.git.a.r.draidi@redscript.org |
---|---|
State | New |
Headers | show |
Series | [bug#64348,v4] gnu: Add durden. | expand |
Hello again, Sorry. I made a mistake, I believe. Arcan requires setuid to run without nesting. I only tested with nesting before sending v4. I'll pick up arcan from the user's profile. I think that's the best course of action. Sorry for the noise. On 9 April 2024 15:20:00 GTS, Ahmad Draidi <a.r.draidi@redscript.org> wrote: >* gnu/packages/arcan.scm (durden): New variable. > >Change-Id: I3ea34563c74c227eed40f4ad50d23713c45ce70b >--- >Hello Liliana, > >Thanks for the review. > >I believe I got all of them. Coreutils are a sneaky bunch :) > >Thanks! > >v2 changes: Rebase to fix conflicts >v3 changes: Update to commit matching Arcan 0.6.3 (68016) >v4 changes: Hard-code coreutils and arcan paths in "durden" shell script > > gnu/packages/arcan.scm | 72 +++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 71 insertions(+), 1 deletion(-) > >diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm >index c4dfa8da3e..9d68005175 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) >@@ -29,6 +30,7 @@ (define-module (gnu packages arcan) > #:use-module (guix utils) > #: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 +185,74 @@ (define-public arcan-sdl > "-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")))) >+ (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")) >+ (("([\\([:blank:]]+)arcan " _ separator) >+ (string-append separator >+ (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") > >base-commit: 51de844a0ff6ea224367a384092896bce6848b9f >-- >2.41.0 >
diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm index c4dfa8da3e..9d68005175 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) @@ -29,6 +30,7 @@ (define-module (gnu packages arcan) #:use-module (guix utils) #: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 +185,74 @@ (define-public arcan-sdl "-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")))) + (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")) + (("([\\([:blank:]]+)arcan " _ separator) + (string-append separator + (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")