diff options
Diffstat (limited to 'gnu/packages/authentication.scm')
-rw-r--r-- | gnu/packages/authentication.scm | 56 |
1 files changed, 53 insertions, 3 deletions
diff --git a/gnu/packages/authentication.scm b/gnu/packages/authentication.scm index 68a6459828..d995ef7e85 100644 --- a/gnu/packages/authentication.scm +++ b/gnu/packages/authentication.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,16 +19,18 @@ (define-module (gnu packages authentication) #:use-module (gnu packages) + #:use-module (gnu packages autotools) + #:use-module (gnu packages documentation) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages security-token) #:use-module (guix build-system gnu) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) (define-public oath-toolkit - ;; If gcc@7 breaks this package before its next release, try patching it: - ;; <https://gitlab.com/oath-toolkit/oath-toolkit/issues/2#note_52958748>. (package (name "oath-toolkit") (version "2.6.2") @@ -36,7 +39,18 @@ (method url-fetch) (uri (string-append "https://download.savannah.nongnu.org/releases/" name "/" name "-" version ".tar.gz")) - (patches (search-patches "oath-toolkit-glibc-compat.patch")) + (patches + (append (search-patches "oath-toolkit-glibc-compat.patch") + (list (origin + ;; This huge commit updates gnulib for GCC 7 compatibility. + (method url-fetch) + (uri (string-append + "https://gitlab.com/oath-toolkit/oath-toolkit/commit/" + "2fffce2a471f74a585939c84cce16ef3015e5d3d.diff")) + (file-name "oath-toolkit-update-gnulib.patch") + (sha256 + (base32 + "088c9s4ay1b54bjqc4mwfs5l3f6357zj5vpw771zlq5g4addd4s0")))))) (sha256 (base32 "182ah8vfbg0yhv6mh1b6ap944d0na6x7lpfkwkmzb6jl9gx4cd5h")))) (build-system gnu-build-system) @@ -77,3 +91,39 @@ Supported technologies include the event-based @dfn{HOTP} algorithm (RFC4226) and the time-based @dfn{TOTP} algorithm (RFC6238).") (license (list license:lgpl2.1+ ; the libraries (liboath/ & libpskc/) license:gpl3+)))) ; the tools (everything else) + +(define-public yubico-pam + (let ((commit "b5bd00db81e0e0e0ecced65c684080bb56ddc35b") + (revision "0")) + (package + (name "yubico-pam") + (version (git-version "2.26" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Yubico/yubico-pam.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "10dq8dqi3jldllj6p8r9hldx9sank9n82c44w8akxrs1vli6nj3m")))) + (build-system gnu-build-system) + (arguments + ;; The pam_test fails because ykclient fails to build a Curl handle. + '(#:make-flags '("TESTS=util_test"))) + (inputs + `(("linux-pam" ,linux-pam) + ("libyubikey" ,libyubikey) + ("ykclient" ,ykclient) + ("yubikey-personalization" ,yubikey-personalization))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("asciidoc" ,asciidoc) + ("pkg-config" ,pkg-config))) + (home-page "https://developers.yubico.com/yubico-pam") + (synopsis "Yubico pluggable authentication module") + (description "The Yubico PAM module provides an easy way to integrate the +YubiKey into your existing user authentication infrastructure.") + (license license:bsd-2)))) |