summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorGhislain Vaillant <ghislain.vaillant@inria.fr>2025-10-28 09:22:38 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2025-10-30 12:42:46 +0000
commitcb9e02e554d2744912d69568614cec84e836ef10 (patch)
tree6bdbc52acea0dcbba619ca6a44efb4e4ebe2acc8 /gnu
parentd2550caf8ecd2eacdf3c0824a0f1388dc4da9c81 (diff)
gnu: Add python-sshfs.
* gnu/packages/python-xyz.scm (python-sshfs): New variable. Change-Id: I22ea5d608f8b02d584dd2d8318d2142e898e629f Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/ssh.scm50
1 files changed, 49 insertions, 1 deletions
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 28f2955cd73..b7fdb3c7c41 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -20,7 +20,8 @@
;;; Copyright © 2023 Simon Streit <simon@netpanic.org>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
-;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2024, 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -905,6 +906,53 @@ SSH server for testing purposes. It is built on top of paramiko, so it does not
need OpenSSH binaries to be installed.")
(license license:expat)))
+(define-public python-sshfs
+ (package
+ (name "python-sshfs")
+ (version "2025.10.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fsspec/sshfs")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1cdq4wpx68k9bcrns2p2jr3f3rg8hck8588rnw6yn5rsfdlvyvr0"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'set-version
+ (lambda _
+ (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
+ (native-inputs
+ (list python-importlib-metadata
+ python-mock-ssh-server
+ python-pytest
+ python-pytest-asyncio
+ python-setuptools
+ python-setuptools-scm))
+ (propagated-inputs
+ (list python-asyncssh
+ python-bcrypt
+ python-fsspec))
+ (home-page "https://github.com/fsspec/sshfs")
+ (synopsis "SSH/SFTP implementation for fsspec")
+ (description
+ "This package provides an implementation of fsspec for the SFTP protocol
+using asyncssh, with the following features:
+
+@itemize
+@item A complete implementation of the fsspec protocol through SFTP
+@item Supports features outside of the SFTP
+@item Quite fast
+@item Builtin Channel Management
+@item Async
+@end itemize")
+ (license license:asl2.0)))
+
(define-public clustershell
(package
(name "clustershell")