Toggle quote (306 lines)
> 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.
>