From 316c05e7519c0d9fc3ccefbb89dbfcc19104d3c1 Mon Sep 17 00:00:00 2001
From: John Kehayias <john.kehayias@protonmail.com>
Date: Tue, 5 Jul 2022 13:13:07 -0400
Subject: [PATCH 2/2] gnu: Add oauth2ms.
* gnu/packages/python-web.scm (oauth2ms): New variable.
---
gnu/packages/python-web.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
@@ -73,16 +73,20 @@ (define-module (gnu packages python-web)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system python)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages django)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages groff)
#:use-module (gnu packages libevent)
@@ -2986,6 +2990,43 @@ (define-public python-msal
protocols.")
(license license:expat)))
+(define-public oauth2ms
+ (let ((commit "a1ef0cabfdea57e9309095954b90134604e21c08") (revision "0"))
+ (package
+ (name "oauth2ms")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/harishkrupo/oauth2ms")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0dqi6n4npdrvb42r672n4sl1jl8z5lsk554fwiiihpj0faa9dx64"))))
+ (build-system copy-build-system)
+ (arguments
+ (list #:install-plan #~`(("oauth2ms" "bin/oauth2ms")
+ ("."
+ #$(string-append "share/doc/" name "-" version "/")
+ #:include-regexp ("\\.org$")))
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'install 'wrap-pythonpath
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((path (getenv "GUIX_PYTHONPATH")))
+ (wrap-program (string-append #$output
+ "/bin/oauth2ms")
+ `("GUIX_PYTHONPATH" ":" prefix
+ (,path)))))))))
+ (inputs (list bash-minimal python python-gnupg python-msal python-pyxdg))
+ (home-page "https://github.com/harishkrupo/oauth2ms")
+ (synopsis "XOAUTH2 compatible Microsoft Office 365 token fetcher")
+ (description
+ "Oauth2ms can be used to fetch OAuth 2.0 tokens from the Microsoft Identity
+endpoint. Additionally, it can encode the token in the XOAUTH2 format to be
+used as authentication in IMAP mail servers.")
+ (license license:asl2.0))))
+
(define-public python-oauthlib
(package
(name "python-oauthlib")
--
2.36.1