From 07763fd605b7a7ffa41ad6f1b69479631fc84cb4 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Wed, 15 Jul 2026 00:09:40 -0500 Subject: feat(tramp): add phone FTP quick-access entry with passive-mode ange-ftp The phone's FTP server can't open active-mode data connections back to the client, so LIST hangs under ange-ftp's default. Passive mode fixes it and is the safer default for any NAT'd server. Requires a CLI ftp client (GNU inetutils on Arch). --- modules/tramp-config.el | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules/tramp-config.el') diff --git a/modules/tramp-config.el b/modules/tramp-config.el index f2bc8457..95fa83db 100644 --- a/modules/tramp-config.el +++ b/modules/tramp-config.el @@ -26,6 +26,7 @@ ;; Silence byte-compiler "assignment to free variable" warnings for vars ;; defined by lazily-loaded packages (tramp, dirtrack, magit). These are ;; only set inside the use-package :config block, after the package loads. +(defvar ange-ftp-try-passive-mode) (defvar tramp-copy-size-limit) (defvar tramp-use-ssh-controlmaster-options) (defvar tramp-cleanup-idle-time) @@ -147,5 +148,11 @@ ;; Cleanup TRAMP buffers when idle (every 15 min) (setq tramp-cleanup-idle-time 900)) +;; FTP (ange-ftp) settings — TRAMP's /ftp: method delegates to ange-ftp. +;; Passive mode is required for servers that can't open a data connection +;; back to this machine (NAT, phone FTP servers); active mode hangs on LIST. +(with-eval-after-load 'ange-ftp + (setq ange-ftp-try-passive-mode t)) + (provide 'tramp-config) ;;; tramp-config.el ends here -- cgit v1.2.3