Why does the fish shell need to start a daemon process

fish

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?

Best Answer

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.

Related Question