2018-09-05 15:01:57 +00:00
<chapter xmlns= "http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-services-weechat">
2018-09-30 00:51:11 +00:00
<title > WeeChat</title>
<para >
2019-09-18 20:13:35 +00:00
<link xlink:href= "https://weechat.org/" > WeeChat</link> is a fast and extensible IRC client.
2018-09-30 00:51:11 +00:00
</para>
2019-02-07 03:35:58 +00:00
<section xml:id= "module-services-weechat-basic-usage" >
2018-09-30 00:51:11 +00:00
<title > Basic Usage</title>
2018-09-05 15:01:57 +00:00
2018-09-30 00:51:11 +00:00
<para >
2019-09-18 20:13:35 +00:00
By default, the module creates a <literal > <link xlink:href= "https://www.freedesktop.org/wiki/Software/systemd/" > systemd</link> </literal> unit which runs the chat client in a detached <literal > <link xlink:href= "https://www.gnu.org/software/screen/" > screen</link> </literal> session.
2018-09-30 00:51:11 +00:00
</para>
2018-09-05 15:01:57 +00:00
2018-09-30 00:51:11 +00:00
<para >
This can be done by enabling the <literal > weechat</literal> service:
2018-09-05 15:01:57 +00:00
<programlisting >
{ ... }:
{
<link linkend= "opt-services.weechat.enable" > services.weechat.enable</link> = true;
}
</programlisting>
2018-09-30 00:51:11 +00:00
</para>
<para >
2019-09-18 20:13:35 +00:00
The service is managed by a dedicated user named <literal > weechat</literal> in the state directory <literal > /var/lib/weechat</literal> .
2018-09-30 00:51:11 +00:00
</para>
</section>
2019-02-07 03:35:58 +00:00
<section xml:id= "module-services-weechat-reattach" >
2018-09-30 00:51:11 +00:00
<title > Re-attaching to WeeChat</title>
2018-09-05 15:01:57 +00:00
2018-09-30 00:51:11 +00:00
<para >
2019-09-18 20:13:35 +00:00
WeeChat runs in a screen session owned by a dedicated user. To explicitly allow your another user to attach to this session, the <literal > screenrc</literal> needs to be tweaked by adding <link xlink:href= "https://www.gnu.org/software/screen/manual/html_node/Multiuser.html#Multiuser" > multiuser</link> support:
2018-09-05 15:01:57 +00:00
<programlisting >
{
<link linkend= "opt-programs.screen.screenrc" > programs.screen.screenrc</link> = ''
multiuser on
acladd normal_user
'';
}
</programlisting>
2018-09-30 00:51:11 +00:00
Now, the session can be re-attached like this:
2018-09-05 15:01:57 +00:00
<programlisting >
2018-10-09 23:20:42 +00:00
screen -x weechat/weechat-screen
2018-09-05 15:01:57 +00:00
</programlisting>
2018-09-30 00:51:11 +00:00
</para>
<para >
2019-09-18 20:13:35 +00:00
<emphasis > The session name can be changed using <link linkend= "opt-services.weechat.sessionName" > services.weechat.sessionName.</link> </emphasis>
2018-09-30 00:51:11 +00:00
</para>
</section>
2018-09-05 15:01:57 +00:00
</chapter>