unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Christopher Allan Webber <cwebber@dustycloud.org>
To: Taylan Ulrich Kammer <taylanbayirli@gmail.com>
Cc: Guix-devel <guix-devel@gnu.org>
Subject: Re: [PATCH] Add guile-emacs!
Date: Tue, 19 May 2015 12:29:17 -0500	[thread overview]
Message-ID: <87oalgear7.fsf@earlgrey.lan> (raw)
In-Reply-To: <87wq0bh70o.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1127 bytes --]

Taylan Ulrich Kammer writes:

> Christopher Allan Webber <cwebber@dustycloud.org> writes:
>
>> Okay, how about a version of guile-emacs that works and incorporates
>> feedback from this thread?  Yeah?  Anyone?
>>
>> Whoooooooooo guile-emacs! :)
>
> Yay! :-)
>
> I would have thought these would go to guile.scm and emacs.scm.  What do
> others think?
>
>> +(define-public guile-for-guile-emacs
>> [...]
>> +    (inputs
>> +     `(("gettext" ,gnu-gettext)
>
> Sure it shouldn't be in native-inputs?  I'm guessing autogen uses it.
>
>> +(define-public guile-emacs
>> [...]
>> +     (substitute-keyword-arguments `(#:parallel-build? #f         
>
> A comment explaining why parallel builds are disabled would be good.
>
>> +                                     ;; Tests aren't passing for now.
>> +                                     ;; Obviously we should re-enable this!
>> +                                     #:tests? #f
>
> Tests should generally always be enabled so the second line of the
> comment would be redundant; just a nitpick. :-)
>
>
> Otherwise looks good to me.  Thanks!
>
> Taylan

Okay, integrated at last!


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-guile-emacs-and-guile-for-guile-emacs.patch --]
[-- Type: text/x-diff, Size: 4475 bytes --]

From 51edaeae907220ea1b7c8ef8187c444e897b9d09 Mon Sep 17 00:00:00 2001
From: Christopher Allan Webber <cwebber@dustycloud.org>
Date: Sun, 10 May 2015 09:29:54 -0500
Subject: [PATCH] gnu: Add guile-emacs and guile-for-guile-emacs

* gnu/packages/guile.scm (guile-for-guile-emacs): New variable.
* gnu/packages/emacs.scm (guile-emacs): New variable.
---
 gnu/packages/emacs.scm | 33 +++++++++++++++++++++++++++++++++
 gnu/packages/guile.scm | 38 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 71 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 8d3df36..9270376 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -23,10 +23,12 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system trivial)
   #:use-module (gnu packages)
+  #:use-module (gnu packages guile)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages ncurses)
@@ -146,6 +148,37 @@ editor (without an X toolkit)" )
     (arguments (append '(#:configure-flags '("--with-x-toolkit=no"))
                        (package-arguments emacs)))))
 
+(define-public guile-emacs
+  (package (inherit emacs)
+    (name "guile-emacs")
+    (version "20150512.41120e0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "git://git.hcoop.net/git/bpt/emacs.git")
+                    (commit "41120e0f595b16387eebfbf731fff70481de1b4b")))
+              (sha256
+               (base32
+                "0lvcvsz0f4mawj04db35p1dvkffdqkz8pkhc0jzh9j9x2i63kcz6"))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ,@(package-native-inputs emacs)))
+    (inputs
+     `(("guile" ,guile-for-guile-emacs)
+       ,@(package-inputs emacs)))
+    (arguments
+     (substitute-keyword-arguments `(;; Build fails if we allow parallel build
+                                     #:parallel-build? #f
+                                     ;; Tests aren't passing for now.
+                                     #:tests? #f
+                                     ,@(package-arguments emacs))
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (add-after 'unpack 'autogen
+                      (lambda _
+                        (zero? (system* "sh" "autogen.sh"))))))))))
+
 \f
 ;;;
 ;;; Emacs hacking.
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 751002f..1b1cd88 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -181,6 +181,44 @@ without requiring the source code to be rewritten.")
   ;; in the `base' module, and thus changing it entails a full rebuild.
   guile-2.0)
 
+(define-public guile-for-guile-emacs
+  (package (inherit guile-2.0)
+    (name "guile-for-guile-emacs")
+    (version "20150510.d8d9a8d")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "git://git.hcoop.net/git/bpt/guile.git")
+                    (commit "d8d9a8da05ec876acba81a559798eb5eeceb5a17")))
+              (sha256
+               (base32
+                "00sprsshy16y8pxjy126hr2adqcvvzzz96hjyjwgg8swva1qh6b0"))))
+    (arguments
+     (substitute-keyword-arguments `(;; Tests aren't passing for now.
+                                     ;; Obviously we should re-enable this!
+                                     #:tests? #f
+                                     ,@(package-arguments guile-2.0))
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (add-after 'unpack 'autogen
+                      (lambda _
+                        (zero? (system* "sh" "autogen.sh"))))
+           (add-before 'autogen 'patch-/bin/sh
+                       (lambda _
+                         (substitute* "build-aux/git-version-gen"
+                           (("#!/bin/sh") (string-append "#!" (which "sh"))))
+                         #t))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("libtool" ,libtool)
+       ("flex" ,flex)
+       ("texinfo" ,texinfo)
+       ,@(package-native-inputs guile-2.0)))
+    (inputs
+     `(("gettext" ,gnu-gettext)
+       ,@(package-inputs guile-2.0)))))
+
 \f
 ;;;
 ;;; Extensions.
-- 
2.1.4


  parent reply	other threads:[~2015-05-19 17:29 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-10 19:35 [PATCH] Attempt at packaging guile-emacs (needs help) Christopher Allan Webber
2015-05-10 21:51 ` Mark H Weaver
2015-05-11  2:29   ` Christopher Allan Webber
2015-05-14  0:01 ` [PATCH] Add guile-emacs! Christopher Allan Webber
2015-05-14  8:56   ` Taylan Ulrich Kammer
2015-05-14 15:53     ` Christopher Allan Webber
2015-05-14 20:06       ` Taylan Ulrich Kammer
2015-05-14 20:52         ` Taylan Ulrich Kammer
2015-05-15 10:13       ` Ludovic Courtès
2015-05-19 17:29     ` Christopher Allan Webber [this message]
2015-05-19 18:29       ` Taylan Ulrich Bayırlı/Kammer
2015-05-19 19:41         ` Christopher Allan Webber
2015-05-19 20:24           ` Taylan Ulrich Bayırlı/Kammer
2015-05-20 12:22             ` Ludovic Courtès
2015-05-23  7:26   ` Feng Shu
2015-05-23 17:21     ` Christopher Allan Webber

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87oalgear7.fsf@earlgrey.lan \
    --to=cwebber@dustycloud.org \
    --cc=guix-devel@gnu.org \
    --cc=taylanbayirli@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).