;;; syd-tramp.el -*- lexical-binding: t; -*-

(with-eval-after-load 'tramp
  (setq tramp-persistency-file-name
        (file-name-concat syd-cache-dir "tramp"))
  (setq tramp-auto-save-directory
        (file-name-concat syd-cache-dir "tramp-autosave/"))
  ;; TRAMP's default settings try to disable Readline, *rc files, profiles, etc.
  ;; This is all very important and prevents unexpected behaviour and various
  ;; hangs/crashes.  However, the default settings (`tramp-sh-extra-args') can
  ;; only kick in when the shell is accurately identified — on my NixOS system,
  ;; /bin/sh links to Bash.  Thus, the appropriate flags are never applied,
  ;; unless we make the Bash of the matter explicit.
  (setq tramp-encoding-shell (executable-find "bash"))
  (add-to-list 'tramp-remote-path 'tramp-own-remote-path))

(provide 'syd-tramp)
