]> Git — Sourcephile - julm/julm-nix.git/blob - homes/julm/irssi/config
irssi: move from FreeNode to Libera
[julm/julm-nix.git] / homes / julm / irssi / config
1 settings = {
2 core = {
3 real_name = "Julien Moutinho";
4 user_name = "julm";
5 nick = "julm";
6 timestamp_format = "%H:%M ";
7 log_create_mode = "660";
8 log_timestamp = "%Y-%m-%d %H:%M:%S%p ";
9 settings_autosave = "no";
10 };
11 "irc/core" = {
12 alternate_nick = "julm_";
13 # Recommended by https://github.com/cryptodotis/irssi-otr/blob/master/README.md
14 cmd_queue_speed = "1msec";
15 };
16 silc = {
17 sign_private_messages = "yes";
18 sign_channel_messages = "yes";
19 };
20 "fe-common/core" = {
21 autolog = "yes";
22 autolog_path = "~/log/irssi/$tag/$0/%Y-%m-%d.log";
23 names_max_columns = "9";
24 autolog_ignore_targets = "GeekNode/C Libera/NickServ OFTC/NickServ";
25 beep_msg_level = "MSGS NOTICES INVITES DCC DCCMSGS HILIGHT";
26 };
27 "fe-text" = {
28 actlist_sort = "refnum";
29 paste_join_multiline = "no";
30 };
31 "perl/core/scripts" = {
32 awl_block = "20";
33 awl_shared_sbar = "OFF";
34 awl_viewer = "no";
35 nicklist_width = "13";
36 nickcolor_enable_prefix = "OFF";
37 nickcolor_enable_truncate = "ON";
38 nickcolor_truncate_value = "-13";
39 title_string = "IRC: $winname$T";
40 };
41 #proxy = {
42 # irssiproxy_password = "";
43 # irssiproxy_ports = "GeekNode=2777 FreeNode=2778 OFTC=2779 ToileLibre=2780 IndyMedia=2781";
44 # irssiproxy_bind = "127.0.0.1";
45 #};
46 };
47 chatnets = {
48 FreeNode = {
49 type = "IRC";
50 nick = "julm";
51 autosendcmd = "";
52 # Cannot use dynamic password on SASL, and sasl.auth is not encrypted.
53 #sasl_mechanism = "PLAIN";
54 #sasl_username = "julm";
55 #sasl_password = "<password:FreeNode>";
56 };
57 GeekNode = {
58 type = "IRC";
59 nick = "julm";
60 autosendcmd = "passwd GeekNode msg C nick identify <password>";
61 };
62 Libera = {
63 type = "IRC";
64 nick = "julm";
65 autosendcmd = "";
66 # Cannot use dynamic password on SASL, and sasl.auth is not encrypted.
67 #sasl_mechanism = "PLAIN";
68 #sasl_username = "julm";
69 #sasl_password = "<password:Libera>";
70 };
71 OFTC = {
72 type = "IRC";
73 nick = "julm";
74 password = "<password:OFTC>";
75 #autosendcmd = "passwd OFTC msg NickServ identify <password>";
76 };
77 ToileLibre = {
78 type = "IRC";
79 nick = "julm";
80 autosendcmd = "";
81 };
82 };
83 servers = (
84 { chatnet = "Libera";
85 address = "irc.libera.chat";
86 port = "6697";
87 use_ssl = "yes";
88 ssl_verify = "yes";
89 autoconnect = "yes";
90 password = "<password:Libera>";
91 },
92 { chatnet = "FreeNode";
93 address = "irc.freenode.net";
94 port = "6697";
95 use_ssl = "yes";
96 ssl_verify = "yes";
97 autoconnect = "no";
98 password = "<password:FreeNode>";
99 },
100 { chatnet = "GeekNode";
101 address = "irc.geeknode.net";
102 port = "6697";
103 use_ssl = "yes";
104 ssl_verify = "yes";
105 autoconnect = "yes";
106 # GeekNode does not use NickServ but C
107 #password = "<password:GeekNode>";
108 },
109 { chatnet = "IndyMedia";
110 address = "irc.indymedia.org";
111 port = "6697";
112 use_ssl = "yes";
113 ssl_verify = "yes";
114 autoconnect = "no";
115 password = "<password:IndyMedia>";
116 },
117 { chatnet = "ToileLibre";
118 address = "lenine-irc.wirefull.org";
119 port = "6697";
120 use_ssl = "yes";
121 ssl_verify = "no";
122 autoconnect = "no";
123 password = "<password:ToileLibre>";
124 }
125 { chatnet = "OFTC";
126 address = "irc.oftc.net";
127 port = "6697";
128 use_ssl = "yes";
129 ssl_verify = "yes";
130 autoconnect = "yes";
131 password = "<password:OFTC>";
132 }
133 );
134 channels = (
135 { chatnet = "GeekNode"; name = "grenode"; autojoin = "yes"; },
136 { chatnet = "GeekNode"; name = "gresille"; autojoin = "yes"; },
137 { chatnet = "GeekNode"; name = "illyse"; autojoin = "no"; },
138 { chatnet = "GeekNode"; name = "markas"; autojoin = "yes"; },
139 { chatnet = "GeekNode"; name = "rezine"; autojoin = "yes"; },
140 { chatnet = "GeekNode"; name = "sourcephile"; autojoin = "yes"; },
141 { chatnet = "Libera"; name = "categorytheory"; autojoin = "yes"; },
142 { chatnet = "Libera"; name = "conservancy"; autojoin = "yes"; },
143 { chatnet = "Libera"; name = "haskell-beginners"; autojoin = "yes"; },
144 { chatnet = "Libera"; name = "haskell-blah"; autojoin = "yes"; },
145 { chatnet = "Libera"; name = "haskell-docs"; autojoin = "no"; },
146 { chatnet = "Libera"; name = "haskell-fr"; autojoin = "yes"; },
147 { chatnet = "Libera"; name = "haskell-language-server"; autojoin = "no"; },
148 { chatnet = "Libera"; name = "haskell-offtopic"; autojoin = "yes"; },
149 { chatnet = "Libera"; name = "haskell.nix"; autojoin = "yes"; },
150 { chatnet = "Libera"; name = "ilico"; autojoin = "yes"; },
151 { chatnet = "Libera"; name = "lobsters-feed"; autojoin = "yes"; },
152 { chatnet = "Libera"; name = "nix-community"; autojoin = "yes"; },
153 { chatnet = "Libera"; name = "nixos"; autojoin = "yes"; },
154 { chatnet = "Libera"; name = "nixos-aarch64"; autojoin = "yes"; },
155 { chatnet = "Libera"; name = "nixos-chat"; autojoin = "yes"; },
156 { chatnet = "Libera"; name = "nixos-dev"; autojoin = "yes"; },
157 { chatnet = "Libera"; name = "nixos-fr"; autojoin = "yes"; },
158 { chatnet = "Libera"; name = "nixos-gnome"; autojoin = "no"; },
159 { chatnet = "Libera"; name = "nixos-nur"; autojoin = "no"; },
160 { chatnet = "Libera"; name = "nixos-security"; autojoin = "yes"; },
161 { chatnet = "Libera"; name = "nixos-systemd"; autojoin = "yes"; },
162 { chatnet = "Libera"; name = "PauLLA"; autojoin = "yes"; },
163 { chatnet = "Libera"; name = "postfix"; autojoin = "yes"; },
164 { chatnet = "Libera"; name = "sourcephile"; autojoin = "yes"; },
165 { chatnet = "Libera"; name = "stupidities"; autojoin = "yes"; },
166 { chatnet = "Libera"; name = "tetaneutral.net"; autojoin = "yes"; },
167 { chatnet = "Libera"; name = "zfs"; autojoin = "yes"; },
168 { chatnet = "Libera"; name = "zfs-fr"; autojoin = "yes"; },
169 { chatnet = "OFTC"; name = "haskell"; autojoin = "yes"; },
170 { chatnet = "OFTC"; name = "haskell-fr"; autojoin = "yes"; },
171 { chatnet = "OFTC"; name = "nixos"; autojoin = "yes"; },
172 { chatnet = "OFTC"; name = "nixos-fr"; autojoin = "yes"; },
173 { chatnet = "OFTC"; name = "zfs"; autojoin = "yes"; },
174 { chatnet = "OFTC"; name = "zfs-fr"; autojoin = "yes"; },
175 );
176 statusbar = {
177 # formats:
178 # when using {templates}, the template is shown only if it's argument isn't
179 # empty unless no argument is given. for example {sb} is printed always,
180 # but {sb $T} is printed only if $T isn't empty.
181 items = {
182 # start/end text in statusbars
183 barstart = "{sbstart}";
184 barend = "{sbend}";
185 topicbarstart = "{topicsbstart}";
186 topicbarend = "{topicsbend}";
187 # treated "normally", you could change the time/user name to whatever
188 time = "{sb $Z}";
189 user = "%N{sbaway $A} ";
190 # treated specially .. window is printed with non-empty windows,
191 # window_empty is printed with empty windows
192 #prompt = "{prompt $[.15]itemname}";
193 #prompt_empty = "{prompt $winname}";
194 window = "{sb %c$winref%K:%c$tag/$itemname{sbmode $M}}";
195 window_empty = "{sb $winref{sbservertag $tag}}";
196 prompt = "{sbmode $[-6]usermode} {sbnickmode $[1]cumode}%K$[-12]N %c>%N ";
197 prompt_empty = "{sbmode $[-6]usermode} %K$[-12]N %c>%N ";
198 topic = " $topic";
199 topic_empty = " Irssi v$J - http://www.irssi.org";
200 # all of these treated specially, they're only displayed when needed
201 #more = "-- more --";
202 lag = "{sb %KLag%c:%K$0-}";
203 act = "{sb %KAct%c:%n$0-}";
204 away = "{sbaway $A}";
205 more = " -- more --";
206 };
207
208 # there's two type of statusbars. root statusbars are either at the top
209 # of the screen or at the bottom of the screen. window statusbars are at
210 # the top/bottom of each split window in screen.
211 default = {
212 # the "default statusbar" to be displayed at the bottom of the window.
213 # contains all the normal items.
214
215 window = {
216 # window, root
217 type = "window";
218 # top, bottom
219 placement = "bottom";
220 # number
221 position = "1";
222 # active, inactive, always
223 visible = "active";
224 # list of items in statusbar in the display order
225 items = {
226 barstart = { priority = "100"; };
227 time = { };
228 window = { };
229 window_empty = { };
230 user = { };
231 lag = { priority = "-1"; };
232 act = { priority = "10"; };
233 more = { priority = "-1"; alignment = "right"; };
234 barend = { priority = "100"; alignment = "right"; };
235 usercount = { priority = "100"; alignment = "right"; };
236 otr = { };
237 };
238 };
239
240 window_inact = {
241 type = "window";
242 placement = "bottom";
243 position = "1";
244 visible = "inactive";
245 items = {
246 barstart = { priority = "100"; };
247 window = { };
248 window_empty = { };
249 more = { priority = "-1"; alignment = "right"; };
250 barend = { priority = "100"; alignment = "right"; };
251 };
252 disabled = "yes";
253 };
254
255 # Treat input line as yet another statusbar :)
256 # It's possible to add other items before or after the input line item.
257 prompt = {
258 type = "root";
259 placement = "bottom";
260 position = "100";
261 visible = "always";
262 items = {
263 prompt = { priority = "-1"; };
264 prompt_empty = { priority = "-1"; };
265 # treated specially, this is the real input line.
266 input = { priority = "10"; };
267 };
268 };
269
270 topic = {
271 type = "root";
272 placement = "top";
273 position = "1";
274 visible = "always";
275 items = {
276 topicbarstart = { priority = "100"; };
277 topic = { };
278 topic_empty = { };
279 topicbarend = { priority = "100"; alignment = "right"; };
280 };
281 };
282
283 type = { disabled = "yes"; };
284 };
285 };
286 hilights = (
287 { text = "julm"; nick = "yes"; word = "yes"; },
288 { text = "ju1m"; nick = "yes"; word = "yes"; }
289 );
290 ignores = (
291 { level = "ALL"; mask = "luminux"; },
292 { level = "ALL"; mask = "dameloo"; },
293 { level = "NO_ACT ALL"; mask = "NixOS_GitHub"; },
294 { level = "NO_ACT ALL"; mask = "nix-gsc-io`bot"; },
295 { level = "NO_ACT ALL"; mask = "nix-build"; },
296 { level = "NO_ACT ALL"; mask = "{^_^}"; },
297 { level = "NO_ACT ALL"; mask = "{`_`}"; },
298 { level = "CTCPS"; },
299 {
300 level = "JOINS PARTS QUITS NICKS";
301 channels = (
302 "#categorytheory",
303 "#conservancy",
304 "#ghc",
305 "#grenode",
306 "#gresille",
307 "#haskell",
308 "#haskell-beginners",
309 "#haskell-blah",
310 "#haskell-docs",
311 "#haskell-fr",
312 "#haskell-ide-engine",
313 "#haskell-language-server",
314 "#haskell-offtopic",
315 "#haskell.nix",
316 "#haskell.nix",
317 "#ilico",
318 "#ilico",
319 "#lobsters-feed",
320 "#nix-community",
321 "#nix-lang",
322 "#nixops",
323 "#nixos",
324 "#nixos-aarch64",
325 "#nixos-chat",
326 "#nixos-dev",
327 "#nixos-fr",
328 "#nixos-gnome",
329 "#nixos-nur",
330 "#nixos-security",
331 "#nixos-systemd",
332 "#postfix",
333 "#purescript",
334 "#rezine",
335 "#spectrum",
336 "#stupidities",
337 "#tetaneutral.net",
338 "#zfs",
339 "#zfs-fr"
340 );
341 }
342 );
343 windows = {
344 1 = { immortal = "yes"; name = "(status)"; level = "ALL"; };
345 };
346