Guide
Soju
Soju is A user-friendly IRC bouncer. Just like ZNC, It runs on a server and stays connected after you turn off your computer or phone. It saves chat messages and replays them when you reconnect, and also helps to hide your IP address. If you are running it on IRCNow, your server may also offer DDoS protection to keep you online.
Getting started
Starting by compiling from source. You need go
or golang
installed for compiling soju, and scdoc
for the documentation (optional).
Getting source code from git repository
Clone the repository with git clone
command.
cd ~
git clone --depth=1 https://git.sr.ht/~emersion/soju
Getting source code from release
We're gonna fetch a tarball from upstream then extract them
ftp https://git.sr.ht/~emersion/soju/refs/download/v0.4.0/soju-0.4.0.tar.gz
tar -xvzf soju-0.4.0.tar.gz
cd soju-0.4.0
Compiling Soju
When you've been fetch the source code, start compiling by typing make
. Before begin compiling, make sure that go
or golang
is installed in your VPS.
make
When building is done, Run doas make install
to install soju into your system.
Configuration
Soju has a small server configuration which is easy to configure.
See soju.1 - Config File for more information about configuration file.
After configuring soju config file, Start by creating a bouncer user. You may specify -admin
at the end for making the user as admin
$ sojuctl create-user yourname -admin
Password:
In case if you want to change password, do sojuctl change-password yourname
.
Setting up & Connecting into network
Start the server by executing soju -config soju.conf
. Modify soju.conf
into your config filename to use your config.
Connect into your bouncer with these credential:
SASL Username: yourname
SASL Password: [your bouncer user password]
SASL Mechanism: PLAIN
Then, Add a network into your bouncer by messaging to BouncerServ
/msg BouncerServ network create -addr irc.ircnow.org:6697 -name IRCNow
After executing this command, You will be connected into your network.
Optionally, You may also set SASL plain / external (certfp) authentication.
For SASL Plain, You may do
/msg BouncerServ sasl set-plain -network NetworkName yourname password
Then, reconnect the network by doing /msg BouncerServ network update -network NetworkName
.
Client Compatibility
Soju require atleast IRCv3 supported client with cap-3.2
support. See the IRCv3 support tables for a more general list of clients.