Mutt depends on curses according to this here, my discussion with Michael:

@hhh: ssh hhh@server.com mutt <--- what is wrong here? trying to run mutt there...
@MichaelMrozek: mutt uses curses, which depends on a lot of terminal manipulation; I imagine it doesn't like being run within ssh like that

The manual has the entry:

ssh [user@]hostname --

How can I run mutt running locally from outside the server without needing to ssh to it and run mutt directly?

  • 3
    Tried ssh -t?
    – jw013
    Apr 30, 2012 at 17:22
  • @jw013 That's rather handy. That's probably the right answer Apr 30, 2012 at 17:23

1 Answer 1


From man 1 ssh

-t  Force pseudo-tty allocation. This can be used to execute arbitrary
    screen-based programs on a remote machine, which can be very useful,
    e.g. when implementing menu services.  Multiple -t options force tty 
    allocation, even if ssh has no local tty.

Now mutt has a tty to display it's menus on. (You would use -tt if connecting to mutt remotely via a script from cron, for example.)

ssh -t hhh@server.com mutt

  • @jw013 beat me to it. Again.
    – George M
    Apr 30, 2012 at 17:33
  • Nice catch, thanks, this can probably become quite useful.
    – user2362
    Apr 30, 2012 at 17:37
  • Suppose now that I would like to save an attachement to my local machine from which I have done the SSH -connection, how would you do that? I noticed that it did it to the hhh@server.com -location. Some good ideas?
    – user2362
    Apr 30, 2012 at 17:40
  • 1
    Hmmm, perhaps install the fuse-sshfs package and mount a directory from your local machine onto the system remotely running mutt.
    – George M
    Apr 30, 2012 at 17:43
  • @hhh You realize running ssh server.com command runs the command on the remote machine, right? Your question and the comment here make it sound like you think it's somehow running locally Apr 30, 2012 at 18:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy