aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/gnustep.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gnustep.scm')
-rw-r--r--gnu/packages/gnustep.scm30
1 files changed, 22 insertions, 8 deletions
diff --git a/gnu/packages/gnustep.scm b/gnu/packages/gnustep.scm
index 74c1ad9051..edd159d262 100644
--- a/gnu/packages/gnustep.scm
+++ b/gnu/packages/gnustep.scm
@@ -40,17 +40,31 @@
"1i3dw1yagsa3rs9x2na2ynqlgmbahayws0kz4vl00fla6550nns3"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-cons-after
- 'install 'wrap
+ '(#:phases (alist-cons-before
+ 'configure 'pre-configure
(lambda* (#:key outputs #:allow-other-keys)
+ ;; 'wmaker' wants to invoke 'wmaker.inst' the first time,
+ ;; and the 'wmsetbg', so make sure it uses the right ones.
+ ;; We can't use a wrapper here because that would pollute
+ ;; $PATH in the whole session.
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
- ;; 'wmaker' wants to invoke 'wmaker.inst' the first time,
- ;; which in turn wants to invoke 'wmmenugen' etc., so
- ;; make sure everything is in $PATH.
- (wrap-program (string-append bin "/wmaker")
- `("PATH" ":" prefix (,bin)))))
- %standard-phases)))
+ (substitute* "src/main.c"
+ (("\"wmaker\\.inst")
+ (string-append "\"" bin "/wmaker.inst")))
+ (substitute* '("src/defaults.c" "WPrefs.app/Menu.c")
+ (("\"wmsetbg")
+ (string-append "\"" bin "/wmsetbg")))))
+ (alist-cons-after
+ 'install 'wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ ;; In turn, 'wmaker.inst' wants to invoke 'wmmenugen'
+ ;; etc., so make sure everything is in $PATH.
+ (wrap-program (string-append bin "/wmaker.inst")
+ `("PATH" ":" prefix (,bin)))))
+ %standard-phases))))
(inputs
`(("libxmu" ,libxmu)
("libxft" ,libxft)