aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/arcan.scm
diff options
context:
space:
mode:
authorAhmad Draidi <a.r.draidi@redscript.org>2023-08-10 22:16:35 +0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-09-05 19:50:46 -0400
commit2b6b951f555ab07257256dcf53c841262f1e1b3e (patch)
tree2c1592d1cd3cf6f90852e62152fb2aa646536682 /gnu/packages/arcan.scm
parent8bcf567c71ba9b3526c8f2eb74d8e56bc2e120c0 (diff)
downloadguix-2b6b951f555ab07257256dcf53c841262f1e1b3e.tar
guix-2b6b951f555ab07257256dcf53c841262f1e1b3e.tar.gz
gnu: arcan: Fix paths handling.
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. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Diffstat (limited to 'gnu/packages/arcan.scm')
-rw-r--r--gnu/packages/arcan.scm27
1 files changed, 5 insertions, 22 deletions
diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm
index c7d8a839a2..9d18f7a52a 100644
--- a/gnu/packages/arcan.scm
+++ b/gnu/packages/arcan.scm
@@ -83,6 +83,11 @@
"-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
@@ -98,30 +103,8 @@
(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)