diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index c35ace454628132e38cb6c254be0e09b76b37482..f090b785a34a0fb4218ab001ceae6396ac9d1369 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -614,3 +614,28 @@ (define-public python-trezor
 
 (define-public python2-trezor
   (package-with-python2 python-trezor))
+
+(define-public ledger-agent
+  (package
+    (name "ledger-agent")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "ledger_agent" version))
+       (sha256
+        (base32
+         "03zj602m2rln9yvr08dswy56vzkbldp8b074ixwzz525dafblr92"))))
+    (build-system python-build-system)
+    (inputs
+     `(("python-ledgerblue" ,python-ledgerblue)
+       ("python-trezor-agent" ,python-trezor-agent)))
+    (home-page "http://github.com/romanz/trezor-agent")
+    (synopsis "Ledger as hardware SSH/GPG agent")
+    (description "This package allows using Ledger as hardware SSH/GPG agent.
+
+Usage for SSH: trezor-agent foo@example.com --connect
+Usage for GPG: Initialize using trezor-gpg init \"Foo <foo@example.com>\"
+Then set the environment variable GNUPGHOME to
+\"${HOME}/.gnupg/trezor\".")
+    (license license:lgpl3)))