File: swirc.conf.5

package info (click to toggle)
swirc 3.5.8-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,044 kB
  • sloc: cpp: 18,690; ansic: 18,414; sh: 1,011; python: 254; makefile: 108; javascript: 20
file content (665 lines) | stat: -rw-r--r-- 20,728 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
.\" -*- mode: nroff; -*-
.\"
.\" SPDX-FileCopyrightText: Copyright 2018-2025 Markus Uhlin
.\" SPDX-License-Identifier: ISC
.\"
.Dd December 26, 2025
.Dt SWIRC.CONF 5
.Os
.Sh NAME
.Nm swirc.conf
.Nd swirc configuration file
.Sh DESCRIPTION
This manual page describes
.Nm
which is a configuration file for
.Xr swirc 1
(a curses based irc client).
\fBNOTE\fR
Certain settings take effect first after program restart while others
don't!
.Sh SETTING TYPES
.Bl -tag -width Ds
.It Sy bool
Bools are case insensitive and can have one of the following values:
.Bl -bullet -compact
.It
on, true or yes
.It
off, false or no
.El
.It Sy int
Integers.
.Sy swirc
implements a min/max value for each integer in order to keep its value
safe.
The error log will tell if the restrictions for an integer aren't
within limits and, if so, that a preprogrammed fallback value is being
used instead.
.It Sy string
An arbitrary sequence of characters
.El
.Sh SETTINGS
.Bl -tag -width Ds
.\" ----------------------------------------
.\" ACCOUNT NOTIFY
.\" ----------------------------------------
.It Sy account_notify Pq Em bool
Allows a client to be notified when another client’s accountname
changes
.\" ----------------------------------------
.\" ACCOUNT TAG
.\" ----------------------------------------
.It Sy account_tag Pq Em bool
Turns the IRCv3 account tag extension on/off.
.\" ----------------------------------------
.\" ALT NICK
.\" ----------------------------------------
.It Sy alt_nick Pq Em string
Alternative nickname.
This nickname is used when processing a connection to a server and the
default nickname is busy.
.\" ----------------------------------------
.\" AUTO OP YOURSELF
.\" ----------------------------------------
.It Sy auto_op_yourself Pq Em bool
Automatically op yourself on channel join when you're identified as an
IRC operator
.\" ----------------------------------------
.\" AWAYMSGS IN PRIVCONV
.\" ----------------------------------------
.It Sy awaymsgs_in_privconv Pq Em bool
Output away messages in private conversations?
Away messages are often displayed each time you message the user who's
marked as being away which can be annoying if the user isn't really
away, i.e. he/she just forgot to unset the status.
This setting defaults to YES.
.\" ----------------------------------------
.\" AWAY NOTIFY
.\" ----------------------------------------
.It Sy away_notify Pq Em bool
Allows a client to specify that it would like to be notified when
users are marked/unmarked as away
.\" ----------------------------------------
.\" BATCH
.\" ----------------------------------------
.It Sy batch Pq Em bool
Enable or disable the IRCv3 batch extension.
The batch extension provides a way for servers to mark certain
messages as related.
.Xr swirc 1
takes advantage of this.
.\" ----------------------------------------
.\" BEEPS
.\" ----------------------------------------
.It Sy beeps Pq Em bool
.Xr swirc 1
alerts the user by sending a beep in certain cases.
However, with the help of this setting, beeps can be turned on/off.
.\" ----------------------------------------
.\" CHANSERV HOST
.\" ----------------------------------------
.It Sy chanserv_host Pq Em string
ChanServ hostname
.\" ----------------------------------------
.\" CHGHOST
.\" ----------------------------------------
.It Sy chghost Pq Em bool
Allows servers to send a notification when clients change their
username or host (IRCv3 feature).
Defaults to yes.
.\" ----------------------------------------
.\" CIPHER SUITE
.\" ----------------------------------------
.It Sy cipher_suite Pq Em string
Cipher suite.
Which can have one of the following values:
.Bl -bullet -compact
.It
secure
.It
compat
.It
legacy
.It
all
.El
.\" ----------------------------------------
.\" CMD HIST SIZE
.\" ----------------------------------------
.It Sy cmd_hist_size Pq Em int
Command history size.
No more than this number of commands will be stored in the memory.
.\" ----------------------------------------
.\" CMD TYPE PROT
.\" ----------------------------------------
.It Sy cmd_type_prot Pq Em bool
Command type protection.
Detects up to 5 leading spaces followed by a command character
preventing a command to be accidentally transmitted as a chat message.
.\" ----------------------------------------
.\" CONNECTION TIMEOUT
.\" ----------------------------------------
.It Sy connection_timeout Pq Em int
Connection timeout in seconds
.\" ----------------------------------------
.\" CTCP REPLY
.\" ----------------------------------------
.It Sy ctcp_reply Pq Em bool
Reply to CTCP requests?
(For example TIME and VERSION.)
.\" ----------------------------------------
.\" CTCP USERINFO
.\" ----------------------------------------
.It Sy ctcp_userinfo Pq Em string
A string to return on a CTCP userinfo request.
.\" ----------------------------------------
.\" DCC
.\" ----------------------------------------
.It Sy dcc Pq Em bool
Use DCC (Direct Client-to-Client)?
.Xr swirc 1
implements its own variant of DCC meaning it's incompatible with other
IRC clients.
Transport Layer Security is forced and for now the DCC feature isn't
available in ICB mode.
.\" ----------------------------------------
.\" DCC CIPHER SUITE
.\" ----------------------------------------
.It Sy dcc_cipher_suite Pq Em string
DCC cipher suite.
Which can have one of the following values:
.Bl -bullet -compact
.It
secure
.It
compat
.It
legacy
.It
all
.El
.\" ----------------------------------------
.\" DCC OWN IP
.\" ----------------------------------------
.It Sy dcc_own_ip Pq Em string
IPv4 address for incoming DCC connections.
If empty
.Xr swirc 1
attempts to resovle the address automatically.
.\" ----------------------------------------
.\" DCC PORT
.\" ----------------------------------------
.It Sy dcc_port Pq Em int
Port number for incoming DCC connections (1024-65535),
defaults to 8080.
Must not be blocked by a firewall.
.\" ----------------------------------------
.\" DCC UPLOAD DIR
.\" ----------------------------------------
.It Sy dcc_upload_dir Pq Em string
Where shall
.Xr swirc 1
look for DCC uploads?
If empty it defaults to
.Em uploads
in the home dir of Swirc.
On
.Ox
this dir is made available with read-only permissions by using
.Xr unveil 2 .
However, that is done once at startup.
Changing it while Swirc is running will not work.
.\" ----------------------------------------
.\" EXTENDED JOIN
.\" ----------------------------------------
.It Sy extended_join Pq Em bool
Turns the
.Em extended-join
IRCv3 feature on/off.
.\" ----------------------------------------
.\" FTP HOST
.\" ----------------------------------------
.It Sy ftp_host Pq Em string
FTP hostname.
.\" ----------------------------------------
.\" FTP PORT
.\" ----------------------------------------
.It Sy ftp_port Pq Em int
FTP port number (1-65535).
Defaults to 21.
.\" ----------------------------------------
.\" FTP USER
.\" ----------------------------------------
.It Sy ftp_user Pq Em string
FTP username.
Defaults to anonymous.
.\" ----------------------------------------
.\" FTP PASS
.\" ----------------------------------------
.It Sy ftp_pass Pq Em string
FTP password.
.\" ----------------------------------------
.\" FTP UPLOAD DIR
.\" ----------------------------------------
.It Sy ftp_upload_dir Pq Em string
FTP upload directory.
.\" ----------------------------------------
.\" HOSTNAME CHECKING
.\" ----------------------------------------
.It Sy hostname_checking Pq Em bool
Enable or disable TLS/SSL hostname verification
.\" ----------------------------------------
.\" ICONV CONVERSION
.\" ----------------------------------------
.It Sy iconv_conversion Pq Em bool
Perform character conversion using GNU libiconv?
If having this option set to 'on' causes troubles or if you don't need
it, it can safely be switched off.
Switching it off boosts the performance of the printtext module
significantly.
.\" ----------------------------------------
.\" IDENTD
.\" ----------------------------------------
.It Sy identd Pq Em bool
Use the built-in ident protocol daemon/server?
It's automatically started and stopped during the connection process
if this option is enabled.
During the connection process to an IRC server the IRC server often
attempts to send an ident query to port 113 on your computer.
You might have seen something like:
.Bd -literal -offset indent
*** Processing connection to irc.server.com
*** Looking up your hostname...
*** Checking Ident
*** No Ident response <---
*** Found your hostname
.Ed
.Pp
This requires port 113 to be open, i.e. not behind a firewall.
.\" ----------------------------------------
.\" IDENTD FAKENAMES
.\" ----------------------------------------
.It Sy identd_fakenames Pq Em bool
Respond to ident queries with fake (randomized) names?
.\" ----------------------------------------
.\" IDENTD PORT
.\" ----------------------------------------
.It Sy identd_port Pq Em int
Which port shall the ident server listen on?
In general, on Unix only root can listen on ports below 1024.
Since you neither CAN or SHOULD run
.Xr swirc 1
as root you should specify a different port using this setting and
configure your firewall to redirect connections to port 113 to this
one.
.Pp
If you're using
.Ox
and
.Xr pf 4 ,
pose that you want use port 6500 and that the name of the target
interface is vio0.
You could then add the following lines to your
.Xr pf.conf 5 :
.Bd -literal -offset indent
pass in on vio0 inet  proto tcp from any to any port auth \e
    rdr-to 127.0.0.1 port 6500
pass in on vio0 inet6 proto tcp from any to any port auth \e
    rdr-to ::1 port 6500
.Ed
.\" ----------------------------------------
.\" INVITE NOTIFY
.\" ----------------------------------------
.It Sy invite_notify Pq Em bool
Allows a client to specify that it would like to be notified when
users are invited to channels
.\" ----------------------------------------
.\" JOINS PARTS QUITS
.\" ----------------------------------------
.It Sy joins_parts_quits Pq Em bool
Show JOIN/PART/QUIT events?
.\" ----------------------------------------
.\" KICK CLOSE WINDOW
.\" ----------------------------------------
.It Sy kick_close_window Pq Em bool
If the active user gets kicked out from a channel,
should the channel window be terminated?
.\" ----------------------------------------
.\" MAX CHAT WINDOWS
.\" ----------------------------------------
.It Sy max_chat_windows Pq Em int
Max chat windows that can be open simultaneously
.\" ----------------------------------------
.\" MOUSE
.\" ----------------------------------------
.It Sy mouse Pq Em bool
Use the mouse?
.\" ----------------------------------------
.\" MOUSE EVENTS
.\" ----------------------------------------
.It Sy mouse_events Pq Em string
Which mouse events shall be reported?
.Bl -bullet -compact
.It
all
.It
wheel (default)
.El
.\" ----------------------------------------
.\" MULTI PREFIX
.\" ----------------------------------------
.It Sy multi_prefix Pq Em bool
When requested, the multi-prefix client capability will cause the IRC
server to send all possible prefixes which apply to a user in NAMES,
WHO and WHOIS output.
.Pp
(These prefixes are in order of ‘rank’, from highest to lowest.)
.\" ----------------------------------------
.\" NICKNAME
.\" ----------------------------------------
.It Sy nickname Pq Em string
Online nickname
.\" ----------------------------------------
.\" NICKNAME ALIASES
.\" ----------------------------------------
.It Sy nickname_aliases Pq Em string
A space separated list of nickname aliases which are used, in addition
to the default nickname, to highlight a message if it matches any of
the aliases given by this setting.
.\" ----------------------------------------
.\" NICKSERV HOST
.\" ----------------------------------------
.It Sy nickserv_host Pq Em string
NickServ hostname
.\" ----------------------------------------
.\" NOTIFICATIONS
.\" ----------------------------------------
.It Sy notifications Pq Em bool
Turns notifications on/off.
Takes effect at once.
.\" ----------------------------------------
.\" PART MESSAGE
.\" ----------------------------------------
.It Sy part_message Pq Em string
Message when leaving a channel
.\" ----------------------------------------
.\" QBOT HOST
.\" ----------------------------------------
.It Sy qbot_host Pq Em string
Q bot hostname.
The Q bot is a
.Lk https://www.quakenet.org/ QuakeNet
service.
.\" ----------------------------------------
.\" QUIT MESSAGE
.\" ----------------------------------------
.It Sy quit_message Pq Em string
Message when disconnecting from a server
.\" ----------------------------------------
.\" REAL NAME
.\" ----------------------------------------
.It Sy real_name Pq Em string
Specifies the real name.
But can be set to anything.
.\" ----------------------------------------
.\" RECONNECT BACKOFF DELAY
.\" ----------------------------------------
.It Sy reconnect_backoff_delay Pq Em int
The number of seconds that should be added to each reconnect attempt
(0-99)
.\" ----------------------------------------
.\" RECONNECT DELAY
.\" ----------------------------------------
.It Sy reconnect_delay Pq Em int
Seconds to consume before the first reconnect attempt (0-999)
.\" ----------------------------------------
.\" RECONNECT DELAY MAX
.\" ----------------------------------------
.It Sy reconnect_delay_max Pq Em int
Maximum reconnect delay in seconds (0-999).
Regardless of the other related reconnect settings.
.\" ----------------------------------------
.\" RECONNECT RETRIES
.\" ----------------------------------------
.It Sy reconnect_retries Pq Em int
If the IRC connection is lost, how many attempts should be performed
to get the connection working again before giving up?
.\" ----------------------------------------
.\" SASL
.\" ----------------------------------------
.It Sy sasl Pq Em bool
Request SASL authentication on connection to a server?
.\" ----------------------------------------
.\" SASL MECHANISM
.\" ----------------------------------------
.It Sy sasl_mechanism Pq Em string
SASL mechanism.
Available mechanisms are:
.Bl -bullet -compact
.It
ECDSA-NIST256P-CHALLENGE
.It
EXTERNAL
.It
PLAIN
.It
SCRAM-SHA-1
.It
SCRAM-SHA-256
.It
SCRAM-SHA-512
.El
.Pp
Be sure to write them in all uppercase!
.\" ----------------------------------------
.\" SASL PASSWORD
.\" ----------------------------------------
.It Sy sasl_password Pq Em string
SASL password.
(For mechanism PLAIN and SCRAM-SHA-256.)
.Pp
It is recommended to set this setting using the interactive \fBsasl\fR
command.
However, if the initial character is a question mark
.Pq Sq \&?
it symbolizes that the password is in plain text/unencrypted; while a
hash mark
.Pq Sq #
symbolizes that the password is encrypted.
The initial character must be either of them and is not interpreted as
a part of the password.
.\" ----------------------------------------
.\" SASL USERNAME
.\" ----------------------------------------
.It Sy sasl_username Pq Em string
SASL username
.\" ----------------------------------------
.\" SASL X509
.\" ----------------------------------------
.It Sy sasl_x509 Pq Em string
Filename for your certificate chain file.
The file shall be located in Swirc's home dir and be in PEM format.
.Pp
The certificate chain file is used for automatic NickServ
authentication using the \fBexternal\fR SASL auth mechanism.
A file of this sort can be generated by running the following scripts:
.Bl -bullet -compact
.It
1-root-ca.sh (Create the root CA)
.It
4-client-cert.sh
(Create the client certificate and sign it with the root CA)
.El
.Pp
After running the scripts stated above in given order you can set this
setting to \fIclient.pem\fR.
.\" ----------------------------------------
.\" SAVE BACKLOGS TO DISK
.\" ----------------------------------------
.It Sy save_backlogs_to_disk Pq Em string
Save backlogs to disk?
This setting only makes sense either if you are using
.Lk https://znc.in/ ZNC ,
or if the IRCv3 batch type \fIchathistory\fR is supported by the
active IRC server software.
The following values are recognized:
.Bl -bullet -compact
.It
no
.It
both
.It
channels
.It
private
.El
.\" ----------------------------------------
.\" SERVER CIPHER SUITE
.\" ----------------------------------------
.\" .It Sy server_cipher_suite Pq Em string
.\" Server cipher suite.
.\" Which can have one of the following values:
.\" .Bl -bullet -compact
.\" .It
.\" secure
.\" .It
.\" compat
.\" .It
.\" legacy
.\" .It
.\" all
.\" .El
.\" .Pp
.\" The server cipher suite is used when you start a TLS server in
.\" .Xr swirc 1
.\" used for remote GUI connections.
.\" (Managed using the \fBrgui\fR command).
.\" ----------------------------------------
.\" SERVER TIME
.\" ----------------------------------------
.It Sy server_time Pq Em bool
Enable or disable IRCv3 server time extension.
The server time extension is particularly useful if you're using an
IRC bouncer like
.Lk https://znc.in/ ZNC
.\" ----------------------------------------
.\" SHOW PING PONG
.\" ----------------------------------------
.It Sy show_ping_pong Pq Em bool
Show ping pong events?
The default is NO.
.\" ----------------------------------------
.\" SKIP MOTD
.\" ----------------------------------------
.It Sy skip_motd Pq Em bool
Skip message of the day (MOTD) on connection to a server?
.\" ----------------------------------------
.\" SOCKS
.\" ----------------------------------------
.It Sy socks Pq Em bool
Use the SOCKS proxy client?
The SOCKS proxy client is particularly suited for use with Tor.
Examples of IRC networks that are accessible via Tor are Libera Chat
and OFTC.
In order to access Libera Chat or OFTC using the previously mentioned
technique you can add the following lines to your
.Xr torrc 5 :
.Bd -literal -offset indent
# Libera Chat
MapAddress palladium.libera.chat libera75jm6of4wxpxt4aynol3xjmbtxgfyjpu34ss4d7r7q2v5zrpyd.onion

# OFTC
MapAddress irc.oftc.net oftcnet6xg6roj6d7id4y4cu6dchysacqj2ldgea73qzdagufflqxrid.onion
.Ed
.Pp
After this has been done (and after restarting Tor) you should be able
to connect to one of the mapped addresses inside Swirc.
The socks host setting should point to the machine where the Tor
service is running.
.\" ----------------------------------------
.\" SOCKS ATYP
.\" ----------------------------------------
.It Sy socks_atyp Pq Em int
SOCKS address type.
Which can have one of the following values:
.Bl -bullet -compact
.It
(0) Fully qualified domain name.
The default.
.It
(1) IPv4 address
.It
(2) IPv6 address
.El
.\" ----------------------------------------
.\" SOCKS HOST
.\" ----------------------------------------
.It Sy socks_host Pq Em string
SOCKS hostname.
.\" ----------------------------------------
.\" SOCKS PORT
.\" ----------------------------------------
.It Sy socks_port Pq Em string
SOCKS port.
The default is 9050 which is used by
.Lk https://www.torproject.org/ Tor .
.\" ----------------------------------------
.\" SPELL
.\" ----------------------------------------
.It Sy spell Pq Em bool
Use spelling?
.\" ----------------------------------------
.\" SPELL LANG
.\" ----------------------------------------
.It Sy spell_lang Pq Em string
Spelling language.
The default is \fBen_US\fR.
.\" ----------------------------------------
.\" SPELL SYSWIDE
.\" ----------------------------------------
.It Sy spell_syswide Pq Em bool
Where shall Swirc look for spelling dictionaries?
(System wide or in the program settings dir.)
.\" ----------------------------------------
.\" SSL VERIFY PEER
.\" ----------------------------------------
.It Sy ssl_verify_peer Pq Em bool
Verify peer?
Setting it to NO decreases TLS/SSL security significantly,
but is a must on servers with trusted self signed certificates.
.\" ----------------------------------------
.\" STARTUP GREETING
.\" ----------------------------------------
.It Sy startup_greeting Pq Em bool
Enable or disable
.Sy swirc
startup greeting
.\" ----------------------------------------
.\" TEXTBUFFER SIZE ABSOLUTE
.\" ----------------------------------------
.It Sy textbuffer_size_absolute Pq Em int
Max number of elements in a text buffer before head gets removed from
scroll back history.
Each open window is assigned a buffer with this size,
so set a sane value!
.\" ----------------------------------------
.\" THEME
.\" ----------------------------------------
.It Sy theme Pq Em string
.Sy swirc
theme.
.\" ----------------------------------------
.\" USERNAME
.\" ----------------------------------------
.It Sy username Pq Em string
User identity.
Preferably to be set to the same as the nickname.
.El
.Sh FILES
.Bl -tag -width "                    " -compact
.It Pa ~/.swirc/swirc.conf
swirc configuration file
.El
.Sh SEE ALSO
.Xr swirc 1 , Xr swirc.theme 5