Files
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

47 lines
1.2 KiB
Markdown

# WeeChat {#module-services-weechat}
[WeeChat](https://weechat.org/) is a fast and
extensible IRC client.
## Basic Usage {#module-services-weechat-basic-usage}
By default, the module creates a
[`systemd`](https://www.freedesktop.org/wiki/Software/systemd/)
unit which runs the chat client in a detached
[`screen`](https://www.gnu.org/software/screen/)
session.
This can be done by enabling the `weechat` service:
```nix
{ ... }:
{
services.weechat.enable = true;
}
```
The service is managed by a dedicated user named `weechat`
in the state directory `/var/lib/weechat`.
## Re-attaching to WeeChat {#module-services-weechat-reattach}
WeeChat runs in a screen session owned by a dedicated user. To explicitly
allow your another user to attach to this session, the
`screenrc` needs to be tweaked by adding
[multiuser](https://www.gnu.org/software/screen/manual/html_node/Multiuser.html#Multiuser)
support:
```nix
{
programs.screen.screenrc = ''
multiuser on
acladd normal_user
'';
}
```
Now, the session can be re-attached like this:
```
screen -x weechat/weechat-screen
```
*The session name can be changed using [services.weechat.sessionName.](options.html#opt-services.weechat.sessionName)*