From patchwork Fri Jan 14 23:01:34 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: John Kehayias X-Patchwork-Id: 36351 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id C208227BBEA; Fri, 14 Jan 2022 23:02:32 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 40E3527BBE9 for ; Fri, 14 Jan 2022 23:02:32 +0000 (GMT) Received: from localhost ([::1]:40618 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n8VaZ-0005cy-Am for patchwork@mira.cbaines.net; Fri, 14 Jan 2022 18:02:31 -0500 Received: from eggs.gnu.org ([209.51.188.92]:43270) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n8VaI-0005cL-Pj for guix-patches@gnu.org; Fri, 14 Jan 2022 18:02:14 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:45623) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n8Va6-0008RV-G2 for guix-patches@gnu.org; Fri, 14 Jan 2022 18:02:13 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1n8Va6-0002TF-BS for guix-patches@gnu.org; Fri, 14 Jan 2022 18:02:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53270] [PATCH v2] gnu: Add yubikey-oath-dmenu. References: In-Reply-To: Resent-From: John Kehayias Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 14 Jan 2022 23:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53270 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: "53270@debbugs.gnu.org" <53270@debbugs.gnu.org> Received: via spool by 53270-submit@debbugs.gnu.org id=B53270.16422013079472 (code B ref 53270); Fri, 14 Jan 2022 23:02:02 +0000 Received: (at 53270) by debbugs.gnu.org; 14 Jan 2022 23:01:47 +0000 Received: from localhost ([127.0.0.1]:38526 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n8VZr-0002Sg-3B for submit@debbugs.gnu.org; Fri, 14 Jan 2022 18:01:47 -0500 Received: from mail-4316.protonmail.ch ([185.70.43.16]:61777) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n8VZn-0002SQ-Bq for 53270@debbugs.gnu.org; Fri, 14 Jan 2022 18:01:45 -0500 Date: Fri, 14 Jan 2022 23:01:34 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail2; t=1642201296; bh=n1QIKtWVYB7Vi23yu1dgZDz4bJMRG9wnqrBhbh0JRzE=; h=Date:To:From:Reply-To:Subject:Message-ID:From:To:Cc; b=cke05HII/DIH2gQoiBaQSrnhETkVojWI8Y0Zg/BcMcSUNR7UO4ok4HjGYiKWkBgZE f5yo0k20taBxfUVmu2VdIzYZc9X866AyMXa0TRfcjWfgcx/6Cgx/3LdUXn1QjBS6Ts xD9mj9qF10wU4ZwDNc3no5TWeWFW5UzovBM+CUhj6t4FYXjz+zPTdzev45eSaD4JEW 7ItLUkhKALIgG70LUCNrUzFUM9n6Rxgem13SzFA8Y6gVjOvjdfbGVdTleyOta8T2/o g62fdOLAP+H14nEMOoMgHCS8OHLXS9rMs15r3iyAb+u2AGrz/1MzzcxBOZ980W7lAC ksg3FCQqt4VYg== Message-ID: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: John Kehayias X-ACL-Warn: , John Kehayias via Guix-patches X-Patchwork-Original-From: John Kehayias via Guix-patches via From: John Kehayias X-getmail-retrieved-from-mailbox: Patches Updated patch to use 'search-input-file' rather than 'which'. Since these are not meant to be host-side build paths, but for the target machine, if I understand correctly why 'which' shouldn't be used here. From ea11bc0d6b6517636de3750356489aec93129e7c Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Fri, 14 Jan 2022 16:11:47 -0500 Subject: [PATCH] gnu: Add yubikey-oath-dmenu. * gnu/packages/security-token.scm (yubikey-oath-dmenu): New variable. --- gnu/packages/security-token.scm | 65 +++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm index 79afdcee47..e01245b4cf 100644 --- a/gnu/packages/security-token.scm +++ b/gnu/packages/security-token.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2021 Sergey Trofimov ;;; Copyright © 2021 Dhruvin Gandhi ;;; Copyright © 2021 Ahmad Jarara +;;; Copyright © 2022 John Kehayias ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +54,7 @@ (define-module (gnu packages security-token) #:use-module (gnu packages dns) #:use-module (gnu packages gettext) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) #:use-module (gnu packages libbsd) @@ -72,7 +74,9 @@ (define-module (gnu packages security-token) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-xyz) #:use-module (gnu packages swig) + #:use-module (gnu packages suckless) #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml)) (define-public ccid @@ -443,6 +447,67 @@ (define-public python-pyscard (define-public python2-pyscard (package-with-python2 python-pyscard)) +(define-public yubikey-oath-dmenu + (package + (name "yubikey-oath-dmenu") + (version "0.13.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emlun/yubikey-oath-dmenu") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1h6dr4l0gzgdg8zn2c39kx9cx1bgvwqxkz3z95qz9r70xfsghgwk")))) + (build-system python-build-system) + (arguments + (list + #:tests? #f ; there are no tests + #:phases + #~(modify-phases %standard-phases + (delete 'configure) ; no configure script + (delete 'build) ; or build + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (for-each (lambda (tool) + (substitute* "yubikey-oath-dmenu.py" + (((string-append "'" tool)) + (string-append "'" + (search-input-file inputs + (string-append "/bin/" tool)))))) + (list "dmenu" "notify-send" "wl-copy" "xclip" "xdotool")))) + (replace 'install + (lambda _ + (invoke "make" "install" + (string-append "DESTDIR=" #$output) + "PREFIX=")))))) + (inputs + (list dmenu + libnotify + python-click + python-yubikey-manager + ;; TODO add wtype, once packaged, for type support for Wayland + wl-clipboard ; optional clipboard support for Wayland + xclip ; optional clipboard support for X11 + xdotool)) ; optional type support for X11 + (home-page + "https://github.com/emlun/yubikey-oath-dmenu/") + (synopsis "Interface for getting OATH codes from a YubiKey using dmenu") + (description + "Yubikey-oath-demenu lets you pick an OATH credential from your YubiKey using +dmenu, and copies the corresponding OTP to the clipboard. Alternatively, it +can \"type\" the OTP using @code{xdotool} on X11. + +Notable features: + +@itemize +@item Pick between all credentials on all connected YubiKeys +@item No mouse interaction required +@end itemize\n") + (license license:gpl3+))) + (define-public libu2f-host (package (name "libu2f-host") -- 2.34.0