GNU bug report logs - #64387
[PATCH 0/6] Update and rework arcan

Previous Next

Package: guix-patches;

Reported by: Ahmad Draidi <a.r.draidi <at> redscript.org>

Date: Fri, 30 Jun 2023 22:03:01 UTC

Severity: normal

Tags: patch

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Ahmad Draidi <a.r.draidi <at> redscript.org>
To: 64387 <at> debbugs.gnu.org
Cc: Ahmad Draidi <a.r.draidi <at> redscript.org>, paren <at> disroot.org, guix <at> cbaines.net, ludo <at> gnu.org, othacehe <at> gnu.org, rg <at> raghavgururajan.name, rekado <at> elephly.net, zimon.toutoune <at> gmail.com, me <at> tobias.gr, jgart <at> dismail.de
Subject: [bug#64387] [PATCH v2 3/6] gnu: arcan: Fix paths handling.
Date: Thu, 10 Aug 2023 22:16:35 +0400
This patch removes the wrapper and the propagated environment variables
(through 'native-search-paths') and instead patches the paths inside the
source code. This fixes path handling, which seems to be broken now. It
also allows us to use 'setuid', which is required for some features, and
lets the app use its internal path handling criteria, which some dependent
apps expect.

* gnu/packages/arcan.scm (arcan): Fix paths handling.
[arguments]: Add 'patch-paths' phase. Remove 'wrap-program' phase.
[native-search-paths]: Remove.
---
 gnu/packages/arcan.scm | 27 +++++----------------------
 1 file changed, 5 insertions(+), 22 deletions(-)

diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm
index cfd72f6e55..159c6d2190 100644
--- a/gnu/packages/arcan.scm
+++ b/gnu/packages/arcan.scm
@@ -79,6 +79,11 @@ (define-public arcan
                              "-DDISTR_TAG='Guix'")
          #:phases
          (modify-phases %standard-phases
+           (add-after 'unpack 'patch-paths
+             (lambda* (#:key outputs #:allow-other-keys)
+               (substitute* "src/platform/posix/paths.c"
+                 (("/usr/local")
+                  (assoc-ref outputs "out")))))
            ;; Normally, it tries to fetch patched openal with git
            ;; but copying files manually in the right place seems to work too.
            (add-after 'unpack 'prepare-static-openal
@@ -94,30 +99,8 @@ (define-public arcan
            (add-before 'configure 'chdir
              (lambda _
                (chdir "src")
-               #t))
-           (add-after 'install 'wrap-program
-             (lambda* (#:key outputs #:allow-other-keys)
-               (let ((out (assoc-ref outputs "out")))
-                 (wrap-program (string-append out "/bin/arcan")
-                   `("ARCAN_RESOURCEPATH" ":" suffix
-                     (,(string-append out "/share/arcan/resources")))
-                   `("ARCAN_STATEBASEPATH" ":" =
-                     ("$HOME/.arcan/resources/savestates"))
-                   `("ARCAN_STATEPATH" ":" =
-                     ("$HOME/.arcan/resources/savestates"))
-                   `("ARCAN_BINPATH" ":" =
-                     (,(string-append out "/bin/arcan_frameserver")))))
                #t)))
          #:tests? #f))
-      (native-search-paths
-       (list (search-path-specification
-              (variable "ARCAN_APPLBASEPATH")
-              (separator #f)
-              (files '("share/arcan/appl")))
-             (search-path-specification
-              (variable "ARCAN_SCRIPTPATH")
-              (separator #f)
-              (files '("share/arcan/scripts")))))
       (inputs
        `(("bash-minimal" ,bash-minimal)
          ("espeak" ,espeak)
-- 
2.41.0





This bug report was last modified 1 year and 256 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.