Srain Documentation Release 0.06.4
Total Page:16
File Type:pdf, Size:1020Kb
Srain Documentation Release 0.06.4 Shengyu Zhang Jan 23, 2019 All pages: 1 Quick Start 3 1.1 Start Srain................................................3 1.2 Connect to IRC server..........................................5 1.3 Join Channel...............................................6 2 Installation 11 2.1 Dependencies............................................... 12 2.2 Building................................................. 12 2.3 Distribution Packages.......................................... 13 3 Commands Manual 15 3.1 Playground................................................ 16 3.2 Syntax.................................................. 16 3.3 Usage................................................... 16 4 Configuration Manual 23 4.1 Configuration File............................................ 23 4.2 Syntax.................................................. 23 4.3 Priority and Fallback........................................... 24 4.4 All Configurable Items.......................................... 25 5 Development Specification 29 5.1 Codeing Style.............................................. 29 6 Miscellaneous 31 6.1 Hot Keys................................................. 31 6.2 Chat Logs................................................. 31 7 Frequently Asked Questions 33 7.1 Does Srain support Windows?...................................... 33 7.2 Why does the image upload button not work?.............................. 33 7.3 Why can’t I see people’s avatar?..................................... 33 7.4 What is “relay message transform”?................................... 34 7.5 Where are the log files?......................................... 34 8 Change Log 35 8.1 2018-02-28 Version 0.06.4........................................ 35 i 8.2 2017-12-22 Version 0.06.3........................................ 36 8.3 2017-09-12 Version 0.06.2........................................ 37 8.4 2017-08-18 Version 0.06.1........................................ 37 8.5 2017-07-29 Version 0.06......................................... 37 8.6 2016-09-19 Version 0.05.1........................................ 38 8.7 2016-08-27 Version 0.05......................................... 38 8.8 2016-04-30 Version 0.03......................................... 39 8.9 2016-04-13 Version 0.02......................................... 39 8.10 2016-04-07 Version 0.01......................................... 40 9 Support Tables 41 9.1 Basic IRC Client Support........................................ 41 9.2 Client-to-Client Protocol (CTCP) Support................................ 42 9.3 IRCv3 Client Support.......................................... 42 10 External Resources 43 11 Indices and Tables 45 ii Srain Documentation, Release 0.06.4 Welcome to Srain documentation! The source code of this documentation is hosted on GitHub. If you found any mistake, feel free to file issue or pull request. Note: As Srain is constantly improving, the latest version is always recommended. Currently we aren’t doing bug fix for the non-least version. All pages: 1 Srain Documentation, Release 0.06.4 2 All pages: CHAPTER 1 Quick Start • Start Srain • Connect to IRC server – Predefined Server – Custom Server – Using Command • Join Channel – Directly Join – Search Channel – Using Command Note: If you are using version 0.06.2 and earlier, please refer to: http://doc.srain.im/en/0.06.2/start.html . Although using earlier version is not recommended. 1.1 Start Srain After the Installation of Srain, you will find Srain in your applications list, if not, just type srain in your shell to run it. Then you will see Srain’s initial interface. Here is the layout of Srain being used: 3 Srain Documentation, Release 0.06.4 4 Chapter 1. Quick Start Srain Documentation, Release 0.06.4 1.2 Connect to IRC server freenode is a famous IRC network, the official channel of Srain #srain is also hosted on it. Let’s start by connecting to freenode. 1.2.1 Predefined Server Since version 0.06.3, Srain has a predefined list of commonly used IRC servers, freenode is one of it. If you want to add server into this list, refer to Configuration Manual. Click the connection button on the Srain header bar, select the page “Predefined Server”, select the item “freenode” from candidate box with label “Server”, enter your nickname, then click the “Connect” button: If everything goes well, Srain should connected to freenode, then your would see some message from freenode’s server: 1.2.2 Custom Server While the server your want to connect to is not listed in the predefined list, switch to the page “Custom Server”, enter the host name, port, and etc. Note: • If the port is a TLS port, make sure that the option “Use secure connection” is checked. • If the server’s certificate is untrusted and you insist on continuing, check the option “Do not verify certificate”. 1.2. Connect to IRC server 5 Srain Documentation, Release 0.06.4 Then click the “Connect” button: 1.2.3 Using Command Refer to /server and /connect. If you want to automatically execute commands at each time Srain starts, please refer to Playground. 1.3 Join Channel After connecting to freenode, now let’s try to join #srain, the official channel of Srain. 1.3.1 Directly Join While your has a clear channel to join, such as #srain, just click the join button, select the page “Join Channel”, enter the channel name in the input entry with label “Channel”, then click the “Join” button: Now you should joined the channel: 6 Chapter 1. Quick Start Srain Documentation, Release 0.06.4 1.3. Join Channel 7 Srain Documentation, Release 0.06.4 1.3.2 Search Channel While you don’t know the exact name of the channel, click the join button, switch to page “Search Channel”, click the button with a “refresh” icon, Srain should start receiving channel list from server: Then you can enter the keyword or specify the filter conditions to search channel. For example we enter “sra”, select the channel you want to join from channe list, then click “Join” button: Note: If the channel requires a join password, try double click the row of channel. 1.3.3 Using Command Refer to /join. 8 Chapter 1. Quick Start Srain Documentation, Release 0.06.4 1.3. Join Channel 9 Srain Documentation, Release 0.06.4 10 Chapter 1. Quick Start CHAPTER 2 Installation Srain is available on GNU/Linux, Windows and macOS. • Dependencies • Building • Distribution Packages – GNU/Linux * Arch Linux * Debian * Flatpak * Gentoo * openSUSE – Windows – macOS 11 Srain Documentation, Release 0.06.4 2.1 Dependencies Name Notes Version coreutils Only for building make Only for building gcc Only for building pkg-config Only for building gettext glib2 glib-networking Optional, For TLS connection support gtk+3 >= 3.18 libsoup libconfig >= 1.5 2.2 Building You should install the aboved Dependencies on your platform before the following steps. Firstly, download source code of srain, you can get source code of latest release: Note: The development of 1.0 release is working in progress. Or get git version: $ git clone https://github.com/SrainApp/srain.git $ cd srain Setup build options and start building: $ ./configure \ --prefix=/usr/local \ --datadir=/usr/local/share \ --sysconfdir=/etc $ make Note: The configure script DOES NOT check any dependience. You should make sure that you have all depen- dencies installed. Install(root privileges required): # make install Build and install documentation: $ make doc # make install-doc 12 Chapter 2. Installation Srain Documentation, Release 0.06.4 2.3 Distribution Packages 2.3.1 GNU/Linux Arch Linux Packages srain and srain-git (git version) are available on AUR, it is quite easy to install using AUR helper(yay as an example): $ yay -S srain $ yay -S srain-git # git version If you are the user of Arch Linux CN Repository, try: # pacman -S archlinuxcn/srain # pacman -S archlinuxcn/srain-git # git version Debian Warning: This package is broken now. dfceaef has written Debian package script for Srain, but it is already out of date, I will be glad if anyone can fix it. Flatpak cpba is maintaining Flatpak manifest for Srain and The built package is available on Flathub, just execute the following commands to install if you already have flatpak installed: $ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub. ,!flatpakrepo $ flatpak install flathub im.srain.Srain Gentoo rtlanceroad is maintaining Gentoo ebuilds for Srain, please refer to it for more details. openSUSE alois is maintaining openSUSE package for Srain, following this link to install it. 2.3.2 Windows Warning: Windows support of Srain is still experimental. 2.3. Distribution Packages 13 Srain Documentation, Release 0.06.4 Srain requires Windows 7 or later. The easiest way to build/run Srain on Windows is using the toolchains provided by MSYS2 project. Firstly install MSYS2, then open a MSYS2 shell, install the basic build tools: $ pacman -S base-devel $ pacman -S mingw-w64-i686-toolchain # For 32-bit Windows $ pacman -S mingw-w64-x86_64-toolchain # For 64-bit Windows Then download the package script from MinGW PKGBUILD for Srain, run the following commands at the directory of PKGBUILD: $ MINGW_INSTALLS=mingw32 makepkg-mingw -fsi # For 32-bit Windows $ MINGW_INSTALLS=mingw64 makepkg-mingw -fsi # For 64-bit Windows If everything goes well, Srain is installed under your MinGW prefix. Note: If you suffer the “error while loading shared libraries: xxxx.dll: cannot open shared object file: No such file or directory” problem when running, please run it in cmd but not msys2 shell, and it will show you real missing library.1 2.3.3