diff options
author | Marius Bakke <mbakke@fastmail.com> | 2017-12-07 18:26:11 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2017-12-07 18:26:11 +0100 |
commit | 9e111db4535b3cd5729e37294ae51d95240334b4 (patch) | |
tree | cc90a9de80ff39bd93426b763918d904abfeeb56 /gnu/packages/gnustep.scm | |
parent | 92b61d3e1bb50f0c1d087bc8d57cc00c3ce360df (diff) | |
parent | cf69135d5e6797e566b8bb18419ae9e3c8aeb621 (diff) | |
download | guix-patches-9e111db4535b3cd5729e37294ae51d95240334b4.tar guix-patches-9e111db4535b3cd5729e37294ae51d95240334b4.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/gnustep.scm')
-rw-r--r-- | gnu/packages/gnustep.scm | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/gnu/packages/gnustep.scm b/gnu/packages/gnustep.scm index 195249c435..a6adc697a0 100644 --- a/gnu/packages/gnustep.scm +++ b/gnu/packages/gnustep.scm @@ -34,7 +34,8 @@ #:use-module (gnu packages fontutils) #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages xml)) + #:use-module (gnu packages xml) + #:use-module (ice-9 match)) (define-public gnustep-make (package @@ -65,6 +66,7 @@ to easily create cross-compiled binaries.") (package (name "windowmaker") (version "0.95.8") + (synopsis "NeXTSTEP-like window manager") (source (origin (method url-fetch) (uri (string-append @@ -75,7 +77,10 @@ to easily create cross-compiled binaries.") "12p8kljqgx5hnic0zvs5mxwp7kg21sb6qjagb2qw8ydvf5amrgwx")))) (build-system gnu-build-system) (arguments - '(#:phases + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 match)) + #:phases (modify-phases %standard-phases (add-before 'configure 'pre-configure (lambda* (#:key outputs #:allow-other-keys) @@ -97,14 +102,33 @@ to easily create cross-compiled binaries.") (substitute* "src/defaults.c" (("len = strlen\\(text\\) \\+ 40;") (string-append "len = strlen(text) + 107;")))))) - (add-after 'install 'wrap + (add-after 'install 'install-xsession + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (xsessions (string-append out "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file + (string-append xsessions "/windowmaker.desktop") + (lambda (port) + (format port "~ + [Desktop Entry]~@ + Name=Window Maker~@ + Comment=~a~@ + Exec=~a/bin/wmaker~@ + Type=Application~%" + (string-map (match-lambda + (#\newline #\space) + (chr chr)) + ,synopsis) %output)))) + #t)) + (add-after 'install-xsession '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))))))))) + `("PATH" ":" prefix (,bin))))))))) (inputs `(("libxmu" ,libxmu) ("libxft" ,libxft) @@ -117,7 +141,6 @@ to easily create cross-compiled binaries.") (native-inputs `(("pkg-config" ,pkg-config))) (home-page "http://windowmaker.org/") - (synopsis "NeXTSTEP-like window manager") (description "Window Maker is an X11 window manager originally designed to provide integration support for the GNUstep Desktop Environment. In every way |