From 701f416b45990dfc8de2082bec4621479b2041cb Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Sun, 5 Jan 2020 20:39:24 +0000 Subject: [PATCH] gnu: Add python-pywinrm. * gnu/packages/python-xyz.scm (python-pywinrm): New variable. * gnu/packages/python-web.scm (python-requests_ntlm): New variable. * gnu/packages/python-crypto.scm (python-ntlm-auth): New variable. * gnu/packages/python-crypto.scm (python-kerberos): New variable. --- gnu/packages/python-crypto.scm | 56 ++++++++++++++++++++++++++++++++++ gnu/packages/python-web.scm | 25 +++++++++++++++ gnu/packages/python-xyz.scm | 31 +++++++++++++++++++ 3 files changed, 112 insertions(+) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index 63d3be17c2..61e1107248 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2018 Nam Nguyen ;;; Copyright © 2019 Guillaume Le Vaillant ;;; Copyright © 2019 Clément Lassieur +;;; Copyright © 2020 Alexandros Theodotou > ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,6 +46,7 @@ #:use-module (gnu packages) #:use-module (gnu packages check) #:use-module (gnu packages crypto) + #:use-module (gnu packages kerberos) #:use-module (gnu packages libffi) #:use-module (gnu packages multiprecision) #:use-module (gnu packages protobuf) @@ -1135,3 +1137,57 @@ storing and retrieving sensitive information in your programs.") package provides a tool to securely sign firmware images for booting by MCUboot.") (license license:expat))) + +(define-public python-ntlm-auth + (package + (name "python-ntlm-auth") + (version "1.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ntlm-auth" version)) + (sha256 + (base32 + "16mavidki4ma5ip8srqalr19gz4f5yn3cnmmgps1fmgfr24j63rm")))) + (build-system python-build-system) + (propagated-inputs + `(("python-cryptography" ,python-cryptography))) + (home-page "https://github.com/jborean93/ntlm-auth") + (synopsis + "Calculates NTLM Authentication codes") + (description + "This library handles the low-level details of NTLM authentication for +use in authenticating with a service that uses NTLM. It will create and parse +the 3 different message types in the order required and produce a base64 +encoded value that can be attached to the HTTP header. + +The goal of this library is to offer full NTLM support including signing and +sealing of messages as well as supporting MIC for message integrity and the +ability to customise and set limits on the messages sent. Please see Features +and Backlog for a list of what is and is not currently supported.") + (license license:expat))) + +(define-public python-kerberos + (package + (name "python-kerberos") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "kerberos" version)) + (sha256 + (base32 + "19663qxmma0i8bfbjc2iwy5hgq0g4pfb75r023v5dps68zfvffgh")))) + (build-system python-build-system) + (inputs + `(("mit-krb5" ,mit-krb5))) + (home-page "https://github.com/apple/ccs-pykerberos") + (synopsis + "Python Kerberos library used by CalendarServer") + (description + "This Python package is a high-level wrapper for Kerberos (GSSAPI) +operations. The goal is to avoid having to build a module that wraps the +entire Kerberos.framework, and instead offer a limited set of functions that +do what is needed for client/server Kerberos authentication based on +.") + (license license:asl2.0))) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 179e64e0a1..7ea83808f0 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -31,6 +31,7 @@ ;;; Copyright © 2019 Brendan Tildesley ;;; Copyright © 2019 Pierre Langlois ;;; Copyright © 2019 Tanguy Le Carrour +;;; Copyright © 2020 Alexandros Theodotou > ;;; ;;; This file is part of GNU Guix. ;;; @@ -3421,3 +3422,27 @@ Unicorn project. The Gunicorn server is broadly compatible with various web frameworks, simply implemented, light on server resources, and fairly speedy.") (license license:expat))) + +(define-public python-requests_ntlm + (package + (name "python-requests_ntlm") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "requests_ntlm" version)) + (sha256 + (base32 + "0wgbqzaq9w7bas16b7brdb75f91bh3275fb459093bk1ihpck2ci")))) + (build-system python-build-system) + (propagated-inputs + `(("python-cryptography" ,python-cryptography) + ("python-ntlm-auth" ,python-ntlm-auth) + ("python-requests" ,python-requests))) + (home-page "https://github.com/requests/requests-ntlm") + (synopsis + "NTLM authentication support for Requests") + (description + "This package allows for HTTP NTLM authentication using the requests +library.") + (license license:isc))) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index db43bd72e4..6e301a59ad 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -68,6 +68,7 @@ ;;; Copyright © 2019 Wiktor Żelazny ;;; Copyright © 2019 Tanguy Le Carrour ;;; Copyright © 2019 Mădălin Ionel Patrașcu +;;; Copyright © 2020 Alexandros Theodotou > ;;; ;;; This file is part of GNU Guix. ;;; @@ -107,6 +108,7 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages graphviz) #:use-module (gnu packages graphics) + #:use-module (gnu packages gsasl) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages icu4c) @@ -17112,3 +17114,32 @@ scripts to load entry points more quickly.") functional combinators. Parser combinators are just higher-order functions that take parsers as their arguments and return them as result values.") (license license:expat))) + +(define-public python-pywinrm + (package + (name "python-pywinrm") + (version "0.4.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pywinrm" version)) + (sha256 + (base32 + "10gabhhg3rgacd5ahmi2r128z99fzbrbx6mz1nnq0dxmhmn5rpjf")))) + (build-system python-build-system) + (propagated-inputs + `(("python-six" ,python-six) + ("python-requests_ntlm" ,python-requests_ntlm) + ("python-xmltodict" ,python-xmltodict) + ("python-kerberos" ,python-kerberos))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest))) + (home-page "https://github.com/diyan/pywinrm/") + (synopsis + "Python library for Windows Remote Management (WinRM)") + (description + "pywinrm is a Python client for the Windows Remote Management (WinRM) +service. It allows you to invoke commands on target Windows machines from +any machine that can run Python.") + (license license:expat))) -- 2.24.1