From 47956fa0c24efcdcba3493f0231c30e9a39ec7df Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 14 Mar 2019 09:33:38 +0000 Subject: Correct name and email address for ng0. * .mailmap, Makefile.am, doc/guix.de.texi, doc/guix.fr.texi, doc/guix.texi, etc/completion/fish/guix.fish, gnu/packages/accessibility.scm, gnu/packages/admin.scm, gnu/packages/audio.scm, gnu/packages/autotools.scm, gnu/packages/cdrom.scm, gnu/packages/check.scm, gnu/packages/cinnamon.scm, gnu/packages/compression.scm, gnu/packages/crypto.scm, gnu/packages/databases.scm, gnu/packages/django.scm, gnu/packages/dns.scm, gnu/packages/elixir.scm, gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm, gnu/packages/enlightenment.scm, gnu/packages/erlang.scm, gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/forth.scm, gnu/packages/fvwm.scm, gnu/packages/games.scm, gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/gtk.scm, gnu/packages/guile-wm.scm,gnu/packages/guile-xyz.scm, gnu/packages/haskell-check.scm, gnu/packages/haskell-crypto.scm, gnu/packages/haskell.scm, gnu/packages/image-viewers.scm, gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/language.scm, gnu/packages/libcanberra.scm, gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm, gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm, gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm, gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm, gnu/packages/ncurses.scm, gnu/packages/networking.scm, gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm, gnu/packages/perl-check.scm, gnu/packages/perl.scm, gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/python-xyz.scm, gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm, gnu/packages/rust.scm, gnu/packages/scheme.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm, gnu/packages/telephony.scm, gnu/packages/text-editors.scm, gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm, gnu/packages/tor.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm, gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm, gnu/services/desktop.scm, gnu/services/version-control.scm, gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Correct name and email address for ng0. Signed-off-by: Tobias Geerinckx-Rice --- gnu/packages/guile-wm.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/packages/guile-wm.scm') diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index 3755282403..7b1731171a 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014 Ludovic Courtès ;;; Copyright © 2016 Alex ter Weele ;;; Copyright © 2017 Ricardo Wurmus -;;; Copyright © 2017 Nils Gillmann +;;; Copyright © 2017 ng0 ;;; ;;; This file is part of GNU Guix. ;;; -- cgit v1.2.3 From ceab33feee33ce7d680717604bb8336299423924 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 20 Mar 2019 21:01:42 +0100 Subject: gnu: guile-wm: Compile and use canonical directories. Fixes . * gnu/packages/guile-wm.scm (guile-wm)[arguments]: Rename "set-go-directory" phase to "set-module-directory"; change "set-load-path" phase to wrap executable in the correct environment variables; add phase "install-go-files". --- gnu/packages/guile-wm.scm | 69 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 52 insertions(+), 17 deletions(-) (limited to 'gnu/packages/guile-wm.scm') diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index 7b1731171a..2955c06a0d 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014 Ludovic Courtès ;;; Copyright © 2016 Alex ter Weele -;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2017, 2019 Ricardo Wurmus ;;; Copyright © 2017 ng0 ;;; ;;; This file is part of GNU Guix. @@ -87,39 +87,74 @@ dependencies.") "086dijnpl5dpglf70d6f9sizyakr313y7blpdjrmbi687j1x3qcl")))) (build-system gnu-build-system) (arguments - `( ;; The '.scm' files go to $(datadir), so set that to the + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 rdelim) + (ice-9 popen)) + ;; The '.scm' files go to $(datadir), so set that to the ;; standard value. #:configure-flags (list (string-append "--datadir=" (assoc-ref %outputs "out") "/share/guile/site/2.2")) #:phases (modify-phases %standard-phases - (add-before 'configure 'set-go-directory + (add-before 'configure 'set-module-directory (lambda* (#:key outputs #:allow-other-keys) - ;; Install .go files to $out/share/guile/site/2.2. - (let ((out (assoc-ref outputs "out"))) + ;; Install .scm files to $out/share/guile/site/2.2. + (let ((out (assoc-ref outputs "out")) + (effective (read-line + (open-pipe* OPEN_READ + "guile" "-c" + "(display (effective-version))")))) (substitute* "module/Makefile.in" (("^wmdir = .*$") (string-append "wmdir = " out - "/share/guile/site/2.2\n")))) + "/share/guile/site/" + effective "\n")))) #t)) (add-after 'install 'set-load-path (lambda* (#:key inputs outputs #:allow-other-keys) ;; Put Guile-XCB's and Guile-WM's modules in the ;; search path of PROG. - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/bin/guile-wm")) - (mods (string-append - out "/share/guile/site/2.2")) - (xcb (string-append - (assoc-ref inputs "guile-xcb") - "/share/guile/site/2.2"))) - (wrap-program - prog - `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) + (let* ((out (assoc-ref outputs "out")) + (effective (read-line + (open-pipe* OPEN_READ + "guile" "-c" + "(display (effective-version))"))) + (prog (string-append out "/bin/guile-wm")) + (mods (string-append out "/share/guile/site/" effective)) + (gos (string-append out "/lib/guile/" effective "/site-ccache")) + (xcb (assoc-ref inputs "guile-xcb"))) + (wrap-program prog + `("GUILE_AUTO_COMPILE" ":" = ("0")) + `("GUILE_LOAD_PATH" ":" prefix + (,mods ,(string-append xcb "/share/guile/site/" effective))) `("GUILE_LOAD_COMPILED_PATH" ":" prefix - (,mods ,xcb)))) + (,gos ,(string-append xcb "/lib/guile/" + effective "/site-ccache"))))) #t)) + (add-after 'install 'install-go-files + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (effective (read-line + (open-pipe* OPEN_READ + "guile" "-c" + "(display (effective-version))"))) + (module-dir (string-append out "/share/guile/site/" + effective)) + (object-dir (string-append out "/lib/guile/" effective + "/site-ccache")) + (prefix (string-length module-dir))) + (setenv "GUILE_AUTO_COMPILE" "0") + ;; compile to the destination + (for-each (lambda (file) + (let* ((base (string-drop (string-drop-right file 4) + prefix)) + (go (string-append object-dir base ".go"))) + (invoke "guild" "compile" "-L" module-dir + file "-o" go))) + (find-files module-dir "\\.scm$")) + #t))) (add-after 'install 'install-xsession (lambda* (#:key outputs #:allow-other-keys) ;; add a .desktop file to xsessions -- cgit v1.2.3