1footclient(1) General Commands Manual footclient(1)
2
3
4
6 footclient - start new terminals in a foot server
7
9 footclient [OPTIONS]
10 footclient [OPTIONS] <command> [COMMAND OPTIONS]
11
12 All trailing (non-option) arguments are treated as a command, and its
13 arguments, to execute (instead of the default shell).
14
16 footclient is used together with foot(1) in --server mode.
17
18 Running it without arguments will open a new terminal window (hosted in
19 the foot server), with your default shell. The exit code will be that
20 of the terminal. I.e footclient does not exit until the terminal has
21 terminated.
22
24 -t,--term=TERM
25 Value to set the environment variable TERM to (see TERMINFO and EN‐
26 VIRONMENT). Default: foot-extra.
27
28 -T,--title=TITLE
29 Initial window title. Default: foot.
30
31 -a,--app-id=ID
32 Value to set the app-id property on the Wayland window to. Default:
33 foot (normal mode), or footclient (server mode).
34
35 -w,--window-size-pixels=WIDTHxHEIGHT
36 Set initial window width and height, in pixels. Default: 700x500.
37
38 -W,--window-size-chars=WIDTHxHEIGHT
39 Set initial window width and height, in characters. Default: not
40 set.
41
42 -m,--maximized
43 Start in maximized mode. If both --maximized and --fullscreen are
44 specified, the last one takes precedence.
45
46 -F,--fullscreen
47 Start in fullscreen mode. If both --maximized and --fullscreen are
48 specified, the last one takes precedence.
49
50 -L,--login-shell
51 Start a login shell, by prepending a '-' to argv[0].
52
53 -D,--working-directory=DIR
54 Initial working directory for the client application. Default: CWD
55 of footclient.
56
57 -s,--server-socket=PATH
58 Connect to PATH instead of $XDG_RUNTIME_DIR/foot-$WAYLAND_DIS‐
59 PLAY.sock.
60
61 -H,--hold
62 Remain open after child process exits.
63
64 -N,--no-wait
65 Detach the client process from the running terminal, exiting imme‐
66 diately.
67
68 -o,--override=[SECTION.]KEY=VALUE
69 Override an option set in the configuration file. If SECTION is not
70 given, defaults to main.
71
72 -E,--client-environment
73 The child process in the new terminal instance will use foot‐
74 client's environment, instead of the server's.
75
76 -d,--log-level={info,warning,error,none}
77 Log level, used both for log output on stderr as well as syslog.
78 Default: warning.
79
80 -l,--log-colorize=[{never,always,auto}]
81 Enables or disables colorization of log output on stderr.
82
83 -v,--version
84 Show the version number and quit
85
86 -e
87 Ignored; for compatibility with xterm -e. See foot(1) for more de‐
88 tails.
89
91 Footclient will exit with code 220 if there is a failure in footclient
92 itself (for example, the server socket does not exist).
93
94 If -N,--no-wait is used, footclient exits with code 0 as soon as the
95 foot server has been instructed to open a new window.
96
97 If not, footclient may also exit with code 230. This indicates a fail‐
98 ure in the foot server.
99
100 In all other cases the exit code is that of the client application
101 (i.e. the shell).
102
104 Client applications use the terminfo identifier specified by the envi‐
105 ronment variable TERM (set by foot) to determine terminal capabilities.
106
107 Foot has two terminfo definitions: foot and foot-direct, with foot be‐
108 ing the default.
109
110 The difference between the two is in the number of colors they de‐
111 scribe; foot describes 256 colors and foot-direct 16.7 million colors
112 (24-bit truecolor).
113
114 Note that using the foot terminfo does not limit the number of usable
115 colors to 256; applications can still use 24-bit RGB colors. In fact,
116 most applications work best with foot (including 24-bit colors)). Using
117 *-direct terminfo entries has been known to crash some ncurses applica‐
118 tions even.
119
120 There are however applications that need a *-direct terminfo entry for
121 24-bit support. Emacs is one such example.
122
123 While using either foot or foot-direct is strongly recommended, it is
124 possible to use e.g. xterm-256color as well. This can be useful when
125 remoting to a system where foot's terminfo entries cannot easily be in‐
126 stalled.
127
128 Note that terminfo entries can be installed in the user's home direc‐
129 tory. I.e. if you do not have root access, or if there is no distro
130 package for foot's terminfo entries, you can install foot's terminfo
131 entries manually, by copying foot and foot-direct to ~/.terminfo/f/.
132
134 Variables used by footclient
135 XDG_RUNTIME_DIR
136 Used to construct the default PATH for the --server-socket option,
137 when no explicit argument is given (see above).
138
139 WAYLAND_DISPLAY
140 Used to construct the default PATH for the --server-socket option,
141 when no explicit argument is given (see above).
142
143 If the socket at default PATH does not exist, footclient will fallback
144 to the less specific path, with the following priority: $XDG_RUN‐
145 TIME_DIR/foot-$WAYLAND_DISPLAY.sock, $XDG_RUNTIME_DIR/foot.sock,
146 /tmp/foot.sock.
147
148 Variables set in the child process
149 TERM
150 terminfo/termcap identifier. This is used by client applications to
151 determine which capabilities a terminal supports. The value is set
152 according to either the --term command-line option or the term con‐
153 fig option in foot.ini(5).
154
155 COLORTERM
156 This variable is set to truecolor, to indicate to client applica‐
157 tions that 24-bit RGB colors are supported.
158
159 In addition to the variables listed above, custom environment variables
160 may be defined in foot.ini(5).
161
163 foot(1)
164
165
166
167 2023-08-08 footclient(1)