From 316c05e7519c0d9fc3ccefbb89dbfcc19104d3c1 Mon Sep 17 00:00:00 2001 From: John Kehayias 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(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index a2dcf49569..834b40fc58 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -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