Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
footclient(1)		     General Commands Manual		   footclient(1)

NAME
     footclient - start new terminals in a foot server

SYNOPSIS
     footclient [OPTIONS]
     footclient [OPTIONS] <command> [COMMAND OPTIONS]

     All trailing (non-option) arguments are treated as a command, and its argu-
     ments, to execute (instead of the default shell).

DESCRIPTION
     footclient is used together with foot(1) in --server mode.

     Running it without arguments will open a new terminal window (hosted in the
     foot  server),  with  your default shell. The exit code will be that of the
     terminal. I.e footclient does not exit until the terminal has terminated.

OPTIONS
     -t,--term=TERM
	 Value to set the environment variable TERM to (see TERMINFO  and  ENVI-
	 RONMENT). Default: foot.

     -T,--title=TITLE
	 Initial window title. Default: foot.

     -a,--app-id=ID
	 Value	to  set  the  app-id property on the Wayland window to. Default:
	 foot (normal mode), or footclient (server mode).

     -w,--window-size-pixels=WIDTHxHEIGHT
	 Set initial window width and height, in pixels. Default: 700x500.

     -W,--window-size-chars=WIDTHxHEIGHT
	 Set initial window width and height, in characters. Default: not set.

     -m,--maximized
	 Start in maximized mode. If both --maximized and --fullscreen are spec-
	 ified, the last one takes precedence.

     -F,--fullscreen
	 Start in fullscreen mode. If  both  --maximized  and  --fullscreen  are
	 specified, the last one takes precedence.

     -L,--login-shell
	 Start a login shell, by prepending a '-' to argv[0].

     -D,--working-directory=DIR
	 Initial  working  directory for the client application. Default: CWD of
	 footclient.

     -s,--server-socket=PATH
	 Connect to PATH instead of $XDG_RUNTIME_DIR/foot-$WAYLAND_DISPLAY.sock.

     -H,--hold
	 Remain open after child process exits.

     -N,--no-wait
	 Detach the client process from the running  terminal,	exiting  immedi-
	 ately.

     -o,--override=[SECTION.]KEY=VALUE
	 Override  an  option  set  in the configuration file. If SECTION is not
	 given, defaults to main.

     -E,--client-environment
	 The child process in the new terminal instance  will  use  footclient's
	 environment, instead of the server's.

	 Environment  variables listed in the Variables set in the child process
	 section will be overwritten by the foot server. For  example,	the  new
	 terminal  will  use TERM from the configuration, not footclient's envi-
	 ronment.

     -d,--log-level={info,warning,error,none}
	 Log level, used both for log output on stderr as well	as  syslog.  De-
	 fault: warning.

     -l,--log-colorize=[{never,always,auto}]
	 Enables or disables colorization of log output on stderr.

     -v,--version
	 Show the version number and quit

     -e
	 Ignored; for compatibility with xterm -e. See foot(1) for more details.

EXIT STATUS
     Footclient  will exit with code 220 if there is a failure in footclient it-
     self (for example, the server socket does not exist).

     If -N,--no-wait is used, footclient exits with code 0 as soon as  the  foot
     server has been instructed to open a new window.

     If not, footclient may also exit with code 230. This indicates a failure in
     the foot server.

     In  all  other  cases the exit code is that of the client application (i.e.
     the shell).

TERMINFO
     Client applications use the terminfo identifier specified by  the	environ-
     ment variable TERM (set by foot) to determine terminal capabilities.

     Foot  has	two  terminfo definitions: foot and foot-direct, with foot being
     the default.

     The difference between the two is in the number of  colors  they  describe;
     foot describes 256 colors and foot-direct 16.7 million colors (24-bit true-
     color).

     Note  that using the foot terminfo does not limit the number of usable col-
     ors to 256; applications can still use 24-bit RGB colors. In fact, most ap-
     plications work best with foot (including 24-bit colors)).  Using	*-direct
     terminfo entries has been known to crash some ncurses applications even.

     There  are  however  applications	that  need a *-direct terminfo entry for
     24-bit support. Emacs is one such example.

     While using either foot or foot-direct is strongly recommended, it is  pos-
     sible  to use e.g. xterm-256color as well. This can be useful when remoting
     to a system where foot's terminfo entries cannot easily be installed.

     Note that terminfo entries can be installed in the user's	home  directory.
     I.e.  if  you do not have root access, or if there is no distro package for
     foot's terminfo entries, you can install foot's terminfo entries  manually,
     by copying foot and foot-direct to ~/.terminfo/f/.

ENVIRONMENT
   Variables used by footclient
     XDG_RUNTIME_DIR
	 Used to construct the default PATH for the --server-socket option, when
	 no explicit argument is given (see above).

     WAYLAND_DISPLAY
	 Used to construct the default PATH for the --server-socket option, when
	 no explicit argument is given (see above).

     If  the  socket at default PATH does not exist, footclient will fallback to
     the  less	specific  path,   with	 the   following   priority:   $XDG_RUN-
     TIME_DIR/foot-$WAYLAND_DISPLAY.sock,	     $XDG_RUNTIME_DIR/foot.sock,
     /tmp/foot.sock.

   Variables set in the child process
     TERM
	 terminfo/termcap identifier. This is used by client applications to de-
	 termine which capabilities a terminal supports. The value  is	set  ac-
	 cording to either the --term command-line option or the term config op-
	 tion in foot.ini(5).

     COLORTERM
	 This  variable  is set to truecolor, to indicate to client applications
	 that 24-bit RGB colors are supported.

     PWD
	 Current working directory (at the time of launching foot)

     SHELL
	 Set to the launched shell, if the shell  is  valid  (it  is  listed  in
	 /etc/shells).

     In addition to the variables listed above, custom environment variables may
     be defined in foot.ini(5).

   Variables *unset* in the child process
     TERM_PROGRAM TERM_PROGRAM_VERSION
	 These	environment  variables	are set by certain other terminal emula-
	 tors. We unset them, to prevent applications from misdetecting foot.

     In addition to the variables listed above, custom environment variables  to
     unset may be defined in foot.ini(5).

Signals
     The following signals have special meaning in footclient:

     *	 SIGUSR1: switch to color theme 1 (i.e. use the [colors] section).
     *	 SIGUSR2: switch to color theme 2 (i.e. use the [colors2] section).

     When sending SIGUSR1/SIGUSR2 to a footclient instance, the theme is changed
     in that instance only. This is different from when you send SIGUSR1/SIGUSR2
     to the server process, where all instances change the theme.

     Note: for obvious reasons, this is not supported when footclient is started
     with --no-wait.

SEE ALSO
     foot(1)

				   2026-06-11			   footclient(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=footclient&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help