~emersion/soju-dev

soju: bouncer-networks client support and hexchat example v1 SUPERSEDED

Trying my best to help others navigate the bouncer networks and
supported/non-supported client lists.

Motiejus Jakštys (1):
  hexchat and "other client" docs

 contrib/clients.md     | 11 ++++++++++-
 doc/getting-started.md | 26 +++++++++++++++++++++-----
 2 files changed, 31 insertions(+), 6 deletions(-)

-- 
2.38.5
#1046576 .build.yml success
soju/patches/.build.yml: SUCCESS in 2m32s

[bouncer-networks client support and hexchat example][0] from [~motiejus][1]

[0]: https://lists.sr.ht/~emersion/soju-dev/patches/43921
[1]: mailto:motiejus@jakstys.lt

✓ #1046576 SUCCESS soju/patches/.build.yml https://builds.sr.ht/~emersion/job/1046576
Export patchset (mbox)
How do I use this?

Copy & paste the following snippet into your terminal to import this patchset into git:

curl -s https://lists.sr.ht/~emersion/soju-dev/patches/43921/mbox | git am -3
Learn more about email & git

[PATCH soju 1/1] hexchat and "other client" docs Export this patch

From: Motiejus Jakštys <motiejus@jakstys.lt>

It would be good to have a list of clients that support bouncer
networks. Weechat is one. Any more?
---
 contrib/clients.md     | 11 ++++++++++-
 doc/getting-started.md | 26 +++++++++++++++++++++-----
 2 files changed, 31 insertions(+), 6 deletions(-)

diff --git a/contrib/clients.md b/contrib/clients.md
index fc35e56..9ce6f62 100644
--- a/contrib/clients.md
+++ b/contrib/clients.md
@@ -2,7 +2,9 @@

This page describes how to configure IRC clients to better integrate with soju.

Also see the [IRCv3 support tables] for a more general list of clients.
Also see the [IRCv3 support tables] for a more general list of clients. Bouncer
networks extension is, as of writing, not standartized, thus not in the IRCv3
support tables.

# catgirl

@@ -77,6 +79,12 @@ limited scope. To work around this issue for sourcehut, [generate a sourcehut
personal access token] without limiting the grant (by not selecting any
permissions).

Hexchat does not support [bouncer networks][other clients], so the full
configuration when connecting to libera.chat via soju may look like:

* Nick name: `<yournickname>`
* User name: `<yournickname>/irc.libera.chat@<client hostname>-hexchat`

# [irssi]

To connect irssi to a network, for example Libera Chat:
@@ -124,3 +132,4 @@ See `/help cap` for more information.
[generate a sourcehut personal access token]: https://meta.sr.ht/oauth2/personal-token
[Emacs]: https://www.gnu.org/software/emacs/
[irssi]: https://irssi.org/
[other clients]: ../doc/getting-started.md#other-clients
diff --git a/doc/getting-started.md b/doc/getting-started.md
index c05e1bc..cff1147 100644
--- a/doc/getting-started.md
+++ b/doc/getting-started.md
@@ -25,21 +25,31 @@ channels from a ZNC config file:
### Client supporting `soju.im/bouncer-networks`

If you are using a client supporting the `soju.im/bouncer-networks` IRC
extension (see the [client list]), then you can just connect to soju with your
username and password.
extension (see the [client list] for some clients that do support bouncer
networks), then you can just connect to soju with your username and password.

If your client doesn't provide a UI to manage IRC networks, you can talk to
`BouncerServ`. See the [man page] or use `/msg BouncerServ help`.

If you have connected to soju and are getting this error message when joining
the channel:

  Cannot interact with channels and users on the bouncer connection. Did you
  mean to use a specific network?

Then your client does not support bouncer networks, and should be configured
like described in "Other clients" section below.

### Other clients

You will need to setup one separate server in your client for each server you
want soju to connect to.

The easiest way to get started is to specify the IRC server address directly in
the username in the client configuration. For example to connect to Libera Chat,
your username will be: `<soju username>/irc.libera.chat`. Also set your soju
password in the password field of your client configuration.
the username in the client configuration. For example to connect to Libera
Chat, your username will be: `<soju username>/irc.libera.chat`. Also set your
soju password in the password field of your client configuration. Note that
username is not the same as nickname.

This will autoconfigure soju by adding a network with the address
`irc.libera.chat` and then autoconnect to it. You will now be able to join
@@ -54,7 +64,13 @@ and a workstation, you can setup each client to use the respective usernames
`<soju username>/irc.libera.chat@laptop` and
`<soju username>/irc.libera.chat@workstation`.

As of writing (2023-08), chat history for such clients starts when the client
connects first, but not when soju connects to the bouncer. This is a bug on
Soju side which the author of this paragraph did not find in [the issues
page][issues].

[package manager]: https://repology.org/project/soju/versions
[README]: ../README.md
[man page]: https://soju.im/doc/soju.1.html#IRC_SERVICE
[client list]: ../contrib/clients.md
[issues]: https://todo.sr.ht/~emersion/soju
-- 
2.38.5
soju/patches/.build.yml: SUCCESS in 2m32s

[bouncer-networks client support and hexchat example][0] from [~motiejus][1]

[0]: https://lists.sr.ht/~emersion/soju-dev/patches/43921
[1]: mailto:motiejus@jakstys.lt

✓ #1046576 SUCCESS soju/patches/.build.yml https://builds.sr.ht/~emersion/job/1046576