Browse Source

first pass at renaming Oragono to Ergo

tags/v2.7.0-rc1
Shivaram Lingamneni 2 years ago
parent
commit
23c7218bf1
63 changed files with 253 additions and 262 deletions
  1. 1
    1
      .check-gofmt.sh
  2. 4
    4
      .gitignore
  3. 4
    4
      .goreleaser.yml
  4. 1
    1
      CHANGELOG.md
  5. 10
    21
      DEVELOPING.md
  6. 2
    2
      Makefile
  7. 10
    10
      README
  8. 25
    26
      default.yaml
  9. 18
    17
      ergo.go
  10. 0
    0
      ergo.motd
  11. 1
    1
      go.mod
  12. 6
    6
      irc/accounts.go
  13. 1
    1
      irc/authscript.go
  14. 1
    1
      irc/caps/set.go
  15. 4
    4
      irc/channel.go
  16. 1
    1
      irc/channelmanager.go
  17. 2
    2
      irc/channelreg.go
  18. 3
    3
      irc/chanserv.go
  19. 7
    7
      irc/client.go
  20. 3
    3
      irc/client_lookup_set.go
  21. 1
    1
      irc/client_test.go
  22. 1
    1
      irc/cloaks/cloaks.go
  23. 18
    15
      irc/config.go
  24. 3
    3
      irc/config_test.go
  25. 2
    2
      irc/connection_limits/limiter.go
  26. 1
    1
      irc/connection_limits/limiter_test.go
  27. 2
    2
      irc/database.go
  28. 1
    1
      irc/dline.go
  29. 1
    1
      irc/email/email.go
  30. 1
    1
      irc/errors.go
  31. 3
    3
      irc/gateways.go
  32. 4
    4
      irc/getters.go
  33. 13
    13
      irc/handlers.go
  34. 8
    8
      irc/help.go
  35. 1
    1
      irc/history/history.go
  36. 3
    3
      irc/histserv.go
  37. 1
    1
      irc/hostserv.go
  38. 1
    1
      irc/import.go
  39. 1
    1
      irc/ircconn.go
  40. 1
    1
      irc/kline.go
  41. 1
    1
      irc/listeners.go
  42. 2
    2
      irc/message_cache.go
  43. 3
    3
      irc/modes.go
  44. 1
    1
      irc/modes/modes.go
  45. 1
    1
      irc/modes_test.go
  46. 3
    3
      irc/mysql/history.go
  47. 2
    2
      irc/mysql/serialization.go
  48. 4
    4
      irc/nickname.go
  49. 4
    4
      irc/nickserv.go
  50. 2
    2
      irc/responsebuffer.go
  51. 3
    3
      irc/roleplay.go
  52. 1
    1
      irc/semaphores.go
  53. 13
    13
      irc/server.go
  54. 1
    1
      irc/services.go
  55. 1
    1
      irc/snomanager.go
  56. 1
    1
      irc/socket.go
  57. 1
    1
      irc/strings.go
  58. 1
    1
      irc/types.go
  59. 4
    4
      irc/uban.go
  60. 1
    1
      irc/usermaskset.go
  61. 5
    5
      irc/version.go
  62. 2
    2
      irc/znc.go
  63. 25
    26
      traditional.yaml

+ 1
- 1
.check-gofmt.sh View File

@@ -1,7 +1,7 @@
1 1
 #!/bin/bash
2 2
 
3 3
 # exclude vendor/
4
-SOURCES="./oragono.go ./irc"
4
+SOURCES="./ergo.go ./irc"
5 5
 
6 6
 if [ "$1" = "--fix" ]; then
7 7
 	exec gofmt -s -w $SOURCES

+ 4
- 4
.gitignore View File

@@ -95,7 +95,7 @@ _testmain.go
95 95
 *.out
96 96
 
97 97
 
98
-### Oragono ###
98
+### custom ###
99 99
 /_site/
100 100
 /.vscode/*
101 101
 /ircd*
@@ -103,10 +103,10 @@ _testmain.go
103 103
 /web.*
104 104
 /ssl.*
105 105
 /tls.*
106
-/oragono
106
+/ergo
107 107
 /build/*
108 108
 _test
109
-oragono.prof
110
-oragono.mprof
109
+ergo.prof
110
+ergo.mprof
111 111
 /dist
112 112
 *.pem

+ 4
- 4
.goreleaser.yml View File

@@ -1,9 +1,9 @@
1 1
 # .goreleaser.yml
2 2
 # Build customization
3
-project_name: oragono
3
+project_name: ergo
4 4
 builds:
5
-  - main: oragono.go
6
-    binary: oragono
5
+  - main: ergo.go
6
+    binary: ergo
7 7
     goos:
8 8
       - freebsd
9 9
       - windows
@@ -44,7 +44,7 @@ archives:
44 44
     files:
45 45
       - README
46 46
       - CHANGELOG.md
47
-      - oragono.motd
47
+      - ergo.motd
48 48
       - default.yaml
49 49
       - traditional.yaml
50 50
       - docs/MANUAL.md

+ 1
- 1
CHANGELOG.md View File

@@ -1,5 +1,5 @@
1 1
 # Changelog
2
-All notable changes to Oragono will be documented in this file.
2
+All notable changes to Ergo will be documented in this file.
3 3
 
4 4
 ## [2.6.1] - 2021-04-26
5 5
 

+ 10
- 21
DEVELOPING.md View File

@@ -1,18 +1,18 @@
1
-# Developing Oragono
1
+# Developing Ergo
2 2
 
3
-This is a guide to modifying Oragono's code. If you're just trying to run your own Oragono, or use one, you shouldn't need to worry about these issues.
3
+This is a guide to modifying Ergo's code. If you're just trying to run your own Ergo, or use one, you shouldn't need to worry about these issues.
4 4
 
5 5
 
6 6
 ## Golang issues
7 7
 
8 8
 You should use the [latest distribution of the Go language for your OS and architecture](https://golang.org/dl/). (If `uname -m` on your Raspberry Pi reports `armv7l`, use the `armv6l` distribution of Go; if it reports v8, you may be able to use the `arm64` distribution.)
9 9
 
10
-Oragono vendors all its dependencies. Because of this, Oragono is self-contained and you should not need to fetch any dependencies with `go get`. Doing so is not recommended, since it may fetch incompatible versions of the dependencies.
10
+Ergo vendors all its dependencies. Because of this, Ergo is self-contained and you should not need to fetch any dependencies with `go get`. Doing so is not recommended, since it may fetch incompatible versions of the dependencies.
11 11
 
12
-If you're upgrading the Go version used by Oragono, there are several places where it's hard-coded and must be changed:
12
+If you're upgrading the Go version used by Ergo, there are several places where it's hard-coded and must be changed:
13 13
 
14 14
 1. `.travis.yml`, which controls the version that our CI test suite uses to build and test the code (e.g., for a PR)
15
-2. `Dockerfile`, which controls the version that the Oragono binaries in our Docker images are built with
15
+2. `Dockerfile`, which controls the version that the Ergo binaries in our Docker images are built with
16 16
 3. `go.mod`: this should be updated automatically by Go when you do module-related operations
17 17
 
18 18
 
@@ -40,7 +40,7 @@ Develop branches are either used to work out implementation details in preperati
40 40
 1. Publish the release on GitHub (Releases -> "Draft a new release"); use the new tag, post the changelog entries, upload the binaries
41 41
 1. Update the `irctest_stable` branch with the new changes (this may be a force push).
42 42
 1. If it's a production release (as opposed to a release candidate), update the `stable` branch with the new changes. (This may be a force push in the event that stable contained a backport. This is fine because all stable releases and release candidates are tagged.)
43
-1. Similarly, for a production release, update the `irctest_stable` branch (this is the branch used by upstream irctest to integration-test against Oragono).
43
+1. Similarly, for a production release, update the `irctest_stable` branch (this is the branch used by upstream irctest to integration-test against Ergo).
44 44
 1. Make the appropriate announcements:
45 45
     * For a release candidate:
46 46
         1. the channel topic
@@ -49,7 +49,7 @@ Develop branches are either used to work out implementation details in preperati
49 49
     * For a production release:
50 50
         1. everything applicable to a release candidate
51 51
         1. Twitter
52
-        1. oragono.io/news
52
+        1. ergo.chat/news
53 53
         1. ircv3.net support tables, if applicable
54 54
         1. other social media?
55 55
 
@@ -63,7 +63,7 @@ Once it's built and released, you need to setup the new development version. To
63 63
 
64 64
 ```md
65 65
 ## Unreleased
66
-New release of Oragono!
66
+New release of Ergo!
67 67
 
68 68
 ### Config Changes
69 69
 
@@ -80,17 +80,6 @@ New release of Oragono!
80 80
 
81 81
 
82 82
 
83
-## Fuzzing and Testing
84
-
85
-Fuzzing can be useful. We don't have testing done inside the IRCd itself, but this fuzzer I've written works alright and has helped shake out various bugs: [irc_fuzz.py](https://gist.github.com/DanielOaks/63ae611039cdf591dfa4).
86
-
87
-In addition, I've got the beginnings of a stress-tester here which is useful:
88
-https://github.com/DanielOaks/irc-stress-test
89
-
90
-As well, there's a decent set of 'tests' here, which I like to run Oragono through now and then:
91
-https://github.com/DanielOaks/irctest
92
-
93
-
94 83
 ## Debugging
95 84
 
96 85
 It's helpful to enable all loglines while developing. Here's how to configure this:
@@ -107,12 +96,12 @@ To debug a hang, the best thing to do is to get a stack trace. The easiest way t
107 96
 
108 97
     $ kill -ABRT <procid>
109 98
 
110
-This will kill Oragono and print out a stack trace for you to take a look at.
99
+This will kill Ergo and print out a stack trace for you to take a look at.
111 100
 
112 101
 
113 102
 ## Concurrency design
114 103
 
115
-Oragono involves a fair amount of shared state. Here are some of the main points:
104
+Ergo involves a fair amount of shared state. Here are some of the main points:
116 105
 
117 106
 1. Each client has a separate goroutine that listens for incoming messages and synchronously processes them.
118 107
 1. All sends to clients are asynchronous; `client.Send` appends the message to a queue, which is then processed on a separate goroutine. It is always safe to call `client.Send`.

+ 2
- 2
Makefile View File

@@ -37,8 +37,8 @@ test:
37 37
 	./.check-gofmt.sh
38 38
 
39 39
 smoke:
40
-	oragono mkcerts --conf ./default.yaml || true
41
-	oragono run --conf ./default.yaml --smoke
40
+	ergo mkcerts --conf ./default.yaml || true
41
+	ergo run --conf ./default.yaml --smoke
42 42
 
43 43
 gofmt:
44 44
 	./.check-gofmt.sh --fix

+ 10
- 10
README View File

@@ -7,7 +7,7 @@
7 7
 
8 8
 -----------------------------------------------------------------------------------------------
9 9
 
10
-Oragono is a modern IRC server written in Go. Its core design principles are:
10
+Ergo is a modern IRC server written in Go. Its core design principles are:
11 11
 
12 12
 * Being simple to set up and use
13 13
 * Combining the features of an ircd, a services framework, and a bouncer:
@@ -17,9 +17,9 @@ Oragono is a modern IRC server written in Go. Its core design principles are:
17 17
 * Bleeding-edge IRCv3 support
18 18
 * Highly customizable via a rehashable (runtime-reloadable) YAML config
19 19
 
20
-                                     https://oragono.io/
21
-                              https://github.com/oragono/oragono
22
-                                     #oragono on Freenode
20
+                                     https://ergo.chat/
21
+                              https://github.com/ergochat/ergo
22
+                          #ergo on irc.ergo.chat or irc.libera.chat
23 23
 
24 24
 -----------------------------------------------------------------------------------------------
25 25
 
@@ -34,23 +34,23 @@ Modify the config file as needed (the recommendations at the top may be helpful)
34 34
 
35 35
 To generate passwords for opers and connect passwords, you can use this command:
36 36
 
37
-    $ oragono genpasswd
37
+    $ ergo genpasswd
38 38
 
39 39
 If you need to generate self-signed TLS certificates, use this command:
40 40
 
41
-    $ oragono mkcerts
41
+    $ ergo mkcerts
42 42
 
43
-You are now ready to start Oragono!
43
+You are now ready to start Ergo!
44 44
 
45
-    $ oragono run
45
+    $ ergo run
46 46
 
47 47
 For further instructions, consult the manual. A copy of the manual should be
48 48
 included in your release under `docs/MANUAL.md`. Or you can view it on the
49
-Web: https://oragono.io/manual.html
49
+Web: https://ergo.chat/manual.html
50 50
 
51 51
 === Updating ===
52 52
 
53
-If you're updating from a previous version of Oragono, check out the CHANGELOG for a list
53
+If you're updating from a previous version of Ergo, check out the CHANGELOG for a list
54 54
 of important changes you'll want to take a look at. The change log details config changes,
55 55
 fixes, new features and anything else you'll want to be aware of!
56 56
 

+ 25
- 26
default.yaml View File

@@ -1,9 +1,9 @@
1
-# This is the default config file for Oragono.
1
+# This is the default config file for Ergo.
2 2
 # It contains recommended defaults for all settings, including some behaviors
3 3
 # that differ from conventional ircd+services setups. See traditional.yaml
4 4
 # for a config with more "mainstream" behavior.
5 5
 #
6
-# If you are setting up a new oragono server, you should copy this file
6
+# If you are setting up a new Ergo server, you should copy this file
7 7
 # to a new one named 'ircd.yaml', then read the whole file to see which
8 8
 # settings you want to customize. If you don't understand a setting, or
9 9
 # aren't sure what behavior you want, most of the defaults are fine
@@ -25,12 +25,12 @@
25 25
 # network configuration
26 26
 network:
27 27
     # name of the network
28
-    name: OragonoTest
28
+    name: ErgoTest
29 29
 
30 30
 # server configuration
31 31
 server:
32 32
     # server name
33
-    name: oragono.test
33
+    name: ergo.test
34 34
 
35 35
     # addresses to listen on
36 36
     listeners:
@@ -62,12 +62,12 @@ server:
62 62
             min-tls-version: 1.2
63 63
 
64 64
         # Example of a Unix domain socket for proxying:
65
-        # "/tmp/oragono_sock":
65
+        # "/tmp/ergo_sock":
66 66
 
67 67
         # Example of a Tor listener: any connection that comes in on this listener will
68 68
         # be considered a Tor connection. It is strongly recommended that this listener
69 69
         # *not* be on a public interface --- it should be on 127.0.0.0/8 or unix domain:
70
-        # "/hidden_service_sockets/oragono_tor_sock":
70
+        # "/hidden_service_sockets/ergo_tor_sock":
71 71
         #     tor: true
72 72
 
73 73
         # Example of a WebSocket listener:
@@ -120,14 +120,14 @@ server:
120 120
 
121 121
     websockets:
122 122
         # Restrict the origin of WebSocket connections by matching the "Origin" HTTP
123
-        # header. This setting causes oragono to reject websocket connections unless
123
+        # header. This setting causes ergo to reject websocket connections unless
124 124
         # they originate from a page on one of the whitelisted websites in this list.
125 125
         # This prevents malicious websites from making their visitors connect to your
126
-        # oragono instance without their knowledge. An empty list means there are no
126
+        # ergo instance without their knowledge. An empty list means there are no
127 127
         # restrictions.
128 128
         allowed-origins:
129
-            # - "https://oragono.io"
130
-            # - "https://*.oragono.io"
129
+            # - "https://ergo.chat"
130
+            # - "https://*.ergo.chat"
131 131
 
132 132
     # casemapping controls what kinds of strings are permitted as identifiers (nicknames,
133 133
     # channel names, account names, etc.), and how they are normalized for case.
@@ -164,13 +164,12 @@ server:
164 164
     # the value must begin with a '~' character. comment out / omit to disable:
165 165
     coerce-ident: '~u'
166 166
 
167
-    # password to login to the server
168
-    # generated using  "oragono genpasswd"
169
-    #password: ""
167
+    # password to login to the server, generated using `ergo genpasswd`:
168
+    #password: "$2a$04$0123456789abcdef0123456789abcdef0123456789abcdef01234"
170 169
 
171 170
     # motd filename
172 171
     # if you change the motd, you should move it to ircd.motd
173
-    motd: oragono.motd
172
+    motd: ergo.motd
174 173
 
175 174
     # motd formatting codes
176 175
     # if this is true, the motd is escaped using formatting codes like $c, $b, and $i
@@ -206,7 +205,7 @@ server:
206 205
             # (comment this out to use passwords only)
207 206
             certfp: "abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789"
208 207
 
209
-            # password the gateway uses to connect, made with oragono genpasswd
208
+            # password the gateway uses to connect, made with `ergo genpasswd`
210 209
             password: "$2a$04$abcdef0123456789abcdef0123456789abcdef0123456789abcde"
211 210
 
212 211
             # IPs/CIDRs that can use this webirc command
@@ -228,7 +227,7 @@ server:
228 227
     compatibility:
229 228
         # many clients require that the final parameter of certain messages be an
230 229
         # RFC1459 trailing parameter, i.e., prefixed with :, whether or not this is
231
-        # actually required. this forces Oragono to send those parameters
230
+        # actually required. this forces Ergo to send those parameters
232 231
         # as trailings. this is recommended unless you're testing clients for conformance;
233 232
         # defaults to true when unset for that reason.
234 233
         force-trailing: true
@@ -241,7 +240,7 @@ server:
241 240
 
242 241
         # traditionally, IRC servers will truncate and send messages that are
243 242
         # too long to be relayed intact. this behavior can be disabled by setting
244
-        # allow-truncation to false, in which case Oragono will reject the message
243
+        # allow-truncation to false, in which case Ergo will reject the message
245 244
         # and return an error to the client. (note that this option defaults to true
246 245
         # when unset.)
247 246
         allow-truncation: false
@@ -309,7 +308,7 @@ server:
309 308
     # IP cloaking hides users' IP addresses from other users and from channel admins
310 309
     # (but not from server admins), while still allowing channel admins to ban
311 310
     # offending IP addresses or networks. In place of hostnames derived from reverse
312
-    # DNS, users see fake domain names like pwbs2ui4377257x8.oragono. These names are
311
+    # DNS, users see fake domain names like pwbs2ui4377257x8.irc. These names are
313 312
     # generated deterministically from the underlying IP address, but if the underlying
314 313
     # IP is not already known, it is infeasible to recover it from the cloaked name.
315 314
     # If you disable this, you should probably enable lookup-hostnames in its place.
@@ -351,10 +350,10 @@ server:
351 350
     secure-nets:
352 351
         # - "10.0.0.0/8"
353 352
 
354
-    # oragono will write files to disk under certain circumstances, e.g.,
353
+    # Ergo will write files to disk under certain circumstances, e.g.,
355 354
     # CPU profiling or data export. by default, these files will be written
356 355
     # to the working directory. set this to customize:
357
-    #output-path: "/home/oragono/out"
356
+    #output-path: "/home/ergo/out"
358 357
 
359 358
     # the hostname used by "services", e.g., NickServ, defaults to "localhost",
360 359
     # e.g., `NickServ!NickServ@localhost`. uncomment this to override:
@@ -497,7 +496,7 @@ accounts:
497 496
         # nickname after the initial connection is complete
498 497
         forbid-anonymous-nick-changes: false
499 498
 
500
-    # multiclient controls whether oragono allows multiple connections to
499
+    # multiclient controls whether Ergo allows multiple connections to
501 500
     # attach to the same client/nickname identity; this is part of the
502 501
     # functionality traditionally provided by a bouncer like ZNC
503 502
     multiclient:
@@ -658,7 +657,7 @@ opers:
658 657
         # operators can be authenticated either by password (with the /OPER command),
659 658
         # or by certificate fingerprint, or both. if a password hash is set, then a
660 659
         # password is required to oper up (e.g., /OPER dan mypassword). to generate
661
-        # the hash, use `oragono genpasswd`.
660
+        # the hash, use `ergo genpasswd`.
662 661
         password: "$2a$04$0123456789abcdef0123456789abcdef0123456789abcdef01234"
663 662
 
664 663
         # if a SHA-256 certificate fingerprint is configured here, then it will be
@@ -718,7 +717,7 @@ logging:
718 717
 
719 718
 # debug options
720 719
 debug:
721
-    # when enabled, oragono will attempt to recover from certain kinds of
720
+    # when enabled, Ergo will attempt to recover from certain kinds of
722 721
     # client-triggered runtime errors that would normally crash the server.
723 722
     # this makes the server more resilient to DoS, but could result in incorrect
724 723
     # behavior. deployments that would prefer to "start from scratch", e.g., by
@@ -749,9 +748,9 @@ datastore:
749 748
         port: 3306
750 749
         # if socket-path is set, it will be used instead of host:port
751 750
         #socket-path: "/var/run/mysqld/mysqld.sock"
752
-        user: "oragono"
751
+        user: "ergo"
753 752
         password: "hunter2"
754
-        history-database: "oragono_history"
753
+        history-database: "ergo_history"
755 754
         timeout: 3s
756 755
         max-conns: 4
757 756
         # this may be necessary to prevent middleware from closing your connections:
@@ -965,5 +964,5 @@ history:
965 964
         #    - "typing"
966 965
 
967 966
 # whether to allow customization of the config at runtime using environment variables,
968
-# e.g., ORAGONO__SERVER__MAX_SENDQ=128k. see the manual for more details.
967
+# e.g., ERGO__SERVER__MAX_SENDQ=128k. see the manual for more details.
969 968
 allow-environment-overrides: true

oragono.go → ergo.go View File

@@ -13,12 +13,13 @@ import (
13 13
 	"strings"
14 14
 	"syscall"
15 15
 
16
-	"github.com/docopt/docopt-go"
17
-	"github.com/oragono/oragono/irc"
18
-	"github.com/oragono/oragono/irc/logger"
19
-	"github.com/oragono/oragono/irc/mkcerts"
20 16
 	"golang.org/x/crypto/bcrypt"
21 17
 	"golang.org/x/crypto/ssh/terminal"
18
+
19
+	"github.com/docopt/docopt-go"
20
+	"github.com/ergochat/ergo/irc"
21
+	"github.com/ergochat/ergo/irc/logger"
22
+	"github.com/ergochat/ergo/irc/mkcerts"
22 23
 )
23 24
 
24 25
 // set via linker flags, either by make or by goreleaser:
@@ -47,7 +48,7 @@ func fileDoesNotExist(file string) bool {
47 48
 	return false
48 49
 }
49 50
 
50
-// implements the `oragono mkcerts` command
51
+// implements the `ergo mkcerts` command
51 52
 func doMkcerts(configFile string, quiet bool) {
52 53
 	config, err := irc.LoadRawConfig(configFile)
53 54
 	if err != nil {
@@ -78,7 +79,7 @@ func doMkcerts(configFile string, quiet bool) {
78 79
 		if !(fileDoesNotExist(cert) && fileDoesNotExist(key)) {
79 80
 			log.Fatalf("Preexisting TLS cert and/or key files: %s %s", cert, key)
80 81
 		}
81
-		err := mkcerts.CreateCert("Oragono", host, cert, key)
82
+		err := mkcerts.CreateCert("Ergo", host, cert, key)
82 83
 		if err == nil {
83 84
 			if !quiet {
84 85
 				log.Printf("  Certificate created at %s : %s\n", cert, key)
@@ -92,16 +93,16 @@ func doMkcerts(configFile string, quiet bool) {
92 93
 
93 94
 func main() {
94 95
 	irc.SetVersionString(version, commit)
95
-	usage := `oragono.
96
+	usage := `ergo.
96 97
 Usage:
97
-	oragono initdb [--conf <filename>] [--quiet]
98
-	oragono upgradedb [--conf <filename>] [--quiet]
99
-	oragono importdb <database.json> [--conf <filename>] [--quiet]
100
-	oragono genpasswd [--conf <filename>] [--quiet]
101
-	oragono mkcerts [--conf <filename>] [--quiet]
102
-	oragono run [--conf <filename>] [--quiet] [--smoke]
103
-	oragono -h | --help
104
-	oragono --version
98
+	ergo initdb [--conf <filename>] [--quiet]
99
+	ergo upgradedb [--conf <filename>] [--quiet]
100
+	ergo importdb <database.json> [--conf <filename>] [--quiet]
101
+	ergo genpasswd [--conf <filename>] [--quiet]
102
+	ergo mkcerts [--conf <filename>] [--quiet]
103
+	ergo run [--conf <filename>] [--quiet] [--smoke]
104
+	ergo -h | --help
105
+	ergo --version
105 106
 Options:
106 107
 	--conf <filename>  Configuration file to use [default: ircd.yaml].
107 108
 	--quiet            Don't show startup/shutdown lines.
@@ -183,7 +184,7 @@ Options:
183 184
 
184 185
 		// warning if running a non-final version
185 186
 		if strings.Contains(irc.Ver, "unreleased") {
186
-			logman.Warning("server", "You are currently running an unreleased beta version of Oragono that may be unstable and could corrupt your database.\nIf you are running a production network, please download the latest build from https://oragono.io/downloads.html and run that instead.")
187
+			logman.Warning("server", "You are currently running an unreleased beta version of Ergo that may be unstable and could corrupt your database.\nIf you are running a production network, please download the latest build from https://ergo.chat/downloads.html and run that instead.")
187 188
 		}
188 189
 
189 190
 		server, err := irc.NewServer(config, logman)
@@ -193,7 +194,7 @@ Options:
193 194
 		}
194 195
 		if !arguments["--quiet"].(bool) {
195 196
 			logman.Info("server", "Server running")
196
-			defer logman.Info("server", fmt.Sprintf("Oragono v%s exiting", irc.SemVer))
197
+			defer logman.Info("server", fmt.Sprintf("%s exiting", irc.Ver))
197 198
 		}
198 199
 		if !arguments["--smoke"].(bool) {
199 200
 			server.Run()

oragono.motd → ergo.motd View File


+ 1
- 1
go.mod View File

@@ -1,4 +1,4 @@
1
-module github.com/oragono/oragono
1
+module github.com/ergochat/ergo
2 2
 
3 3
 go 1.16
4 4
 

+ 6
- 6
irc/accounts.go View File

@@ -15,12 +15,12 @@ import (
15 15
 	"time"
16 16
 	"unicode"
17 17
 
18
-	"github.com/oragono/oragono/irc/connection_limits"
19
-	"github.com/oragono/oragono/irc/email"
20
-	"github.com/oragono/oragono/irc/migrations"
21
-	"github.com/oragono/oragono/irc/modes"
22
-	"github.com/oragono/oragono/irc/passwd"
23
-	"github.com/oragono/oragono/irc/utils"
18
+	"github.com/ergochat/ergo/irc/connection_limits"
19
+	"github.com/ergochat/ergo/irc/email"
20
+	"github.com/ergochat/ergo/irc/migrations"
21
+	"github.com/ergochat/ergo/irc/modes"
22
+	"github.com/ergochat/ergo/irc/passwd"
23
+	"github.com/ergochat/ergo/irc/utils"
24 24
 	"github.com/tidwall/buntdb"
25 25
 )
26 26
 

+ 1
- 1
irc/authscript.go View File

@@ -10,7 +10,7 @@ import (
10 10
 	"fmt"
11 11
 	"net"
12 12
 
13
-	"github.com/oragono/oragono/irc/utils"
13
+	"github.com/ergochat/ergo/irc/utils"
14 14
 )
15 15
 
16 16
 // JSON-serializable input and output types for the script

+ 1
- 1
irc/caps/set.go View File

@@ -5,7 +5,7 @@ package caps
5 5
 
6 6
 import (
7 7
 	"fmt"
8
-	"github.com/oragono/oragono/irc/utils"
8
+	"github.com/ergochat/ergo/irc/utils"
9 9
 )
10 10
 
11 11
 // Set holds a set of enabled capabilities.

+ 4
- 4
irc/channel.go View File

@@ -15,10 +15,10 @@ import (
15 15
 
16 16
 	"github.com/goshuirc/irc-go/ircutils"
17 17
 
18
-	"github.com/oragono/oragono/irc/caps"
19
-	"github.com/oragono/oragono/irc/history"
20
-	"github.com/oragono/oragono/irc/modes"
21
-	"github.com/oragono/oragono/irc/utils"
18
+	"github.com/ergochat/ergo/irc/caps"
19
+	"github.com/ergochat/ergo/irc/history"
20
+	"github.com/ergochat/ergo/irc/modes"
21
+	"github.com/ergochat/ergo/irc/utils"
22 22
 )
23 23
 
24 24
 type ChannelSettings struct {

+ 1
- 1
irc/channelmanager.go View File

@@ -7,7 +7,7 @@ import (
7 7
 	"sort"
8 8
 	"sync"
9 9
 
10
-	"github.com/oragono/oragono/irc/utils"
10
+	"github.com/ergochat/ergo/irc/utils"
11 11
 )
12 12
 
13 13
 type channelManagerEntry struct {

+ 2
- 2
irc/channelreg.go View File

@@ -12,8 +12,8 @@ import (
12 12
 
13 13
 	"github.com/tidwall/buntdb"
14 14
 
15
-	"github.com/oragono/oragono/irc/modes"
16
-	"github.com/oragono/oragono/irc/utils"
15
+	"github.com/ergochat/ergo/irc/modes"
16
+	"github.com/ergochat/ergo/irc/utils"
17 17
 )
18 18
 
19 19
 // this is exclusively the *persistence* layer for channel registration;

+ 3
- 3
irc/chanserv.go View File

@@ -10,10 +10,10 @@ import (
10 10
 	"strings"
11 11
 	"time"
12 12
 
13
+	"github.com/ergochat/ergo/irc/modes"
14
+	"github.com/ergochat/ergo/irc/sno"
15
+	"github.com/ergochat/ergo/irc/utils"
13 16
 	"github.com/goshuirc/irc-go/ircfmt"
14
-	"github.com/oragono/oragono/irc/modes"
15
-	"github.com/oragono/oragono/irc/sno"
16
-	"github.com/oragono/oragono/irc/utils"
17 17
 )
18 18
 
19 19
 const chanservHelp = `ChanServ lets you register and manage channels.`

+ 7
- 7
irc/client.go View File

@@ -21,13 +21,13 @@ import (
21 21
 	"github.com/goshuirc/irc-go/ircreader"
22 22
 	ident "github.com/oragono/go-ident"
23 23
 
24
-	"github.com/oragono/oragono/irc/caps"
25
-	"github.com/oragono/oragono/irc/connection_limits"
26
-	"github.com/oragono/oragono/irc/flatip"
27
-	"github.com/oragono/oragono/irc/history"
28
-	"github.com/oragono/oragono/irc/modes"
29
-	"github.com/oragono/oragono/irc/sno"
30
-	"github.com/oragono/oragono/irc/utils"
24
+	"github.com/ergochat/ergo/irc/caps"
25
+	"github.com/ergochat/ergo/irc/connection_limits"
26
+	"github.com/ergochat/ergo/irc/flatip"
27
+	"github.com/ergochat/ergo/irc/history"
28
+	"github.com/ergochat/ergo/irc/modes"
29
+	"github.com/ergochat/ergo/irc/sno"
30
+	"github.com/ergochat/ergo/irc/utils"
31 31
 )
32 32
 
33 33
 const (

+ 3
- 3
irc/client_lookup_set.go View File

@@ -8,9 +8,9 @@ import (
8 8
 	"strings"
9 9
 	"sync"
10 10
 
11
-	"github.com/oragono/oragono/irc/caps"
12
-	"github.com/oragono/oragono/irc/modes"
13
-	"github.com/oragono/oragono/irc/utils"
11
+	"github.com/ergochat/ergo/irc/caps"
12
+	"github.com/ergochat/ergo/irc/modes"
13
+	"github.com/ergochat/ergo/irc/utils"
14 14
 )
15 15
 
16 16
 // ClientManager keeps track of clients by nick, enforcing uniqueness of casefolded nicks

+ 1
- 1
irc/client_test.go View File

@@ -6,7 +6,7 @@ package irc
6 6
 import (
7 7
 	"testing"
8 8
 
9
-	"github.com/oragono/oragono/irc/utils"
9
+	"github.com/ergochat/ergo/irc/utils"
10 10
 )
11 11
 
12 12
 func TestGenerateBatchID(t *testing.T) {

+ 1
- 1
irc/cloaks/cloaks.go View File

@@ -8,7 +8,7 @@ import (
8 8
 
9 9
 	"golang.org/x/crypto/sha3"
10 10
 
11
-	"github.com/oragono/oragono/irc/utils"
11
+	"github.com/ergochat/ergo/irc/utils"
12 12
 )
13 13
 
14 14
 type CloakConfig struct {

+ 18
- 15
irc/config.go View File

@@ -27,19 +27,19 @@ import (
27 27
 	"github.com/goshuirc/irc-go/ircfmt"
28 28
 	"gopkg.in/yaml.v2"
29 29
 
30
-	"github.com/oragono/oragono/irc/caps"
31
-	"github.com/oragono/oragono/irc/cloaks"
32
-	"github.com/oragono/oragono/irc/connection_limits"
33
-	"github.com/oragono/oragono/irc/custime"
34
-	"github.com/oragono/oragono/irc/email"
35
-	"github.com/oragono/oragono/irc/isupport"
36
-	"github.com/oragono/oragono/irc/jwt"
37
-	"github.com/oragono/oragono/irc/languages"
38
-	"github.com/oragono/oragono/irc/logger"
39
-	"github.com/oragono/oragono/irc/modes"
40
-	"github.com/oragono/oragono/irc/mysql"
41
-	"github.com/oragono/oragono/irc/passwd"
42
-	"github.com/oragono/oragono/irc/utils"
30
+	"github.com/ergochat/ergo/irc/caps"
31
+	"github.com/ergochat/ergo/irc/cloaks"
32
+	"github.com/ergochat/ergo/irc/connection_limits"
33
+	"github.com/ergochat/ergo/irc/custime"
34
+	"github.com/ergochat/ergo/irc/email"
35
+	"github.com/ergochat/ergo/irc/isupport"
36
+	"github.com/ergochat/ergo/irc/jwt"
37
+	"github.com/ergochat/ergo/irc/languages"
38
+	"github.com/ergochat/ergo/irc/logger"
39
+	"github.com/ergochat/ergo/irc/modes"
40
+	"github.com/ergochat/ergo/irc/mysql"
41
+	"github.com/ergochat/ergo/irc/passwd"
42
+	"github.com/ergochat/ergo/irc/utils"
43 43
 )
44 44
 
45 45
 // here's how this works: exported (capitalized) members of the config structs
@@ -1025,10 +1025,13 @@ func (ce *configPathError) Error() string {
1025 1025
 func mungeFromEnvironment(config *Config, envPair string) (applied bool, err *configPathError) {
1026 1026
 	equalIdx := strings.IndexByte(envPair, '=')
1027 1027
 	name, value := envPair[:equalIdx], envPair[equalIdx+1:]
1028
-	if !strings.HasPrefix(name, "ORAGONO__") {
1028
+	if strings.HasPrefix(name, "ERGO__") {
1029
+		name = strings.TrimPrefix(name, "ERGO__")
1030
+	} else if strings.HasPrefix(name, "ORAGONO__") {
1031
+		name = strings.TrimPrefix(name, "ORAGONO__")
1032
+	} else {
1029 1033
 		return false, nil
1030 1034
 	}
1031
-	name = strings.TrimPrefix(name, "ORAGONO__")
1032 1035
 	pathComponents := strings.Split(name, "__")
1033 1036
 	for i, pathComponent := range pathComponents {
1034 1037
 		pathComponents[i] = screamingSnakeToKebab(pathComponent)

+ 3
- 3
irc/config_test.go View File

@@ -19,12 +19,12 @@ func TestEnvironmentOverrides(t *testing.T) {
19 19
 	env := []string{
20 20
 		`USER=shivaram`,        // unrelated var
21 21
 		`ORAGONO_USER=oragono`, // this should be ignored as well
22
-		`ORAGONO__NETWORK__NAME=example.com`,
22
+		`ERGO__NETWORK__NAME=example.com`,
23 23
 		`ORAGONO__SERVER__COMPATIBILITY__FORCE_TRAILING=false`,
24 24
 		`ORAGONO__SERVER__COERCE_IDENT="~user"`,
25
-		`ORAGONO__SERVER__MOTD=short.motd.txt`,
25
+		`ERGO__SERVER__MOTD=short.motd.txt`,
26 26
 		`ORAGONO__ACCOUNTS__NICK_RESERVATION__ENABLED=true`,
27
-		`ORAGONO__ACCOUNTS__DEFAULT_USER_MODES="+iR"`,
27
+		`ERGO__ACCOUNTS__DEFAULT_USER_MODES="+iR"`,
28 28
 		`ORAGONO__SERVER__IP_CLOAKING={"enabled": true, "enabled-for-always-on": true, "netname": "irc", "cidr-len-ipv4": 32, "cidr-len-ipv6": 64, "num-bits": 64}`,
29 29
 	}
30 30
 	for _, envPair := range env {

+ 2
- 2
irc/connection_limits/limiter.go View File

@@ -10,8 +10,8 @@ import (
10 10
 	"sync"
11 11
 	"time"
12 12
 
13
-	"github.com/oragono/oragono/irc/flatip"
14
-	"github.com/oragono/oragono/irc/utils"
13
+	"github.com/ergochat/ergo/irc/flatip"
14
+	"github.com/ergochat/ergo/irc/utils"
15 15
 )
16 16
 
17 17
 var (

+ 1
- 1
irc/connection_limits/limiter_test.go View File

@@ -8,7 +8,7 @@ import (
8 8
 	"testing"
9 9
 	"time"
10 10
 
11
-	"github.com/oragono/oragono/irc/flatip"
11
+	"github.com/ergochat/ergo/irc/flatip"
12 12
 )
13 13
 
14 14
 func easyParseIP(ipstr string) (result flatip.IP) {

+ 2
- 2
irc/database.go View File

@@ -14,8 +14,8 @@ import (
14 14
 	"strings"
15 15
 	"time"
16 16
 
17
-	"github.com/oragono/oragono/irc/modes"
18
-	"github.com/oragono/oragono/irc/utils"
17
+	"github.com/ergochat/ergo/irc/modes"
18
+	"github.com/ergochat/ergo/irc/utils"
19 19
 
20 20
 	"github.com/tidwall/buntdb"
21 21
 )

+ 1
- 1
irc/dline.go View File

@@ -10,7 +10,7 @@ import (
10 10
 	"sync"
11 11
 	"time"
12 12
 
13
-	"github.com/oragono/oragono/irc/flatip"
13
+	"github.com/ergochat/ergo/irc/flatip"
14 14
 	"github.com/tidwall/buntdb"
15 15
 )
16 16
 

+ 1
- 1
irc/email/email.go View File

@@ -10,7 +10,7 @@ import (
10 10
 	"regexp"
11 11
 	"strings"
12 12
 
13
-	"github.com/oragono/oragono/irc/smtp"
13
+	"github.com/ergochat/ergo/irc/smtp"
14 14
 )
15 15
 
16 16
 var (

+ 1
- 1
irc/errors.go View File

@@ -10,7 +10,7 @@ import (
10 10
 	"fmt"
11 11
 	"time"
12 12
 
13
-	"github.com/oragono/oragono/irc/utils"
13
+	"github.com/ergochat/ergo/irc/utils"
14 14
 )
15 15
 
16 16
 // Runtime Errors

+ 3
- 3
irc/gateways.go View File

@@ -9,9 +9,9 @@ import (
9 9
 	"errors"
10 10
 	"net"
11 11
 
12
-	"github.com/oragono/oragono/irc/flatip"
13
-	"github.com/oragono/oragono/irc/modes"
14
-	"github.com/oragono/oragono/irc/utils"
12
+	"github.com/ergochat/ergo/irc/flatip"
13
+	"github.com/ergochat/ergo/irc/modes"
14
+	"github.com/ergochat/ergo/irc/utils"
15 15
 )
16 16
 
17 17
 var (

+ 4
- 4
irc/getters.go View File

@@ -9,10 +9,10 @@ import (
9 9
 	"time"
10 10
 	"unsafe"
11 11
 
12
-	"github.com/oragono/oragono/irc/caps"
13
-	"github.com/oragono/oragono/irc/languages"
14
-	"github.com/oragono/oragono/irc/modes"
15
-	"github.com/oragono/oragono/irc/utils"
12
+	"github.com/ergochat/ergo/irc/caps"
13
+	"github.com/ergochat/ergo/irc/languages"
14
+	"github.com/ergochat/ergo/irc/modes"
15
+	"github.com/ergochat/ergo/irc/utils"
16 16
 )
17 17
 
18 18
 func (server *Server) Config() (config *Config) {

+ 13
- 13
irc/handlers.go View File

@@ -25,14 +25,14 @@ import (
25 25
 	"github.com/goshuirc/irc-go/ircutils"
26 26
 	"golang.org/x/crypto/bcrypt"
27 27
 
28
-	"github.com/oragono/oragono/irc/caps"
29
-	"github.com/oragono/oragono/irc/custime"
30
-	"github.com/oragono/oragono/irc/flatip"
31
-	"github.com/oragono/oragono/irc/history"
32
-	"github.com/oragono/oragono/irc/jwt"
33
-	"github.com/oragono/oragono/irc/modes"
34
-	"github.com/oragono/oragono/irc/sno"
35
-	"github.com/oragono/oragono/irc/utils"
28
+	"github.com/ergochat/ergo/irc/caps"
29
+	"github.com/ergochat/ergo/irc/custime"
30
+	"github.com/ergochat/ergo/irc/flatip"
31
+	"github.com/ergochat/ergo/irc/history"
32
+	"github.com/ergochat/ergo/irc/jwt"
33
+	"github.com/ergochat/ergo/irc/modes"
34
+	"github.com/ergochat/ergo/irc/sno"
35
+	"github.com/ergochat/ergo/irc/utils"
36 36
 )
37 37
 
38 38
 // helper function to parse ACC callbacks, e.g., mailto:person@example.com, tel:16505551234
@@ -710,7 +710,7 @@ func debugHandler(server *Server, client *Client, msg ircmsg.Message, rb *Respon
710 710
 		rb.Notice(fmt.Sprintf("num goroutines: %d", count))
711 711
 
712 712
 	case "PROFILEHEAP":
713
-		profFile := server.Config().getOutputPath("oragono.mprof")
713
+		profFile := server.Config().getOutputPath("ergo.mprof")
714 714
 		file, err := os.Create(profFile)
715 715
 		if err != nil {
716 716
 			rb.Notice(fmt.Sprintf("error: %s", err))
@@ -721,7 +721,7 @@ func debugHandler(server *Server, client *Client, msg ircmsg.Message, rb *Respon
721 721
 		rb.Notice(fmt.Sprintf("written to %s", profFile))
722 722
 
723 723
 	case "STARTCPUPROFILE":
724
-		profFile := server.Config().getOutputPath("oragono.prof")
724
+		profFile := server.Config().getOutputPath("ergo.prof")
725 725
 		file, err := os.Create(profFile)
726 726
 		if err != nil {
727 727
 			rb.Notice(fmt.Sprintf("error: %s", err))
@@ -1082,13 +1082,13 @@ func infoHandler(server *Server, client *Client, msg ircmsg.Message, rb *Respons
1082 1082
 	for _, line := range infoString1 {
1083 1083
 		rb.Add(nil, server.name, RPL_INFO, nick, line)
1084 1084
 	}
1085
-	rb.Add(nil, server.name, RPL_INFO, nick, fmt.Sprintf(client.t("This is Oragono version %s."), SemVer))
1085
+	rb.Add(nil, server.name, RPL_INFO, nick, fmt.Sprintf(client.t("This is Ergo version %s."), SemVer))
1086 1086
 	if Commit != "" {
1087 1087
 		rb.Add(nil, server.name, RPL_INFO, nick, fmt.Sprintf(client.t("It was built from git hash %s."), Commit))
1088 1088
 	}
1089 1089
 	rb.Add(nil, server.name, RPL_INFO, nick, fmt.Sprintf(client.t("It was compiled using %s."), runtime.Version()))
1090 1090
 	rb.Add(nil, server.name, RPL_INFO, nick, "")
1091
-	rb.Add(nil, server.name, RPL_INFO, nick, client.t("Oragono is released under the MIT license."))
1091
+	rb.Add(nil, server.name, RPL_INFO, nick, client.t("Ergo is released under the MIT license."))
1092 1092
 	rb.Add(nil, server.name, RPL_INFO, nick, "")
1093 1093
 	rb.Add(nil, server.name, RPL_INFO, nick, client.t("Core Developers:"))
1094 1094
 	for _, line := range infoString2 {
@@ -1099,7 +1099,7 @@ func infoHandler(server *Server, client *Client, msg ircmsg.Message, rb *Respons
1099 1099
 		rb.Add(nil, server.name, RPL_INFO, nick, line)
1100 1100
 	}
1101 1101
 	rb.Add(nil, server.name, RPL_INFO, nick, client.t("For a more complete list of contributors, see our changelog:"))
1102
-	rb.Add(nil, server.name, RPL_INFO, nick, "    https://github.com/oragono/oragono/blob/master/CHANGELOG.md")
1102
+	rb.Add(nil, server.name, RPL_INFO, nick, "    https://github.com/ergochat/ergo/blob/master/CHANGELOG.md")
1103 1103
 	rb.Add(nil, server.name, RPL_INFO, nick, "")
1104 1104
 	// show translators for languages other than good ole' regular English
1105 1105
 	tlines := server.Languages().Translators()

+ 8
- 8
irc/help.go View File

@@ -9,7 +9,7 @@ import (
9 9
 	"strings"
10 10
 	"sync"
11 11
 
12
-	"github.com/oragono/oragono/irc/languages"
12
+	"github.com/ergochat/ergo/irc/languages"
13 13
 )
14 14
 
15 15
 // HelpEntryType represents the different sorts of help entries that can exist.
@@ -37,7 +37,7 @@ type HelpEntry struct {
37 37
 var (
38 38
 	cmodeHelpText = `== Channel Modes ==
39 39
 
40
-Oragono supports the following channel modes:
40
+Ergo supports the following channel modes:
41 41
 
42 42
   +b  |  Client masks that are banned from the channel (e.g. *!*@127.0.0.1)
43 43
   +e  |  Client masks that are exempted from bans.
@@ -68,7 +68,7 @@ Oragono supports the following channel modes:
68 68
   +v (+)  |  Voice channel mode.`
69 69
 	umodeHelpText = `== User Modes ==
70 70
 
71
-Oragono supports the following user modes:
71
+Ergo supports the following user modes:
72 72
 
73 73
   +a  |  User is marked as being away. This mode is set with the /AWAY command.
74 74
   +i  |  User is marked as invisible (their channels are hidden from whois replies).
@@ -81,7 +81,7 @@ Oragono supports the following user modes:
81 81
   +T  |  CTCP messages to the user are blocked.`
82 82
 	snomaskHelpText = `== Server Notice Masks ==
83 83
 
84
-Oragono supports the following server notice masks for operators:
84
+Ergo supports the following server notice masks for operators:
85 85
 
86 86
   a  |  Local announcements.
87 87
   c  |  Local client connections.
@@ -502,7 +502,7 @@ given, views the current topic on the channel.`,
502 502
 	"uban": {
503 503
 		text: `UBAN <subcommand> [arguments]
504 504
 
505
-Oragono's "unified ban" system. Accepts the following subcommands:
505
+Ergo's "unified ban" system. Accepts the following subcommands:
506 506
 
507 507
 1. UBAN ADD <target> [REQUIRE-SASL] [DURATION <duration>] [REASON...]
508 508
 2. UBAN DEL <target>
@@ -638,15 +638,15 @@ for direct use by end users.`,
638 638
 	"casemapping": {
639 639
 		text: `RPL_ISUPPORT CASEMAPPING
640 640
 
641
-Oragono supports an experimental unicode casemapping designed for extended
641
+Ergo supports an experimental unicode casemapping designed for extended
642 642
 Unicode support. This casemapping is based off RFC 7613 and the draft rfc7613
643
-casemapping spec here: https://oragono.io/specs.html`,
643
+casemapping spec here: https://ergo.chat/specs.html`,
644 644
 		helpType: ISupportHelpEntry,
645 645
 	},
646 646
 	"prefix": {
647 647
 		text: `RPL_ISUPPORT PREFIX
648 648
 
649
-Oragono supports the following channel membership prefixes:
649
+Ergo supports the following channel membership prefixes:
650 650
 
651 651
   +q (~)  |  Founder channel mode.
652 652
   +a (&)  |  Admin channel mode.

+ 1
- 1
irc/history/history.go View File

@@ -4,7 +4,7 @@
4 4
 package history
5 5
 
6 6
 import (
7
-	"github.com/oragono/oragono/irc/utils"
7
+	"github.com/ergochat/ergo/irc/utils"
8 8
 	"sync"
9 9
 	"time"
10 10
 )

+ 3
- 3
irc/histserv.go View File

@@ -11,9 +11,9 @@ import (
11 11
 	"strconv"
12 12
 	"time"
13 13
 
14
-	"github.com/oragono/oragono/irc/history"
15
-	"github.com/oragono/oragono/irc/modes"
16
-	"github.com/oragono/oragono/irc/utils"
14
+	"github.com/ergochat/ergo/irc/history"
15
+	"github.com/ergochat/ergo/irc/modes"
16
+	"github.com/ergochat/ergo/irc/utils"
17 17
 )
18 18
 
19 19
 const (

+ 1
- 1
irc/hostserv.go View File

@@ -10,7 +10,7 @@ import (
10 10
 
11 11
 	"github.com/goshuirc/irc-go/ircfmt"
12 12
 
13
-	"github.com/oragono/oragono/irc/utils"
13
+	"github.com/ergochat/ergo/irc/utils"
14 14
 )
15 15
 
16 16
 const (

+ 1
- 1
irc/import.go View File

@@ -12,7 +12,7 @@ import (
12 12
 
13 13
 	"github.com/tidwall/buntdb"
14 14
 
15
-	"github.com/oragono/oragono/irc/utils"
15
+	"github.com/ergochat/ergo/irc/utils"
16 16
 )
17 17
 
18 18
 const (

+ 1
- 1
irc/ircconn.go View File

@@ -12,7 +12,7 @@ import (
12 12
 	"github.com/goshuirc/irc-go/ircmsg"
13 13
 	"github.com/goshuirc/irc-go/ircreader"
14 14
 
15
-	"github.com/oragono/oragono/irc/utils"
15
+	"github.com/ergochat/ergo/irc/utils"
16 16
 )
17 17
 
18 18
 const (

+ 1
- 1
irc/kline.go View File

@@ -13,7 +13,7 @@ import (
13 13
 
14 14
 	"github.com/tidwall/buntdb"
15 15
 
16
-	"github.com/oragono/oragono/irc/utils"
16
+	"github.com/ergochat/ergo/irc/utils"
17 17
 )
18 18
 
19 19
 const (

+ 1
- 1
irc/listeners.go View File

@@ -13,7 +13,7 @@ import (
13 13
 
14 14
 	"github.com/gorilla/websocket"
15 15
 
16
-	"github.com/oragono/oragono/irc/utils"
16
+	"github.com/ergochat/ergo/irc/utils"
17 17
 )
18 18
 
19 19
 var (

+ 2
- 2
irc/message_cache.go View File

@@ -8,8 +8,8 @@ import (
8 8
 
9 9
 	"github.com/goshuirc/irc-go/ircmsg"
10 10
 
11
-	"github.com/oragono/oragono/irc/caps"
12
-	"github.com/oragono/oragono/irc/utils"
11
+	"github.com/ergochat/ergo/irc/caps"
12
+	"github.com/ergochat/ergo/irc/utils"
13 13
 )
14 14
 
15 15
 // MessageCache caches serialized IRC messages.

+ 3
- 3
irc/modes.go View File

@@ -10,9 +10,9 @@ import (
10 10
 	"strconv"
11 11
 	"strings"
12 12
 
13
-	"github.com/oragono/oragono/irc/modes"
14
-	"github.com/oragono/oragono/irc/sno"
15
-	"github.com/oragono/oragono/irc/utils"
13
+	"github.com/ergochat/ergo/irc/modes"
14
+	"github.com/ergochat/ergo/irc/sno"
15
+	"github.com/ergochat/ergo/irc/utils"
16 16
 )
17 17
 
18 18
 var (

+ 1
- 1
irc/modes/modes.go View File

@@ -10,7 +10,7 @@ import (
10 10
 	"sort"
11 11
 	"strings"
12 12
 
13
-	"github.com/oragono/oragono/irc/utils"
13
+	"github.com/ergochat/ergo/irc/utils"
14 14
 )
15 15
 
16 16
 var (

+ 1
- 1
irc/modes_test.go View File

@@ -7,7 +7,7 @@ import (
7 7
 	"reflect"
8 8
 	"testing"
9 9
 
10
-	"github.com/oragono/oragono/irc/modes"
10
+	"github.com/ergochat/ergo/irc/modes"
11 11
 )
12 12
 
13 13
 func TestParseDefaultChannelModes(t *testing.T) {

+ 3
- 3
irc/mysql/history.go View File

@@ -16,10 +16,10 @@ import (
16 16
 	"sync/atomic"
17 17
 	"time"
18 18
 
19
+	"github.com/ergochat/ergo/irc/history"
20
+	"github.com/ergochat/ergo/irc/logger"
21
+	"github.com/ergochat/ergo/irc/utils"
19 22
 	_ "github.com/go-sql-driver/mysql"
20
-	"github.com/oragono/oragono/irc/history"
21
-	"github.com/oragono/oragono/irc/logger"
22
-	"github.com/oragono/oragono/irc/utils"
23 23
 )
24 24
 
25 25
 var (

+ 2
- 2
irc/mysql/serialization.go View File

@@ -3,8 +3,8 @@ package mysql
3 3
 import (
4 4
 	"encoding/json"
5 5
 
6
-	"github.com/oragono/oragono/irc/history"
7
-	"github.com/oragono/oragono/irc/utils"
6
+	"github.com/ergochat/ergo/irc/history"
7
+	"github.com/ergochat/ergo/irc/utils"
8 8
 )
9 9
 
10 10
 // 123 / '{' is the magic number that means JSON;

+ 4
- 4
irc/nickname.go View File

@@ -9,11 +9,11 @@ import (
9 9
 	"fmt"
10 10
 	"strings"
11 11
 
12
+	"github.com/ergochat/ergo/irc/history"
13
+	"github.com/ergochat/ergo/irc/modes"
14
+	"github.com/ergochat/ergo/irc/sno"
15
+	"github.com/ergochat/ergo/irc/utils"
12 16
 	"github.com/goshuirc/irc-go/ircfmt"
13
-	"github.com/oragono/oragono/irc/history"
14
-	"github.com/oragono/oragono/irc/modes"
15
-	"github.com/oragono/oragono/irc/sno"
16
-	"github.com/oragono/oragono/irc/utils"
17 17
 )
18 18
 
19 19
 var (

+ 4
- 4
irc/nickserv.go View File

@@ -13,10 +13,10 @@ import (
13 13
 
14 14
 	"github.com/goshuirc/irc-go/ircfmt"
15 15
 
16
-	"github.com/oragono/oragono/irc/custime"
17
-	"github.com/oragono/oragono/irc/passwd"
18
-	"github.com/oragono/oragono/irc/sno"
19
-	"github.com/oragono/oragono/irc/utils"
16
+	"github.com/ergochat/ergo/irc/custime"
17
+	"github.com/ergochat/ergo/irc/passwd"
18
+	"github.com/ergochat/ergo/irc/sno"
19
+	"github.com/ergochat/ergo/irc/utils"
20 20
 )
21 21
 
22 22
 // "enabled" callbacks for specific nickserv commands

+ 2
- 2
irc/responsebuffer.go View File

@@ -7,9 +7,9 @@ import (
7 7
 	"runtime/debug"
8 8
 	"time"
9 9
 
10
+	"github.com/ergochat/ergo/irc/caps"
11
+	"github.com/ergochat/ergo/irc/utils"
10 12
 	"github.com/goshuirc/irc-go/ircmsg"
11
-	"github.com/oragono/oragono/irc/caps"
12
-	"github.com/oragono/oragono/irc/utils"
13 13
 )
14 14
 
15 15
 const (

+ 3
- 3
irc/roleplay.go View File

@@ -7,9 +7,9 @@ import (
7 7
 	"fmt"
8 8
 	"strings"
9 9
 
10
-	"github.com/oragono/oragono/irc/history"
11
-	"github.com/oragono/oragono/irc/modes"
12
-	"github.com/oragono/oragono/irc/utils"
10
+	"github.com/ergochat/ergo/irc/history"
11
+	"github.com/ergochat/ergo/irc/modes"
12
+	"github.com/ergochat/ergo/irc/utils"
13 13
 )
14 14
 
15 15
 const (

+ 1
- 1
irc/semaphores.go View File

@@ -5,7 +5,7 @@ package irc
5 5
 import (
6 6
 	"runtime"
7 7
 
8
-	"github.com/oragono/oragono/irc/utils"
8
+	"github.com/ergochat/ergo/irc/utils"
9 9
 )
10 10
 
11 11
 // See #237 for context. Operations that might allocate large amounts of temporary

+ 13
- 13
irc/server.go View File

@@ -22,15 +22,15 @@ import (
22 22
 
23 23
 	"github.com/goshuirc/irc-go/ircfmt"
24 24
 
25
-	"github.com/oragono/oragono/irc/caps"
26
-	"github.com/oragono/oragono/irc/connection_limits"
27
-	"github.com/oragono/oragono/irc/flatip"
28
-	"github.com/oragono/oragono/irc/history"
29
-	"github.com/oragono/oragono/irc/logger"
30
-	"github.com/oragono/oragono/irc/modes"
31
-	"github.com/oragono/oragono/irc/mysql"
32
-	"github.com/oragono/oragono/irc/sno"
33
-	"github.com/oragono/oragono/irc/utils"
25
+	"github.com/ergochat/ergo/irc/caps"
26
+	"github.com/ergochat/ergo/irc/connection_limits"
27
+	"github.com/ergochat/ergo/irc/flatip"
28
+	"github.com/ergochat/ergo/irc/history"
29
+	"github.com/ergochat/ergo/irc/logger"
30
+	"github.com/ergochat/ergo/irc/modes"
31
+	"github.com/ergochat/ergo/irc/mysql"
32
+	"github.com/ergochat/ergo/irc/sno"
33
+	"github.com/ergochat/ergo/irc/utils"
34 34
 	"github.com/tidwall/buntdb"
35 35
 )
36 36
 
@@ -356,9 +356,9 @@ func (server *Server) tryRegister(c *Client, session *Session) (exiting bool) {
356 356
 func (server *Server) playSTSBurst(session *Session) {
357 357
 	nick := utils.SafeErrorParam(session.client.preregNick)
358 358
 	session.Send(nil, server.name, RPL_WELCOME, nick, fmt.Sprintf("Welcome to the Internet Relay Network %s", nick))
359
-	session.Send(nil, server.name, RPL_YOURHOST, nick, fmt.Sprintf("Your host is %[1]s, running version %[2]s", server.name, "oragono"))
359
+	session.Send(nil, server.name, RPL_YOURHOST, nick, fmt.Sprintf("Your host is %[1]s, running version %[2]s", server.name, "ergo"))
360 360
 	session.Send(nil, server.name, RPL_CREATED, nick, fmt.Sprintf("This server was created %s", time.Time{}.Format(time.RFC1123)))
361
-	session.Send(nil, server.name, RPL_MYINFO, nick, server.name, "oragono", "o", "o", "o")
361
+	session.Send(nil, server.name, RPL_MYINFO, nick, server.name, "ergo", "o", "o", "o")
362 362
 	session.Send(nil, server.name, RPL_ISUPPORT, nick, "CASEMAPPING=ascii", "are supported by this server")
363 363
 	session.Send(nil, server.name, ERR_NOMOTD, nick, "MOTD is unavailable")
364 364
 	for _, line := range server.Config().Server.STS.bannerLines {
@@ -1059,8 +1059,8 @@ var (
1059 1059
 ▐█▌.▐▌▐█•█▌▐█ ▪▐▌▐█▄▪▐█▐█▌ ▐▌██▐█▌▐█▌.▐▌
1060 1060
  ▀█▄▀▪.▀  ▀ ▀  ▀ ·▀▀▀▀  ▀█▄▀ ▀▀ █▪ ▀█▄▀▪
1061 1061
 
1062
-         https://oragono.io/
1063
-   https://github.com/oragono/oragono
1062
+         https://ergo.chat/
1063
+   https://github.com/ergochat/ergo
1064 1064
    https://crowdin.com/project/oragono
1065 1065
 `, "\n")
1066 1066
 	infoString2 = strings.Split(`    Daniel Oakley,          DanielOaks,    <daniel@danieloaks.net>

+ 1
- 1
irc/services.go View File

@@ -11,9 +11,9 @@ import (
11 11
 	"strings"
12 12
 	"time"
13 13
 
14
+	"github.com/ergochat/ergo/irc/utils"
14 15
 	"github.com/goshuirc/irc-go/ircfmt"
15 16
 	"github.com/goshuirc/irc-go/ircmsg"
16
-	"github.com/oragono/oragono/irc/utils"
17 17
 )
18 18
 
19 19
 // defines an IRC service, e.g., NICKSERV

+ 1
- 1
irc/snomanager.go View File

@@ -4,8 +4,8 @@ import (
4 4
 	"fmt"
5 5
 	"sync"
6 6
 
7
+	"github.com/ergochat/ergo/irc/sno"
7 8
 	"github.com/goshuirc/irc-go/ircfmt"
8
-	"github.com/oragono/oragono/irc/sno"
9 9
 )
10 10
 
11 11
 // SnoManager keeps track of which clients to send snomasks to.

+ 1
- 1
irc/socket.go View File

@@ -9,7 +9,7 @@ import (
9 9
 	"io"
10 10
 	"sync"
11 11
 
12
-	"github.com/oragono/oragono/irc/utils"
12
+	"github.com/ergochat/ergo/irc/utils"
13 13
 )
14 14
 
15 15
 var (

+ 1
- 1
irc/strings.go View File

@@ -16,7 +16,7 @@ import (
16 16
 	"golang.org/x/text/unicode/norm"
17 17
 	"golang.org/x/text/width"
18 18
 
19
-	"github.com/oragono/oragono/irc/utils"
19
+	"github.com/ergochat/ergo/irc/utils"
20 20
 )
21 21
 
22 22
 const (

+ 1
- 1
irc/types.go View File

@@ -8,7 +8,7 @@ package irc
8 8
 import (
9 9
 	"time"
10 10
 
11
-	"github.com/oragono/oragono/irc/modes"
11
+	"github.com/ergochat/ergo/irc/modes"
12 12
 )
13 13
 
14 14
 type empty struct{}

+ 4
- 4
irc/uban.go View File

@@ -11,10 +11,10 @@ import (
11 11
 
12 12
 	"github.com/goshuirc/irc-go/ircmsg"
13 13
 
14
-	"github.com/oragono/oragono/irc/custime"
15
-	"github.com/oragono/oragono/irc/flatip"
16
-	"github.com/oragono/oragono/irc/sno"
17
-	"github.com/oragono/oragono/irc/utils"
14
+	"github.com/ergochat/ergo/irc/custime"
15
+	"github.com/ergochat/ergo/irc/flatip"
16
+	"github.com/ergochat/ergo/irc/sno"
17
+	"github.com/ergochat/ergo/irc/utils"
18 18
 )
19 19
 
20 20
 func consumeDuration(params []string, rb *ResponseBuffer) (duration time.Duration, requireSASL bool, remainingParams []string, err error) {

+ 1
- 1
irc/usermaskset.go View File

@@ -13,7 +13,7 @@ import (
13 13
 	"time"
14 14
 	"unsafe"
15 15
 
16
-	"github.com/oragono/oragono/irc/utils"
16
+	"github.com/ergochat/ergo/irc/utils"
17 17
 )
18 18
 
19 19
 type MaskInfo struct {

+ 5
- 5
irc/version.go View File

@@ -6,13 +6,13 @@ package irc
6 6
 import "fmt"
7 7
 
8 8
 const (
9
-	// SemVer is the semantic version of Oragono.
9
+	// SemVer is the semantic version of Ergo.
10 10
 	SemVer = "2.7.0-unreleased"
11 11
 )
12 12
 
13 13
 var (
14
-	// Ver is the full version of Oragono, used in responses to clients.
15
-	Ver = fmt.Sprintf("oragono-%s", SemVer)
14
+	// Ver is the full version of Ergo, used in responses to clients.
15
+	Ver = fmt.Sprintf("ergo-%s", SemVer)
16 16
 	// Commit is the full git hash, if available
17 17
 	Commit string
18 18
 )
@@ -21,8 +21,8 @@ var (
21 21
 func SetVersionString(version, commit string) {
22 22
 	Commit = commit
23 23
 	if version != "" {
24
-		Ver = fmt.Sprintf("oragono-%s", version)
24
+		Ver = fmt.Sprintf("ergo-%s", version)
25 25
 	} else if len(Commit) == 40 {
26
-		Ver = fmt.Sprintf("oragono-%s-%s", SemVer, Commit[:16])
26
+		Ver = fmt.Sprintf("ergo-%s-%s", SemVer, Commit[:16])
27 27
 	}
28 28
 }

+ 2
- 2
irc/znc.go View File

@@ -9,8 +9,8 @@ import (
9 9
 	"strings"
10 10
 	"time"
11 11
 
12
-	"github.com/oragono/oragono/irc/history"
13
-	"github.com/oragono/oragono/irc/utils"
12
+	"github.com/ergochat/ergo/irc/history"
13
+	"github.com/ergochat/ergo/irc/utils"
14 14
 )
15 15
 
16 16
 const (

+ 25
- 26
traditional.yaml View File

@@ -1,17 +1,17 @@
1
-# This is the "traditional" or "mainstream" config file for Oragono.
1
+# This is the "traditional" or "mainstream" config file for Ergo.
2 2
 # It tries to replicate the behavior of other ircds, at the cost of not
3
-# taking full advantage of Oragono's features. This config is suitable for use
3
+# taking full advantage of Ergo's features. This config is suitable for use
4 4
 # in IRCv3 conformance testing.
5 5
 
6 6
 # network configuration
7 7
 network:
8 8
     # name of the network
9
-    name: OragonoTest
9
+    name: ErgoTest
10 10
 
11 11
 # server configuration
12 12
 server:
13 13
     # server name
14
-    name: oragono.test
14
+    name: ergo.test
15 15
 
16 16
     # addresses to listen on
17 17
     listeners:
@@ -36,12 +36,12 @@ server:
36 36
             # min-tls-version: 1.2
37 37
 
38 38
         # Example of a Unix domain socket for proxying:
39
-        # "/tmp/oragono_sock":
39
+        # "/tmp/ergo_sock":
40 40
 
41 41
         # Example of a Tor listener: any connection that comes in on this listener will
42 42
         # be considered a Tor connection. It is strongly recommended that this listener
43 43
         # *not* be on a public interface --- it should be on 127.0.0.0/8 or unix domain:
44
-        # "/hidden_service_sockets/oragono_tor_sock":
44
+        # "/hidden_service_sockets/ergo_tor_sock":
45 45
         #     tor: true
46 46
 
47 47
         # Example of a WebSocket listener:
@@ -94,14 +94,14 @@ server:
94 94
 
95 95
     websockets:
96 96
         # Restrict the origin of WebSocket connections by matching the "Origin" HTTP
97
-        # header. This setting causes oragono to reject websocket connections unless
97
+        # header. This setting causes ergo to reject websocket connections unless
98 98
         # they originate from a page on one of the whitelisted websites in this list.
99 99
         # This prevents malicious websites from making their visitors connect to your
100
-        # oragono instance without their knowledge. An empty list means there are no
100
+        # ergo instance without their knowledge. An empty list means there are no
101 101
         # restrictions.
102 102
         allowed-origins:
103
-            # - "https://oragono.io"
104
-            # - "https://*.oragono.io"
103
+            # - "https://ergo.chat"
104
+            # - "https://*.ergo.chat"
105 105
 
106 106
     # casemapping controls what kinds of strings are permitted as identifiers (nicknames,
107 107
     # channel names, account names, etc.), and how they are normalized for case.
@@ -137,13 +137,12 @@ server:
137 137
     # the value must begin with a '~' character. comment out / omit to disable:
138 138
     #coerce-ident: '~u'
139 139
 
140
-    # password to login to the server
141
-    # generated using  "oragono genpasswd"
142
-    #password: ""
140
+    # password to login to the server, generated using `ergo genpasswd`:
141
+    #password: "$2a$04$0123456789abcdef0123456789abcdef0123456789abcdef01234"
143 142
 
144 143
     # motd filename
145 144
     # if you change the motd, you should move it to ircd.motd
146
-    motd: oragono.motd
145
+    motd: ergo.motd
147 146
 
148 147
     # motd formatting codes
149 148
     # if this is true, the motd is escaped using formatting codes like $c, $b, and $i
@@ -179,7 +178,7 @@ server:
179 178
             # (comment this out to use passwords only)
180 179
             certfp: "abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789"
181 180
 
182
-            # password the gateway uses to connect, made with oragono genpasswd
181
+            # password the gateway uses to connect, made with `ergo genpasswd`
183 182
             password: "$2a$04$abcdef0123456789abcdef0123456789abcdef0123456789abcde"
184 183
 
185 184
             # IPs/CIDRs that can use this webirc command
@@ -201,7 +200,7 @@ server:
201 200
     compatibility:
202 201
         # many clients require that the final parameter of certain messages be an
203 202
         # RFC1459 trailing parameter, i.e., prefixed with :, whether or not this is
204
-        # actually required. this forces Oragono to send those parameters
203
+        # actually required. this forces Ergo to send those parameters
205 204
         # as trailings. this is recommended unless you're testing clients for conformance;
206 205
         # defaults to true when unset for that reason.
207 206
         force-trailing: true
@@ -214,7 +213,7 @@ server:
214 213
 
215 214
         # traditionally, IRC servers will truncate and send messages that are
216 215
         # too long to be relayed intact. this behavior can be disabled by setting
217
-        # allow-truncation to false, in which case Oragono will reject the message
216
+        # allow-truncation to false, in which case Ergo will reject the message
218 217
         # and return an error to the client. (note that this option defaults to true
219 218
         # when unset.)
220 219
         allow-truncation: true
@@ -282,7 +281,7 @@ server:
282 281
     # IP cloaking hides users' IP addresses from other users and from channel admins
283 282
     # (but not from server admins), while still allowing channel admins to ban
284 283
     # offending IP addresses or networks. In place of hostnames derived from reverse
285
-    # DNS, users see fake domain names like pwbs2ui4377257x8.oragono. These names are
284
+    # DNS, users see fake domain names like pwbs2ui4377257x8.irc. These names are
286 285
     # generated deterministically from the underlying IP address, but if the underlying
287 286
     # IP is not already known, it is infeasible to recover it from the cloaked name.
288 287
     ip-cloaking:
@@ -323,10 +322,10 @@ server:
323 322
     secure-nets:
324 323
         # - "10.0.0.0/8"
325 324
 
326
-    # oragono will write files to disk under certain circumstances, e.g.,
325
+    # Ergo will write files to disk under certain circumstances, e.g.,
327 326
     # CPU profiling or data export. by default, these files will be written
328 327
     # to the working directory. set this to customize:
329
-    #output-path: "/home/oragono/out"
328
+    #output-path: "/home/ergo/out"
330 329
 
331 330
     # the hostname used by "services", e.g., NickServ, defaults to "localhost",
332 331
     # e.g., `NickServ!NickServ@localhost`. uncomment this to override:
@@ -469,7 +468,7 @@ accounts:
469 468
         # nickname after the initial connection is complete
470 469
         forbid-anonymous-nick-changes: false
471 470
 
472
-    # multiclient controls whether oragono allows multiple connections to
471
+    # multiclient controls whether Ergo allows multiple connections to
473 472
     # attach to the same client/nickname identity; this is part of the
474 473
     # functionality traditionally provided by a bouncer like ZNC
475 474
     multiclient:
@@ -630,7 +629,7 @@ opers:
630 629
         # operators can be authenticated either by password (with the /OPER command),
631 630
         # or by certificate fingerprint, or both. if a password hash is set, then a
632 631
         # password is required to oper up (e.g., /OPER dan mypassword). to generate
633
-        # the hash, use `oragono genpasswd`.
632
+        # the hash, use `ergo genpasswd`.
634 633
         password: "$2a$04$0123456789abcdef0123456789abcdef0123456789abcdef01234"
635 634
 
636 635
         # if a SHA-256 certificate fingerprint is configured here, then it will be
@@ -691,7 +690,7 @@ logging:
691 690
 
692 691
 # debug options
693 692
 debug:
694
-    # when enabled, oragono will attempt to recover from certain kinds of
693
+    # when enabled, Ergo will attempt to recover from certain kinds of
695 694
     # client-triggered runtime errors that would normally crash the server.
696 695
     # this makes the server more resilient to DoS, but could result in incorrect
697 696
     # behavior. deployments that would prefer to "start from scratch", e.g., by
@@ -722,9 +721,9 @@ datastore:
722 721
         port: 3306
723 722
         # if socket-path is set, it will be used instead of host:port
724 723
         #socket-path: "/var/run/mysqld/mysqld.sock"
725
-        user: "oragono"
724
+        user: "ergo"
726 725
         password: "hunter2"
727
-        history-database: "oragono_history"
726
+        history-database: "ergo_history"
728 727
         timeout: 3s
729 728
         max-conns: 4
730 729
         # this may be necessary to prevent middleware from closing your connections:
@@ -937,5 +936,5 @@ history:
937 936
         #    - "typing"
938 937
 
939 938
 # whether to allow customization of the config at runtime using environment variables,
940
-# e.g., ORAGONO__SERVER__MAX_SENDQ=128k. see the manual for more details.
939
+# e.g., ERGO__SERVER__MAX_SENDQ=128k. see the manual for more details.
941 940
 allow-environment-overrides: true

Loading…
Cancel
Save