guix_mirror_bot pushed a commit to branch master
in repository guix.

commit cb9e02e554d2744912d69568614cec84e836ef10
Author: Ghislain Vaillant <[email protected]>
AuthorDate: Tue Oct 28 09:22:38 2025 +0100

    gnu: Add python-sshfs.
    
    * gnu/packages/python-xyz.scm (python-sshfs): New variable.
    
    Change-Id: I22ea5d608f8b02d584dd2d8318d2142e898e629f
    Modified-by: Sharlatan Hellseher <[email protected]>
    Signed-off-by: Sharlatan Hellseher <[email protected]>
---
 gnu/packages/ssh.scm | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 49 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 28f2955cd7..b7fdb3c7c4 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -20,7 +20,8 @@
 ;;; Copyright © 2023 Simon Streit <[email protected]>
 ;;; Copyright © 2024 Zheng Junjie <[email protected]>
 ;;; Copyright © 2024 Ashish SHUKLA <[email protected]>
-;;; Copyright © 2024 Sharlatan Hellseher <[email protected]>
+;;; Copyright © 2024, 2025 Sharlatan Hellseher <[email protected]>
+;;; Copyright © 2025 Ghislain Vaillant <[email protected]>
 ;;;
 ;;; 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")

Reply via email to