Browse Source

Tidying creation of irssi config

Bob Mottram 8 years ago
parent
commit
055af8d5c7
1 changed files with 79 additions and 121 deletions
  1. 79
    121
      src/freedombone-app-irc

+ 79
- 121
src/freedombone-app-irc View File

@@ -64,6 +64,83 @@ function stop_irc_bouncer {
64 64
     pkill znc
65 65
 }
66 66
 
67
+function create_irssi_config {
68
+    new_username="$1"
69
+
70
+    read_config_param IRC_BOUNCER_PORT
71
+    read_config_param IRC_ONION_PORT
72
+    read_config_param IRC_PASSWORD
73
+
74
+    new_name="$2"
75
+    if [ ${#new_name} -eq 0 ]; then
76
+        new_name="$new_username"
77
+    fi
78
+
79
+    echo 'servers = (' > /home/${new_username}/.irssi/config
80
+    echo '  {' >> /home/${new_username}/.irssi/config
81
+    echo '    address = "chat.freenode.net";' >> /home/${new_username}/.irssi/config
82
+    echo '    chatnet = "Freenode";' >> /home/${new_username}/.irssi/config
83
+    echo '    port = "6667";' >> /home/${new_username}/.irssi/config
84
+    echo '    autoconnect = "no";' >> /home/${new_username}/.irssi/config
85
+    echo '  },' >> /home/${new_username}/.irssi/config
86
+    echo '  {' >> /home/${new_username}/.irssi/config
87
+    echo '    address = "irc.oftc.net";' >> /home/${new_username}/.irssi/config
88
+    echo '    chatnet = "OFTC";' >> /home/${new_username}/.irssi/config
89
+    echo '    port = "6667";' >> /home/${new_username}/.irssi/config
90
+    echo '    autoconnect = "no";' >> /home/${new_username}/.irssi/config
91
+    echo '  },' >> /home/${new_username}/.irssi/config
92
+    echo '  {' >> /home/${new_username}/.irssi/config
93
+    echo "    address = \"127.0.0.1\";" >> /home/${new_username}/.irssi/config
94
+    echo '    use_ssl = "yes";' >> /home/${new_username}/.irssi/config
95
+    echo '    ssl_verify = "no";' >> /home/${new_username}/.irssi/config
96
+    if [[ ${ONION_ONLY} == 'no' ]]; then
97
+        echo "    port = \"${IRC_BOUNCER_PORT}\";" >> /home/${new_username}/.irssi/config
98
+    else
99
+        IRC_ONION_HOSTNAME=$(cat ${COMPLETION_FILE} | grep "irc onion domain" | head -n 1 | awk -F ':' '{print $2}')
100
+        echo "    port = \"${IRC_ONION_PORT}\";" >> /home/${new_username}/.irssi/config
101
+    fi
102
+    echo '    chatnet = "Freedombone";' >> /home/${new_username}/.irssi/config
103
+    echo '    autoconnect = "yes";' >> /home/${new_username}/.irssi/config
104
+    if [ ${IRC_PASSWORD} ]; then
105
+        echo "    password = \"${IRC_PASSWORD}\";" >> /home/${new_username}/.irssi/config
106
+    fi
107
+    echo '  }' >> /home/${new_username}/.irssi/config
108
+    echo ');' >> /home/${new_username}/.irssi/config
109
+    echo '' >> /home/${new_username}/.irssi/config
110
+    echo 'chatnets = {' >> /home/${new_username}/.irssi/config
111
+    echo '  Freedombone = {' >> /home/${new_username}/.irssi/config
112
+    echo '    type = "IRC";' >> /home/${new_username}/.irssi/config
113
+    echo '    max_kicks = "1";' >> /home/${new_username}/.irssi/config
114
+    echo '    max_msgs = "4";' >> /home/${new_username}/.irssi/config
115
+    echo '    max_whois = "1";' >> /home/${new_username}/.irssi/config
116
+    echo '  };' >> /home/${new_username}/.irssi/config
117
+    echo '  Freenode = {' >> /home/${new_username}/.irssi/config
118
+    echo '    type = "IRC";' >> /home/${new_username}/.irssi/config
119
+    echo '    max_kicks = "1";' >> /home/${new_username}/.irssi/config
120
+    echo '    max_msgs = "4";' >> /home/${new_username}/.irssi/config
121
+    echo '    max_whois = "1";' >> /home/${new_username}/.irssi/config
122
+    echo '  };' >> /home/${new_username}/.irssi/config
123
+    echo '  OFTC = {' >> /home/${new_username}/.irssi/config
124
+    echo '    type = "IRC";' >> /home/${new_username}/.irssi/config
125
+    echo '    max_kicks = "1";' >> /home/${new_username}/.irssi/config
126
+    echo '    max_msgs = "1";' >> /home/${new_username}/.irssi/config
127
+    echo '    max_whois = "1";' >> /home/${new_username}/.irssi/config
128
+    echo '  };' >> /home/${new_username}/.irssi/config
129
+    echo '};' >> /home/${new_username}/.irssi/config
130
+    echo '' >> /home/${new_username}/.irssi/config
131
+    echo 'channels = (' >> /home/${new_username}/.irssi/config
132
+    echo '  { name = "#freedombone"; chatnet = "Freedombone"; autojoin = "Yes"; },' >> /home/${new_username}/.irssi/config
133
+    echo ');' >> /home/${new_username}/.irssi/config
134
+    echo '' >> /home/${new_username}/.irssi/config
135
+    echo 'settings = {' >> /home/${new_username}/.irssi/config
136
+    echo "  core = { real_name = \"$new_name\"; user_name = \"$new_username\"; nick = \"$new_username\"; };" >> /home/${new_username}/.irssi/config
137
+    echo '  "fe-text" = { actlist_sort = "refnum"; };' >> /home/${new_username}/.irssi/config
138
+    echo '};' >> /home/${new_username}/.irssi/config
139
+    echo 'ignores = ( { level = "CTCPS"; } );' >> /home/${new_username}/.irssi/config
140
+
141
+    chown -R ${new_username}:${new_username} /home/${new_username}/.irssi
142
+}
143
+
67 144
 function remove_user_irc_bouncer {
68 145
     remove_username="$1"
69 146
 
@@ -198,63 +275,7 @@ function add_user_irc {
198 275
         mkdir /home/${new_username}/.irssi
199 276
     fi
200 277
 
201
-    echo 'servers = (' > /home/${new_username}/.irssi/config
202
-    echo '  {' >> /home/${new_username}/.irssi/config
203
-    echo '    address = "chat.freenode.net";' >> /home/${new_username}/.irssi/config
204
-    echo '    chatnet = "Freenode";' >> /home/${new_username}/.irssi/config
205
-    echo '    port = "6667";' >> /home/${new_username}/.irssi/config
206
-    echo '    autoconnect = "no";' >> /home/${new_username}/.irssi/config
207
-    echo '  },' >> /home/${new_username}/.irssi/config
208
-    echo '  {' >> /home/${new_username}/.irssi/config
209
-    echo '    address = "irc.oftc.net";' >> /home/${new_username}/.irssi/config
210
-    echo '    chatnet = "OFTC";' >> /home/${new_username}/.irssi/config
211
-    echo '    port = "6667";' >> /home/${new_username}/.irssi/config
212
-    echo '    autoconnect = "yes";' >> /home/${new_username}/.irssi/config
213
-    echo '  },' >> /home/${new_username}/.irssi/config
214
-    echo '  {' >> /home/${new_username}/.irssi/config
215
-    echo "    address = \"${HOSTNAME}\";" >> /home/${new_username}/.irssi/config
216
-    echo '    chatnet = "Freedombone";' >> /home/${new_username}/.irssi/config
217
-    echo "    port = \"${IRC_PORT}\";" >> /home/${new_username}/.irssi/config
218
-    echo '    use_ssl = "yes";' >> /home/${new_username}/.irssi/config
219
-    echo '    ssl_verify = "no";' >> /home/${new_username}/.irssi/config
220
-    echo '    autoconnect = "yes";' >> /home/${new_username}/.irssi/config
221
-
222
-    echo '  }' >> /home/${new_username}/.irssi/config
223
-    echo ');' >> /home/${new_username}/.irssi/config
224
-    echo '' >> /home/${new_username}/.irssi/config
225
-    echo 'chatnets = {' >> /home/${new_username}/.irssi/config
226
-    echo '  Freedombone = {' >> /home/${new_username}/.irssi/config
227
-    echo '    type = "IRC";' >> /home/${new_username}/.irssi/config
228
-    echo '    max_kicks = "1";' >> /home/${new_username}/.irssi/config
229
-    echo '    max_msgs = "4";' >> /home/${new_username}/.irssi/config
230
-    echo '    max_whois = "1";' >> /home/${new_username}/.irssi/config
231
-    echo '  };' >> /home/${new_username}/.irssi/config
232
-    echo '  Freenode = {' >> /home/${new_username}/.irssi/config
233
-    echo '    type = "IRC";' >> /home/${new_username}/.irssi/config
234
-    echo '    max_kicks = "1";' >> /home/${new_username}/.irssi/config
235
-    echo '    max_msgs = "4";' >> /home/${new_username}/.irssi/config
236
-    echo '    max_whois = "1";' >> /home/${new_username}/.irssi/config
237
-    echo '  };' >> /home/${new_username}/.irssi/config
238
-    echo '  OFTC = {' >> /home/${new_username}/.irssi/config
239
-    echo '    type = "IRC";' >> /home/${new_username}/.irssi/config
240
-    echo '    max_kicks = "1";' >> /home/${new_username}/.irssi/config
241
-    echo '    max_msgs = "1";' >> /home/${new_username}/.irssi/config
242
-    echo '    max_whois = "1";' >> /home/${new_username}/.irssi/config
243
-    echo '  };' >> /home/${new_username}/.irssi/config
244
-    echo '};' >> /home/${new_username}/.irssi/config
245
-    echo '' >> /home/${new_username}/.irssi/config
246
-    echo 'channels = (' >> /home/${new_username}/.irssi/config
247
-    echo '  { name = "#freedombone"; chatnet = "Freedombone"; autojoin = "Yes"; },' >> /home/${new_username}/.irssi/config
248
-    echo ');' >> /home/${new_username}/.irssi/config
249
-    echo '' >> /home/${new_username}/.irssi/config
250
-    echo 'settings = {' >> /home/${new_username}/.irssi/config
251
-    echo "  core = { real_name = \"$MY_NAME\"; user_name = \"$new_username\"; nick = \"$new_username\"; };" >> /home/${new_username}/.irssi/config
252
-    echo '  "fe-text" = { actlist_sort = "refnum"; };' >> /home/${new_username}/.irssi/config
253
-    echo '};' >> /home/$new_username/.irssi/config
254
-    echo 'ignores = ( { level = "CTCPS"; } );' >> /home/${new_username}/.irssi/config
255
-
256
-    chown -R ${new_username}:${new_username} /home/${new_username}/.irssi
257
-
278
+    create_irssi_config "${new_username}"
258 279
     add_user_irc_bouncer "${new_username}" "${IRC_PASSWORD}"
259 280
     echo '0'
260 281
 }
@@ -542,70 +563,7 @@ function install_irc_client {
542 563
         mkdir /home/${MY_USERNAME}/.irssi
543 564
     fi
544 565
 
545
-    echo 'servers = (' > /home/${MY_USERNAME}/.irssi/config
546
-    echo '  {' >> /home/${MY_USERNAME}/.irssi/config
547
-    echo '    address = "chat.freenode.net";' >> /home/${MY_USERNAME}/.irssi/config
548
-    echo '    chatnet = "Freenode";' >> /home/${MY_USERNAME}/.irssi/config
549
-    echo '    port = "6667";' >> /home/${MY_USERNAME}/.irssi/config
550
-    echo '    autoconnect = "no";' >> /home/${MY_USERNAME}/.irssi/config
551
-    echo '  },' >> /home/${MY_USERNAME}/.irssi/config
552
-    echo '  {' >> /home/${MY_USERNAME}/.irssi/config
553
-    echo '    address = "irc.oftc.net";' >> /home/${MY_USERNAME}/.irssi/config
554
-    echo '    chatnet = "OFTC";' >> /home/${MY_USERNAME}/.irssi/config
555
-    echo '    port = "6667";' >> /home/${MY_USERNAME}/.irssi/config
556
-    echo '    autoconnect = "no";' >> /home/${MY_USERNAME}/.irssi/config
557
-    echo '  },' >> /home/${MY_USERNAME}/.irssi/config
558
-    echo '  {' >> /home/${MY_USERNAME}/.irssi/config
559
-    echo "    address = \"127.0.0.1\";" >> /home/${MY_USERNAME}/.irssi/config
560
-    echo '    use_ssl = "yes";' >> /home/${MY_USERNAME}/.irssi/config
561
-    echo '    ssl_verify = "no";' >> /home/${MY_USERNAME}/.irssi/config
562
-    if [[ ${ONION_ONLY} == 'no' ]]; then
563
-        echo "    port = \"${IRC_BOUNCER_PORT}\";" >> /home/${MY_USERNAME}/.irssi/config
564
-    else
565
-        IRC_ONION_HOSTNAME=$(cat ${COMPLETION_FILE} | grep "irc onion domain" | head -n 1 | awk -F ':' '{print $2}')
566
-        echo "    port = \"${IRC_ONION_PORT}\";" >> /home/${MY_USERNAME}/.irssi/config
567
-    fi
568
-    echo '    chatnet = "Freedombone";' >> /home/${MY_USERNAME}/.irssi/config
569
-    echo '    autoconnect = "yes";' >> /home/${MY_USERNAME}/.irssi/config
570
-    if [ ${IRC_PASSWORD} ]; then
571
-        echo "    password = \"${IRC_PASSWORD}\";" >> /home/${MY_USERNAME}/.irssi/config
572
-    fi
573
-    echo '  }' >> /home/${MY_USERNAME}/.irssi/config
574
-    echo ');' >> /home/${MY_USERNAME}/.irssi/config
575
-    echo '' >> /home/${MY_USERNAME}/.irssi/config
576
-    echo 'chatnets = {' >> /home/${MY_USERNAME}/.irssi/config
577
-    echo '  Freedombone = {' >> /home/${MY_USERNAME}/.irssi/config
578
-    echo '    type = "IRC";' >> /home/${MY_USERNAME}/.irssi/config
579
-    echo '    max_kicks = "1";' >> /home/${MY_USERNAME}/.irssi/config
580
-    echo '    max_msgs = "4";' >> /home/${MY_USERNAME}/.irssi/config
581
-    echo '    max_whois = "1";' >> /home/${MY_USERNAME}/.irssi/config
582
-    echo '  };' >> /home/${MY_USERNAME}/.irssi/config
583
-    echo '  Freenode = {' >> /home/${MY_USERNAME}/.irssi/config
584
-    echo '    type = "IRC";' >> /home/${MY_USERNAME}/.irssi/config
585
-    echo '    max_kicks = "1";' >> /home/${MY_USERNAME}/.irssi/config
586
-    echo '    max_msgs = "4";' >> /home/${MY_USERNAME}/.irssi/config
587
-    echo '    max_whois = "1";' >> /home/${MY_USERNAME}/.irssi/config
588
-    echo '  };' >> /home/${MY_USERNAME}/.irssi/config
589
-    echo '  OFTC = {' >> /home/${MY_USERNAME}/.irssi/config
590
-    echo '    type = "IRC";' >> /home/${MY_USERNAME}/.irssi/config
591
-    echo '    max_kicks = "1";' >> /home/${MY_USERNAME}/.irssi/config
592
-    echo '    max_msgs = "1";' >> /home/${MY_USERNAME}/.irssi/config
593
-    echo '    max_whois = "1";' >> /home/${MY_USERNAME}/.irssi/config
594
-    echo '  };' >> /home/${MY_USERNAME}/.irssi/config
595
-    echo '};' >> /home/${MY_USERNAME}/.irssi/config
596
-    echo '' >> /home/${MY_USERNAME}/.irssi/config
597
-    echo 'channels = (' >> /home/${MY_USERNAME}/.irssi/config
598
-    echo '  { name = "#freedombone"; chatnet = "Freedombone"; autojoin = "Yes"; },' >> /home/${MY_USERNAME}/.irssi/config
599
-    echo ');' >> /home/${MY_USERNAME}/.irssi/config
600
-    echo '' >> /home/${MY_USERNAME}/.irssi/config
601
-    echo 'settings = {' >> /home/${MY_USERNAME}/.irssi/config
602
-    echo "  core = { real_name = \"$MY_NAME\"; user_name = \"$MY_USERNAME\"; nick = \"$MY_USERNAME\"; };" >> /home/${MY_USERNAME}/.irssi/config
603
-    echo '  "fe-text" = { actlist_sort = "refnum"; };' >> /home/${MY_USERNAME}/.irssi/config
604
-    echo '};' >> /home/${MY_USERNAME}/.irssi/config
605
-    echo 'ignores = ( { level = "CTCPS"; } );' >> /home/${MY_USERNAME}/.irssi/config
606
-
607
-    chown -R ${MY_USERNAME}:${MY_USERNAME} /home/${MY_USERNAME}/.irssi
608
-
566
+    create_irssi_config "${MY_USERNAME}" "$MY_NAME"
609 567
     install_completed irc_client
610 568
 }
611 569