Message ID | n_YztFw412lx5VOCWh9kbK1K-3vlVj0Na5mHSEyssAoeogh2jfjsh_jF45h7BkvsQ_3ogOou9tFM5dfUFksumlwP5UCMnCLwE_cLx_dRRmw=@protonmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [bug#36091] gnu: Add emacs-excorporate | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | Apply failed |
Hello, First of all thank you for a contribution! Could you split this patch to make a single patch per package, please? Also several notes about current patch below. TK <tkprom@protonmail.com> writes: > Empty Message > From 73a918c84f1a25c2def96b6830e68b3b6368e06e Mon Sep 17 00:00:00 2001 > From: =?UTF-8?q?Todor=20Kondi=C4=87?= <tk.code@protonmail.com> > 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. This could be in a single (emacs-ntlm, emacs-url-http-ntlm, emacs-soap-client, &): New variables., but after splitting the patch it will be not relevant. > --- > 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 <mikadozero@yandex.com> > ;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com> > ;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> > +;;; Copyright © 2019 Todor Kondi‡ <tk.code@protonmail.com> > ;;; > ;;; 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")) Last three lines could be on a single line. > + (sha256 > + (base32 > + "01d0bcmh8a36qf871w6bc05kjk9bmnh843m9869xw06zyvqwg9mv")))) > + (build-system emacs-build-system) > + (home-page > + "http://elpa.gnu.org/packages/ntlm.html") Use https://elpa.gnu.org/packages/ntlm.html and on single line. > + (synopsis > + "NTLM (NT LanManager) authentication support") Could be one line. > + (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")) One line. > + (sha256 > + (base32 > + "0gi3csnxbs8h7iy0scsl35sic3gv90swa89hhdjwb7qvpirfdcgw")))) > + (build-system emacs-build-system) > + (home-page > + "http://elpa.gnu.org/packages/nadvice.html") One line and https. > + (synopsis > + "Forward compatibility for Emacs-24.4's nadvice") One line. > + (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") One line and https. > + (synopsis > + "NTLM authentication for the url library") One line. > + (description > + "This package provides a NTLM handler for the URL package.") One line. > + (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") One line and https. > + (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+))) I think we should replace this instruction with a package description instead, because we have the same tutorial in soap-client.el file. > +(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")) One line. > + (sha256 > + (base32 > + "1jyxyqdbfl8nv7c50q0sg3w5p7whp1sqgi7w921k5hfar4d11qqp")))) > + (build-system emacs-build-system) > + (home-page > + "http://elpa.gnu.org/packages/fsm.html") One line and https. > + (synopsis "state machine library") Linter has some warnings: $ ./pre-inst-env guix lint emacs-fsm gnu/packages/emacs-xyz.scm:15903:14: emacs-fsm@0.2.1: synopsis should start with an upper-case letter or digit Also, State machine Emacs library will be better for guix search. > + (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. I think it's enough for the description. gnu/packages/emacs-xyz.scm:15905:6: emacs-fsm@0.2.1: description should start with an upper-case letter or digit The warning above could be fixed by @code{fsm.el}. > 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")) One line. > + (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") One line and https. > + (synopsis "Exchange integration") Maybe Exchange integration for Emacs as in description. > + (description > + "Excorporate provides Exchange integration for Emacs. That's enough, we will have the following after installing a package. > +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+))) > + Regards, Oleg.
Oleg Pykhalov <go.wigust@gmail.com> writes: > Hello, > > First of all thank you for a contribution! > > Could you split this patch to make a single patch per package, please? > > Also several notes about current patch below. > > TK <tkprom@protonmail.com> writes: > >> Empty Message >> From 73a918c84f1a25c2def96b6830e68b3b6368e06e Mon Sep 17 00:00:00 2001 >> From: =?UTF-8?q?Todor=20Kondi=C4=87?= <tk.code@protonmail.com> >> 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. > > This could be in a single (emacs-ntlm, emacs-url-http-ntlm, > emacs-soap-client, &): New variables., but after splitting the patch > it will be not relevant. > >> --- >> 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 <mikadozero@yandex.com> >> ;;; Copyright 2019 Gabriel Hondet <gabrielhondet@gmail.com> >> ;;; Copyright 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> >> +;;; Copyright 2019 Todor Kondi‡ <tk.code@protonmail.com> >> ;;; >> ;;; 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")) > > Last three lines could be on a single line. > >> + (sha256 >> + (base32 >> + "01d0bcmh8a36qf871w6bc05kjk9bmnh843m9869xw06zyvqwg9mv")))) >> + (build-system emacs-build-system) >> + (home-page >> + "http://elpa.gnu.org/packages/ntlm.html") > > Use https://elpa.gnu.org/packages/ntlm.html and on single line. > >> + (synopsis >> + "NTLM (NT LanManager) authentication support") > > Could be one line. > >> + (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")) > > One line. > >> + (sha256 >> + (base32 >> + "0gi3csnxbs8h7iy0scsl35sic3gv90swa89hhdjwb7qvpirfdcgw")))) >> + (build-system emacs-build-system) >> + (home-page >> + "http://elpa.gnu.org/packages/nadvice.html") > > One line and https. > >> + (synopsis >> + "Forward compatibility for Emacs-24.4's nadvice") > > One line. > >> + (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") > > One line and https. > >> + (synopsis >> + "NTLM authentication for the url library") > > One line. > >> + (description >> + "This package provides a NTLM handler for the URL package.") > > One line. > >> + (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") > > One line and https. > >> + (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+))) > > I think we should replace this instruction with a package description > instead, because we have the same tutorial in soap-client.el file. > >> +(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")) > > One line. > >> + (sha256 >> + (base32 >> + "1jyxyqdbfl8nv7c50q0sg3w5p7whp1sqgi7w921k5hfar4d11qqp")))) >> + (build-system emacs-build-system) >> + (home-page >> + "http://elpa.gnu.org/packages/fsm.html") > > One line and https. > >> + (synopsis "state machine library") > > Linter has some warnings: > > $ ./pre-inst-env guix lint emacs-fsm > gnu/packages/emacs-xyz.scm:15903:14: emacs-fsm@0.2.1: synopsis should > start with an upper-case letter or digit > > Also, State machine Emacs library will be better for guix search. > >> + (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. > > I think it's enough for the description. > > gnu/packages/emacs-xyz.scm:15905:6: emacs-fsm@0.2.1: description should > start with an upper-case letter or digit > > The warning above could be fixed by @code{fsm.el}. > >> 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")) > > One line. > >> + (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") > > One line and https. > >> + (synopsis "Exchange integration") > > Maybe Exchange integration for Emacs as in description. > >> + (description >> + "Excorporate provides Exchange integration for Emacs. > > That's enough, we will have the following after installing a package. > >> +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+))) >> + > > Regards, > Oleg. > Hello Oleg and TK, I'd like to see these changes get pushed to master. TK, we are just needing you to split these packages and follow the revisions that Oleg proposed which I agree with. Depending on the age of these packages they now likely lag behind its dependent packages so some version adjustments may be indicated. If you need some help, please do not hesitate to ask!
Hello Oleg, Brett and TK, here are the modified patches. Hope all the issues are fixed. Petr
Hello,
phodina via Guix-patches via <guix-patches@gnu.org> writes:
> here are the modified patches. Hope all the issues are fixed.
Applied. Thank you.
Note that the indentation was off in most of the package definitions.
You may want to double-check how you indent the code, using ,e.g.,
etc/indent-code.el.
Regards,
Hi Nicolas, On Saturday, November 6th, 2021 at 10:45 AM, Nicolas Goaziou <mail@nicolasgoaziou.fr> wrote: > Hello, > > phodina via Guix-patches via guix-patches@gnu.org writes: > > > here are the modified patches. Hope all the issues are fixed. > > Applied. Thank you. > > Note that the indentation was off in most of the package definitions. > > You may want to double-check how you indent the code, using ,e.g., > > etc/indent-code.el. > > Regards, > ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Nicolas Goaziou Sorry for the indentation and additional effort. I sometimes forget to run it. Do you now some git hook that would do that? My thinking was to parse the first line in git commit and extract the package name, then run the script. Petr
Hello,
phodina via Guix-patches via <guix-patches@gnu.org> writes:
> Do you now some git hook that would do that?
I just hit M-q in Emacs out of habit.
I guess you could use pre-commit hook, grab the package name, and call
indent-code.el on it.
Regards,
From 73a918c84f1a25c2def96b6830e68b3b6368e06e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Todor=20Kondi=C4=87?= <tk.code@protonmail.com> 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 <mikadozero@yandex.com> ;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com> ;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> +;;; Copyright © 2019 Todor Kondić <tk.code@protonmail.com> ;;; ;;; 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