I just started playing with the fish shell, and I really like is so far. However, I can't figure out what the purpose of fishd is.

So, why does fish need to start up a daemon process?

What is the daemon process used for?

  • 3
    As of fish 2.2.0 (the most recent version), fishd is no more. fish no longer has any daemon processes and other techniques are used for synchronizing universal variables. Aug 25, 2015 at 5:03

1 Answer 1


From fishd man page:

The fishd daemon is used to load, save and distribute universal variable information. fish automatically connects to fishd via a socket on startup. If no instance of fishd is running, fish spawns a new fishd instance. fishd will create a socket in /tmp, and wait for incoming connections from universal variable clients, such as fish, When no clients are connected, fishd will automatically shut down.

  • 1
    Like what kind of information does it sync.
    – HSchmale
    Aug 25, 2015 at 15:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .