4.11 Using Non-Standard Methods

The tramp-methods variable currently has an exhaustive list of predefined methods. Any part of this list can be modified with more suitable settings. Refer to the Lisp documentation of that variable, accessible with C-h v tramp-methods RET.

In the ELPA archives, there are several examples of such extensions. They can be installed with Emacs’s Package Manager. This includes

lxc-tramp

Integration for LXC containers. A container is accessed via /lxc:container:/path/to/file, ‘container’ has the same meaning as with the docker method. A ‘user’ specification is ignored.

lxd-tramp

Integration for LXD containers. A container is accessed via /lxd:user@container:/path/to/file, ‘user’ and ‘container’ have the same meaning as with the docker method.

magit-tramp

Browsing Git repositories with magit. A versioned file is accessed via /git:rev@root-dir:/path/to/file. ‘rev’ is a Git revision, and ‘root-dir’ is a virtual host name for the root directory, specified in magit-tramp-hosts-alist.

tramp-hdfs

Access of a hadoop/hdfs file system. A file is accessed via /hdfs:user@node:/path/to/file, where ‘user’ is the user that you want to use, and ‘node’ is the name of the hadoop server.

tramp-nspawn

Access to environments provided by systemd-nspawn. A file is accessed via /nspawn:user@container:/path/to/file, where ‘user’ is the (optional) user that you want to use, and ‘container’ is the container to connect to. systemd-nspawn and its container utilities often require super user access to run, use multi-hop file names with doas or sudo to raise your privileges.

vagrant-tramp

Convenience method to access vagrant boxes. It is often used in multi-hop file names like /vagrant:box|sudo:box:/path/to/file, where ‘box’ is the name of the vagrant box.