diff options
author | Sébastien Helleu <flashcode@flashtux.org> | 2021-05-08 20:56:49 +0200 |
---|---|---|
committer | Sébastien Helleu <flashcode@flashtux.org> | 2021-05-11 21:07:30 +0200 |
commit | 70cdf21681d75090c3df9858c9e7ce5a85433856 (patch) | |
tree | c9ede7d35ede53fc73fe9b3f6ad53d8505fb3ac5 /doc/en | |
parent | 87d4ea9286c641051fc36a92e6baef3c244f6e59 (diff) | |
download | weechat-70cdf21681d75090c3df9858c9e7ce5a85433856.zip |
doc: add XDG directories support in docs (issue #1285)
Diffstat (limited to 'doc/en')
-rw-r--r-- | doc/en/includes/cmdline_options.en.adoc | 6 | ||||
-rw-r--r-- | doc/en/includes/man.en.adoc | 50 | ||||
-rw-r--r-- | doc/en/weechat_faq.en.adoc | 9 | ||||
-rw-r--r-- | doc/en/weechat_plugin_api.en.adoc | 77 | ||||
-rw-r--r-- | doc/en/weechat_relay_protocol.en.adoc | 6 | ||||
-rw-r--r-- | doc/en/weechat_scripting.en.adoc | 6 | ||||
-rw-r--r-- | doc/en/weechat_user.en.adoc | 103 |
7 files changed, 154 insertions, 103 deletions
diff --git a/doc/en/includes/cmdline_options.en.adoc b/doc/en/includes/cmdline_options.en.adoc index 26f815ad1..da7abb209 100644 --- a/doc/en/includes/cmdline_options.en.adoc +++ b/doc/en/includes/cmdline_options.en.adoc @@ -15,9 +15,9 @@ "--daemon"). *-d*, *--dir* _<path>_:: - Set path as home for WeeChat (used for configuration files, logs, user - plugins and scripts), default value is "~/.weechat" (note: directory is - created if not found by WeeChat). + Force a single directory for all WeeChat files (directory is created if not found). + Four directories can be given, separated by colons (in this order: config, + data, cache, runtime). If this option is not given, the environment variable WEECHAT_HOME is used (if not empty). diff --git a/doc/en/includes/man.en.adoc b/doc/en/includes/man.en.adoc index 1ff50e017..812bfd5c2 100644 --- a/doc/en/includes/man.en.adoc +++ b/doc/en/includes/man.en.adoc @@ -17,79 +17,79 @@ example: // end::plugin_options[] // tag::files[] -$HOME/.weechat/weechat.conf:: +$HOME/.config/weechat/weechat.conf:: main WeeChat configuration file -$HOME/.weechat/plugins.conf:: +$HOME/.config/weechat/plugins.conf:: plugins configuration file -$HOME/.weechat/sec.conf:: +$HOME/.config/weechat/sec.conf:: configuration file with secured data -$HOME/.weechat/alias.conf:: +$HOME/.config/weechat/alias.conf:: configuration file for _alias_ plugin -$HOME/.weechat/buflist.conf:: +$HOME/.config/weechat/buflist.conf:: configuration file for _buflist_ plugin -$HOME/.weechat/charset.conf:: +$HOME/.config/weechat/charset.conf:: configuration file for _charset_ plugin -$HOME/.weechat/exec.conf:: +$HOME/.config/weechat/exec.conf:: configuration file for _exec_ plugin -$HOME/.weechat/fifo.conf:: +$HOME/.config/weechat/fifo.conf:: configuration file for _fifo_ plugin -$HOME/.weechat/fset.conf:: +$HOME/.config/weechat/fset.conf:: configuration file for _fset_ plugin -$HOME/.weechat/guile.conf:: +$HOME/.config/weechat/guile.conf:: configuration file for _guile_ plugin -$HOME/.weechat/irc.conf:: +$HOME/.config/weechat/irc.conf:: configuration file for _irc_ plugin -$HOME/.weechat/javascript.conf:: +$HOME/.config/weechat/javascript.conf:: configuration file for _javascript_ plugin -$HOME/.weechat/logger.conf:: +$HOME/.config/weechat/logger.conf:: configuration file for _logger_ plugin -$HOME/.weechat/lua.conf:: +$HOME/.config/weechat/lua.conf:: configuration file for _lua_ plugin -$HOME/.weechat/perl.conf:: +$HOME/.config/weechat/perl.conf:: configuration file for _perl_ plugin -$HOME/.weechat/php.conf:: +$HOME/.config/weechat/php.conf:: configuration file for _php_ plugin -$HOME/.weechat/python.conf:: +$HOME/.config/weechat/python.conf:: configuration file for _python_ plugin -$HOME/.weechat/relay.conf:: +$HOME/.config/weechat/relay.conf:: configuration file for _relay_ plugin -$HOME/.weechat/ruby.conf:: +$HOME/.config/weechat/ruby.conf:: configuration file for _ruby_ plugin -$HOME/.weechat/script.conf:: +$HOME/.config/weechat/script.conf:: configuration file for _script_ plugin -$HOME/.weechat/spell.conf:: +$HOME/.config/weechat/spell.conf:: configuration file for _spell_ plugin -$HOME/.weechat/tcl.conf:: +$HOME/.config/weechat/tcl.conf:: configuration file for _tcl_ plugin -$HOME/.weechat/trigger.conf:: +$HOME/.config/weechat/trigger.conf:: configuration file for _trigger_ plugin -$HOME/.weechat/xfer.conf:: +$HOME/.config/weechat/xfer.conf:: configuration file for _xfer_ plugin -$HOME/.weechat/weechat.log:: +$HOME/.local/share/weechat/weechat.log:: WeeChat log file // end::files[] diff --git a/doc/en/weechat_faq.en.adoc b/doc/en/weechat_faq.en.adoc index 4fc180d6e..b9a376118 100644 --- a/doc/en/weechat_faq.en.adoc +++ b/doc/en/weechat_faq.en.adoc @@ -1053,9 +1053,12 @@ First check questions about SSL connection in this FAQ If still not working, try to manually delete the scripts file (in your shell): ---- -$ rm ~/.weechat/script/plugins.xml.gz +$ rm ~/.cache/weechat/script/plugins.xml.gz ---- +[NOTE] +With WeeChat ≤ 3.1, the path should be: _~/.weechat/script/plugins.xml.gz_. + And update scripts again in WeeChat: ---- @@ -1075,7 +1078,7 @@ have to update manually the file yourself to get updates): * in your shell, with curl installed: ---- -$ cd ~/.weechat/script +$ cd ~/.cache/weechat/script $ curl -O https://weechat.org/files/plugins.xml.gz ---- @@ -1191,7 +1194,7 @@ For example: [[sharing_config_files]] === I want to share my WeeChat configuration, what files should I share and what should I keep private? -You can share files _~/.weechat/*.conf_ except the file _sec.conf_ which +You can share configuration files _*.conf_ except the file _sec.conf_ which contains your passwords ciphered with your passphrase. Some other files may contain sensitive info like passwords (if they are not diff --git a/doc/en/weechat_plugin_api.en.adoc b/doc/en/weechat_plugin_api.en.adoc index cc6ee1844..087ab73d4 100644 --- a/doc/en/weechat_plugin_api.en.adoc +++ b/doc/en/weechat_plugin_api.en.adoc @@ -179,7 +179,7 @@ $ gcc -shared -fPIC -o toto.so toto.o Copy file _toto.so_ into system plugins directory (for example _/usr/local/lib/weechat/plugins_) or into user's plugins directory (for example -_/home/xxx/.weechat/plugins_). +_/home/user/.local/share/weechat/plugins_). Under WeeChat: @@ -1026,7 +1026,7 @@ C example: [source,C] ---- char *str = weechat_string_expand_home ("~/file.txt"); -/* result: "/home/xxx/file.txt" */ +/* result: "/home/user/file.txt" */ /* ... */ free (str); ---- @@ -1036,11 +1036,11 @@ This function is not available in scripting API. ==== string_eval_path_home -_WeeChat ≥ 1.3._ +_WeeChat ≥ 1.3, updated in 3.2._ Evaluate a path in 3 steps: -. replace leading `%h` by WeeChat home directory, +. replace leading `%h` by a WeeChat directory (data by default), . replace leading `+~+` by user home directory (call to <<_string_expand_home,string_expand_home>>), . evaluate variables (see <<_string_eval_expression,string_eval_expression>>). @@ -1063,7 +1063,13 @@ Arguments: * _extra_vars_: hashtable for call to function <<_string_eval_expression,string_eval_expression>> * _options_: hashtable for call to function - <<_string_eval_expression,string_eval_expression>> + <<_string_eval_expression,string_eval_expression>>, with one extra key + supported: +** _directory_: WeeChat directory to use when replacing `%h`, one of: +*** _config_ +*** _data_ (default) +*** _cache_ +*** _runtime_ Return value: @@ -1073,8 +1079,8 @@ C example: [source,C] ---- -char *str = weechat_string_eval_path_home ("%h/test", NULL, NULL, NULL); -/* result: "/home/xxx/.weechat/test" */ +char *str = weechat_string_eval_path_home ("${weechat_config_dir}/test.conf", NULL, NULL, NULL); +/* result: "/home/user/.config/weechat/test.conf" */ /* ... */ free (str); ---- @@ -1087,8 +1093,8 @@ Script (Python): path = weechat.string_eval_path_home(path, pointers, extra_vars, options) # example -path = weechat.string_eval_path_home("%h/test", {}, {}, {}) -# path == "/home/xxx/.weechat/test" +path = weechat.string_eval_path_home("${weechat_config_dir}/test.conf", {}, {}, {}) +# path == "/home/user/.config/weechat/test.conf" ---- ==== string_remove_quotes @@ -2535,6 +2541,18 @@ expanded to last): `+${name}+` | `+value+` +| `+${weechat_xxx_dir}+` | + A WeeChat directory: `+${weechat_config_dir}+`, `+${weechat_data_dir}+`, + `+${weechat_cache_dir}+` or `+${weechat_runtime_dir}+`. | + `+${weechat_config_dir}+` + + `+${weechat_data_dir}+` + + `+${weechat_cache_dir}+` + + `+${weechat_runtime_dir}+` | + `+/home/user/.config/weechat+` + + `+/home/user/.local/share/weechat+` + + `+/home/user/.cache/weechat+` + + `+/run/user/1000/weechat+` + | `+${eval:xxx}+` + _(WeeChat ≥ 1.3)_ | String to evaluate. | @@ -2656,9 +2674,9 @@ expanded to last): Result of a modifier, see function <<_hook_modifier_exec,hook_modifier_exec>>. | `+${modifier:eval_path_home,,~}+` + - `+${modifier:eval_path_home,,%h/python}+` | - `+/home/xxx+` + - `+/home/xxx/.weechat/python+` + `+${modifier:eval_path_home,directory=config,%h/weechat.conf}+` | + `+/home/user+` + + `+/home/user/.config/weechat/weechat.conf+` | `+${info:name}+` + `+${info:name,arguments}+` + @@ -3609,6 +3627,8 @@ Some functions related to directories. ==== mkdir_home +_Updated in 3.2._ + Create a directory in WeeChat home. Prototype: @@ -3620,7 +3640,12 @@ int weechat_mkdir_home (char *directory, int mode); Arguments: -* _directory_: name of directory to create +* _directory_: name of directory to create; it can start with one of these + strings to force a specific WeeChat directory (WeeChat ≥ 3.2): +** `${weechat_config_dir}` +** `${weechat_data_dir}` (default) +** `${weechat_cache_dir}` +** `${weechat_runtime_dir}` * _mode_: mode for directory Return value: @@ -3631,7 +3656,7 @@ C example: [source,C] ---- -if (!weechat_mkdir_home ("temp", 0755)) +if (!weechat_mkdir_home ("${weechat_cache_dir}/temp", 0755)) { /* error */ } @@ -3645,7 +3670,7 @@ Script (Python): weechat.mkdir_home(directory, mode) # example -weechat.mkdir_home("temp", 0755) +weechat.mkdir_home("${weechat_cache_dir}/temp", 0755) ---- ==== mkdir @@ -10954,8 +10979,8 @@ Five signals can be sent to install a script, according to language: The callback will do following actions when receiving signal: . Unload and remove installed script. -. Move new script to directory _~/.weechat/xxx/_ (where _xxx_ is language). -. Create link to new script in directory _~/.weechat/xxx/autoload/_ +. Move new script to directory _~/.local/share/weechat/xxx/_ (where _xxx_ is language). +. Create link to new script in directory _~/.local/share/weechat/xxx/autoload/_ (only if the script was already auto-loaded, or if the option _script.scripts.autoload_ is enabled for a new script). . Load new script (if the script was loaded). @@ -10968,16 +10993,14 @@ C example: [source,C] ---- -weechat_hook_signal_send ("python_script_install", WEECHAT_HOOK_SIGNAL_STRING, - "/home/xxx/.weechat/test.py"); +weechat_hook_signal_send ("python_script_install", WEECHAT_HOOK_SIGNAL_STRING, "/path/to/test.py"); ---- Script (Python): [source,python] ---- -weechat.hook_signal_send("python_script_install", WEECHAT_HOOK_SIGNAL_STRING, - "/home/xxx/.weechat/test.py") +weechat.hook_signal_send("python_script_install", WEECHAT_HOOK_SIGNAL_STRING, "/path/to/test.py") ---- [[signals_xxx_script_remove]] @@ -11761,7 +11784,7 @@ List of modifiers defined by WeeChat and plugins that can be used: | [[hook_modifier_eval_path_home]] eval_path_home + _(WeeChat ≥ 2.7)_ | - - | + Optional: `directory=xxx` where `xxx` can be: `config`, `data`, `cache`, `runtime` | Any string. | Evaluated path, result of the function <<_string_eval_path_home,string_eval_path_home>>. @@ -15412,10 +15435,10 @@ if (version) if (date) free (date); -char *weechat_dir = weechat_info_get ("weechat_dir", NULL); -weechat_printf (NULL, "WeeChat home is: %s", weechat_dir); -if (weechat_dir) - free (weechat_dir); +char *weechat_config_dir = weechat_info_get ("weechat_config_dir", NULL); +weechat_printf (NULL, "WeeChat config directory is: %s", weechat_config_dir); +if (weechat_config_dir) + free (weechat_config_dir); ---- Script (Python): @@ -15428,7 +15451,7 @@ value = weechat.info_get(info_name, arguments) # example weechat.prnt("", "Current WeeChat version is: %s (compiled on %s)" % (weechat.info_get("version", ""), weechat.info_get("date", "")) -weechat.prnt("", "WeeChat home is: %s" % weechat.info_get("weechat_dir", "")) +weechat.prnt("", "WeeChat config directory is: %s" % weechat.info_get("weechat_config_dir", "")) ---- ==== info_get_hashtable diff --git a/doc/en/weechat_relay_protocol.en.adoc b/doc/en/weechat_relay_protocol.en.adoc index 15c512b58..e5256aa46 100644 --- a/doc/en/weechat_relay_protocol.en.adoc +++ b/doc/en/weechat_relay_protocol.en.adoc @@ -588,15 +588,15 @@ inf: ('version_number', '34144256') * Request WeeChat directory: ---- -(info_weechat_dir) info weechat_dir +(info_weechat_config_dir) info weechat_config_dir ---- Response: [source,python] ---- -id: 'info_weechat_dir' -inf: ('weechat_dir', '/home/xxx/.weechat') +id: 'info_weechat_config_dir' +inf: ('weechat_config_dir', '/home/user/.config/weechat') ---- [[command_infolist]] diff --git a/doc/en/weechat_scripting.en.adoc b/doc/en/weechat_scripting.en.adoc index e045fd247..0923430a7 100644 --- a/doc/en/weechat_scripting.en.adoc +++ b/doc/en/weechat_scripting.en.adoc @@ -337,7 +337,7 @@ WeeChat is starting. For example with Python: ---- -$ cd ~/.weechat/python/autoload +$ cd ~/.local/share/weechat/python/autoload $ ln -s ../script.py ---- @@ -1368,8 +1368,8 @@ weechat.prnt("", "Version %s" % weechat.info_get("version", "")) [source,python] ---- -# WeeChat home directory, for example: "/home/xxxx/.weechat" -weechat.prnt("", "WeeChat home dir: %s" % weechat.info_get("weechat_dir", "")) +# WeeChat config directory, for example: "/home/user/.config/weechat" +weechat.prnt("", "WeeChat config dir: %s" % weechat.info_get("weechat_config_dir", "")) # keyboard inactivity weechat.prnt("", "Inactivity since %s seconds" % weechat.info_get("inactivity", "")) diff --git a/doc/en/weechat_user.en.adoc b/doc/en/weechat_user.en.adoc index 6af0c0fe3..93ac63599 100644 --- a/doc/en/weechat_user.en.adoc +++ b/doc/en/weechat_user.en.adoc @@ -465,10 +465,10 @@ _/var/lib/systemd/coredump_ and you must use the command `coredumpctl` to read i For more information, see this wiki page: https://wiki.archlinux.org/index.php/Core_dump For example if _weechat_ is installed in _/usr/bin/_ and _core_ file is -in _/home/xxx/_, then run gdb with this command: +in _/home/user/_, then run gdb with this command: ---- -gdb /usr/bin/weechat /home/xxx/core +gdb /usr/bin/weechat /home/user/core ---- Then under gdb, use command `bt full` to display backtrace. @@ -553,8 +553,8 @@ to upgrade the kernel or to move your WeeChat to another machine: ---- This saves the current state in `*.upgrade` files. You can then either reboot -or move the whole directory `~/.weechat` to another machine, and restart -WeeChat later with this command: +or move the whole WeeChat directories (config, data, cache) to another machine, +and restart WeeChat later with this command: ---- $ weechat --upgrade @@ -586,7 +586,7 @@ WeeChat has an automatic upgrade of configuration files (`*.conf`): Example of warning when an option has been removed: ---- -=!= Warning: /home/xxx/.weechat/sec.conf, line 15: unknown option for section "crypt": passphrase_file = "" +=!= Warning: /home/user/.config/weechat/sec.conf, line 15: unknown option for section "crypt": passphrase_file = "" ---- That means the option `sec.crypt.passphrase_file` has been removed, and you @@ -606,7 +606,7 @@ $ weechat ---- When you run WeeChat for the first time, the default configuration files are -created in _~/.weechat_ with default options and values +created in _~/.config/weechat_ with default options and values (see <<files_and_directories,Files and directories>>). ==== Command line options @@ -636,9 +636,27 @@ Some environment variables are used by WeeChat if they are defined: [[files_and_directories]] === Files and directories -WeeChat writes configuration files and other data in directory `~/.weechat` -by default. + -These files are created with default values the first time you run WeeChat. +[[xdg_directories]] +==== XDG directories + +WeeChat uses XDG directories by default +(according to the https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html[XDG Base Directory Specification]). + +A single home directory for all files can be forced by CMake option `WEECHAT_HOME`, +the environment variable `WEECHAT_HOME` or the command-line option `-d` / `--dir`. + +When a single WeeChat home directory is not forced, XDG directories are used +and set like this: + +[width="100%",cols="1,2m,5",options="header"] +|=== +| Directory | Default value | Fallback value +| config | $XDG_CONFIG_HOME/weechat | `$HOME/.config/weechat` if `$XDG_CONFIG_HOME` is not defined or empty. +| data | $XDG_DATA_HOME/weechat | `$HOME/.local/share/weechat` if `$XDG_DATA_HOME` is not defined or empty. +| cache | $XDG_CACHE_HOME/weechat | `$HOME/.cache/weechat` if `$XDG_CACHE_HOME` is not defined or empty. +| runtime | $XDG_RUNTIME_DIR/weechat | Same as _cache_ directory if `$XDG_RUNTIME_DIR` is not defined or empty. +|=== + +The configuration files are created with default values the first time you run WeeChat. [[weechat_directories]] ==== WeeChat directories @@ -647,29 +665,33 @@ The WeeChat directories are: [width="100%",cols="1m,3",options="header"] |=== -| Path/file | Description -| ~/.weechat/ | WeeChat home directory (can be changed, see <<running_weechat,Running WeeChat>>). -| logs/ | Log files (one file per buffer). -| python/ | Python scripts. -| autoload/ | Python scripts auto-loaded on startup ^(1)^. -| perl/ | Perl scripts. -| autoload/ | Perl scripts auto-loaded on startup ^(1)^. -| ruby/ | Ruby scripts. -| autoload/ | Ruby scripts auto-loaded on startup ^(1)^. -| lua/ | Lua scripts. -| autoload/ | Lua scripts auto-loaded on startup ^(1)^. -| tcl/ | Tcl scripts. -| autoload/ | Tcl scripts auto-loaded on startup ^(1)^. -| guile/ | Guile scripts. -| autoload/ | Guile scripts auto-loaded on startup ^(1)^. -| javascript/ | JavaScript scripts. -| autoload/ | JavaScript scripts auto-loaded on startup ^(1)^. -| php/ | PHP scripts. -| autoload/ | PHP scripts auto-loaded on startup ^(1)^. +| Path ^(1)^ | Description +| ~/.config/weechat/ | WeeChat configuration files: `*.conf`, certificates, etc. +| ~/.local/share/weechat/ | WeeChat data files: logs, scripts, scripts data, xfer files, etc. +| logs/ | Log files (one file per buffer). +| python/ | Python scripts. +| autoload/ | Python scripts auto-loaded on startup ^(2)^. +| perl/ | Perl scripts. +| autoload/ | Perl scripts auto-loaded on startup ^(2)^. +| ruby/ | Ruby scripts. +| autoload/ | Ruby scripts auto-loaded on startup ^(2)^. +| lua/ | Lua scripts. +| autoload/ | Lua scripts auto-loaded on startup ^(2)^. +| tcl/ | Tcl scripts. +| autoload/ | Tcl scripts auto-loaded on startup ^(2)^. +| guile/ | Guile scripts. +| autoload/ | Guile scripts auto-loaded on startup ^(2)^. +| javascript/ | JavaScript scripts. +| autoload/ | JavaScript scripts auto-loaded on startup ^(2)^. +| php/ | PHP scripts. +| autoload/ | PHP scripts auto-loaded on startup ^(2)^. +| ~/.cache/weechat/ | WeeChat cache files: scripts cache. +| /run/user/1000/weechat/ | WeeChat runtime files: FIFO pipe, Relay UNIX sockets. |=== [NOTE] -^(1)^ This directory often contains only symbolic links to scripts in the parent directory. +^(1)^ XDG directories may be different according to your environment variables `XDG_*`. + +^(2)^ This directory often contains only symbolic links to scripts in the parent directory. [[weechat_files]] ==== WeeChat files @@ -2713,7 +2735,8 @@ include::includes/autogen_user_options.en.adoc[tag=exec_options] You can remote control WeeChat, by sending commands or text to a FIFO pipe (if option "fifo.file.enabled" is enabled, it is by default). -The FIFO pipe is located in _~/.weechat/_ and is called _weechat_fifo_ by default. +The FIFO pipe is located in WeeChat runtime directory and is called +_weechat_fifo_ by default. Syntax for the FIFO pipe commands/text is one of following: @@ -2727,26 +2750,26 @@ Some examples: * Change nick on IRC server freenode to "newnick": ---- -$ echo 'irc.server.freenode */nick newnick' >~/.weechat/weechat_fifo +$ echo 'irc.server.freenode */nick newnick' >/run/user/1000/weechat/weechat_fifo ---- * Send a message on IRC #weechat channel: ---- -$ echo 'irc.freenode.#weechat *hello!' >~/.weechat/weechat_fifo +$ echo 'irc.freenode.#weechat *hello!' >/run/user/1000/weechat/weechat_fifo ---- * Send a message on current buffer: ---- -$ echo '*hello!' >~/.weechat/weechat_fifo +$ echo '*hello!' >/run/user/1000/weechat/weechat_fifo ---- * Send two commands to unload/reload Python scripts (you have to separate them with "\n"): ---- -$ printf '%b' '*/python unload\n*/python autoload\n' >~/.weechat/weechat_fifo +$ printf '%b' '*/python unload\n*/python autoload\n' >/run/user/1000/weechat/weechat_fifo ---- [[fifo_commands]] @@ -3381,7 +3404,7 @@ To have log files by date, you can use date/time specifiers in mask (see You'll have following files: .... -~/.weechat +~/.local/share/weechat └── logs ├── 2010 │ ├── 11 @@ -3410,7 +3433,7 @@ If you want one directory by IRC server and one file by channel inside: You'll have following files: .... -~/.weechat +~/.local/share/weechat └── logs └── irc ├── freenode @@ -3615,12 +3638,14 @@ Using the protocol option "unix" with the `/relay add` command, you can listen using any protocol on a UNIX domain socket at a given path. For example: ---- -/relay add unix.weechat %h/relay_socket +/relay add unix.weechat ${weechat_runtime_dir}/relay_socket ---- This allows clients to connect using the weechat protocol to -_~/.weechat/relay_socket_. This is particularly useful to allow SSH forwarding -for relay clients, when other ports cannot be opened. Using OpenSSH: +_/run/user/1000/weechat/relay_socket_. This is particularly useful to allow +SSH forwarding for relay clients, when other ports cannot be opened. + +Using OpenSSH: ---- $ ssh -L 9000:.weechat/relay_socket user@hostname |