Subject: [bug#36091] [PATCH] gnu: Add emacs-excorporate

From: TK <[email-masked]>
Date: Tue, 04 Jun 2019 11:29:20 +0000

Empty Message

From 73a918c84f1a25c2def96b6830e68b3b6368e06e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Todor=20Kondi=C4=87?= <[email-masked]>
Date: Tue, 4 Jun 2019 13:15:52 +0200
Subject: [PATCH] gnu: Add emacs-excorporate

* gnu/packages/emacs-xyz.scm (emacs-ntlm, emacs-ntlm): New variables.
  (emacs-url-http-ntlm, emacs-soap-client): New variables.
  (emacs-fsm,emacs-excorporate): New variables.
---
 gnu/packages/emacs-xyz.scm | 189 +++++++++++++++++++++++++++++++++++++
 1 file changed, 189 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index f9f0b2156f..81880886d3 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -47,6 +47,7 @@
 ;;; Copyright © 2019 mikadoZero <[email-masked]>
 ;;; Copyright © 2019 Gabriel Hondet <[email-masked]>
 ;;; Copyright © 2019 LaFreniere, Joseph <[email-masked]>
+;;; Copyright © 2019 Todor Kondić <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -15669,3 +15670,191 @@ verb commands which would are normally destructive (such as deletion) are
 provided.  Those alternative commands are and bound by default to their
 corresponding Evil keys.")
       (license license:expat))))
+
+
+(define-public emacs-ntlm
+  (package
+   (name "emacs-ntlm")
+   (version "2.1.0")
+   (source
+    (origin
+     (method url-fetch)
+     (uri (string-append
+           "https://elpa.gnu.org/packages/ntlm-"
+           version
+           ".el"))
+     (sha256
+      (base32
+       "01d0bcmh8a36qf871w6bc05kjk9bmnh843m9869xw06zyvqwg9mv"))))
+   (build-system emacs-build-system)
+   (home-page
+    "http://elpa.gnu.org/packages/ntlm.html")
+   (synopsis
+    "NTLM (NT LanManager) authentication support")
+   (description
+    "This library is a direct translation of the Samba release 2.2.0
+implementation of Windows NT and LanManager compatible password
+encryption.")
+   (license license:gpl3+)))
+
+(define-public emacs-nadvice
+  (package
+    (name "emacs-nadvice")
+    (version "0.3")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://elpa.gnu.org/packages/nadvice-"
+               version
+               ".el"))
+        (sha256
+          (base32
+            "0gi3csnxbs8h7iy0scsl35sic3gv90swa89hhdjwb7qvpirfdcgw"))))
+    (build-system emacs-build-system)
+    (home-page
+      "http://elpa.gnu.org/packages/nadvice.html")
+    (synopsis
+      "Forward compatibility for Emacs-24.4's nadvice")
+    (description
+      "This package tries to re-implement some of nadvice.el's functionality
+on top of the old defadvice system, to help users of defadvice
+move to the new advice system without dropping support for Emacs<24.4.")
+    (license license:gpl3+)))
+
+(define-public emacs-url-http-ntlm
+  (package
+    (name "emacs-url-http-ntlm")
+    (version "2.0.4")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://elpa.gnu.org/packages/url-http-ntlm-"
+               version
+               ".el"))
+        (sha256
+          (base32
+            "1cakq2ykraci7d1gl8rnpv4f2f5ffyaidhqb1282g7i72adwmb98"))))
+    (build-system emacs-build-system)
+    (propagated-inputs `(("emacs-ntlm" ,emacs-ntlm)))
+    (home-page
+      "http://elpa.gnu.org/packages/url-http-ntlm.html")
+    (synopsis
+      "NTLM authentication for the url library")
+    (description
+      "This package provides a NTLM handler for the URL package.")
+    (license license:gpl3+)))
+
+(define-public emacs-soap-client
+  (package
+    (name "emacs-soap-client")
+    (version "3.1.5")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://elpa.gnu.org/packages/soap-client-"
+               version
+               ".tar"))
+        (sha256
+          (base32
+            "0nnf075ywxmsfd6vmzk2yg3khx6sycl5l6qrgp5rqqmw0wzhxlh0"))))
+    (build-system emacs-build-system)
+    (home-page
+      "http://elpa.gnu.org/packages/soap-client.html")
+    (synopsis "Access SOAP web services")
+    (description
+      "To use the SOAP client, you first need to load the WSDL document for the
+service you want to access, using `soap-load-wsdl-from-url'.  A WSDL
+document describes the available operations of the SOAP service, how their
+parameters and responses are encoded.  To invoke operations, you use the
+`soap-invoke' method passing it the WSDL, the service name, the operation
+you wish to invoke and any required parameters.
+
+Ideally, the service you want to access will have some documentation about
+the operations it supports.  If it does not, you can try using
+`soap-inspect' to browse the WSDL document and see the available operations
+and their parameters.")
+    (license license:gpl3+)))
+
+(define-public emacs-fsm
+  (package
+    (name "emacs-fsm")
+    (version "0.2.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://elpa.gnu.org/packages/fsm-"
+               version
+               ".el"))
+        (sha256
+          (base32
+            "1jyxyqdbfl8nv7c50q0sg3w5p7whp1sqgi7w921k5hfar4d11qqp"))))
+    (build-system emacs-build-system)
+    (home-page
+      "http://elpa.gnu.org/packages/fsm.html")
+    (synopsis "state machine library")
+    (description
+      "fsm.el is an exercise in metaprogramming inspired by gen_fsm of
+Erlang/OTP.  It aims to make asynchronous programming in Emacs Lisp
+easy and fun.  By \"asynchronous\" I mean that long-lasting tasks
+don't interfer with normal editing.
+
+Some people say that it would be nice if Emacs Lisp had threads
+and/or continuations.  They are probably right, but there are few
+things that can't be made to run in the background using facilities
+already available: timers, filters and sentinels.  As the code can
+become a bit messy when using such means, with callbacks everywhere
+and such things, it can be useful to structure the program as a
+state machine.")
+    (license license:gpl3+)))
+
+(define-public emacs-excorporate
+  (package
+    (name "emacs-excorporate")
+    (version "0.8.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://elpa.gnu.org/packages/excorporate-"
+               version
+               ".tar"))
+        (sha256
+          (base32
+            "1k89472x80wsn14y16km5bgynmmd2kbdfhylb3cc17jvdn1xr53y"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+      `(("emacs-fsm" ,emacs-fsm)
+        ("emacs-soap-client" ,emacs-soap-client)
+        ("emacs-url-http-ntlm" ,emacs-url-http-ntlm)
+        ("emacs-nadvice" ,emacs-nadvice)))
+    (home-page
+      "http://elpa.gnu.org/packages/excorporate.html")
+    (synopsis "Exchange integration")
+    (description
+      "Excorporate provides Exchange integration for Emacs.
+
+To create a connection to a web service:
+
+M-x excorporate
+
+Excorporate will prompt for an email address that it will use to
+automatically discover settings.  Then it will prompt you for your
+credentials two or three times depending on the server configuration.
+
+You should see a message indicating that the connection is ready
+either in the minibuffer or in the *Messages* buffer.
+
+Finally, run M-x calendar, and press @code{e} to show today's meetings.
+
+If autodiscovery fails, customize @code{excorporate-configuration} to skip
+autodiscovery.
+
+For further information including connection troubleshooting, see the
+Excorporate Info node at C-h i d m Excorporate.
+")
+    (license license:gpl3+)))
+
-- 
2.21.0