Srain can run on most GNU/Linux distributions and macOS, Windows support is in the plan.


Name Notes Version
coreutils building  
make building  
gcc building  
pkg-config building  
imagemagick building  
glib-networking TLS support  
gtk+3   >= 3.16
python3   >= 3.2
libcurl will be removed soon  
libconfig   >= 1.5
python3-sphinx document  
python3-urllib3 avatar and pastebin support  
python3-request avatar and pastebin support  

Manual Installation

You should install the aboved dependencies on your platfrom before manual installation.

Install Dependences


The accurate package name is depending on platform, the following commands just for reference.


The new dependency libsoup hasn’t included in some of the following packages, for it is hard to maintain a list of packages for every platform. Sorry!

Arch Linux

# pacman -S make gcc pkg-config imagemagick # building
# pacman -S gettext glib-networking gtk3 python curl libsoup libnotify libconfig


# zypper in make gcc pkg-config imagemagick gettext-tools gtk3-devel>=3.16 libcurl-devel python3-devel libnotify-devel libconfig-devel>=1.5 # building
# zypper in gettext-runtime glib-networking gtk3 python3 libcurl4 libnotify-tools libconfig9>=1.5

Debian & Ubuntu

# apt-get install make gcc pkg-config imagemagick gettext libgtk-3-dev>=3.16 libpython3-dev python3-dev libcurl4-dev libsoup2.4-dev libnotify-dev libconfig-dev>=1.5 # building
# apt-get install glib-networking libgtk3.0-0>=3.16 python3 libcurl4 libsoup2.4 libnotify4 libconfig9>=1.5


$ brew install coreutils gcc pkg-config imagemagick # building
$ brew install gettext glib-networking gtk+3 python3 curl libsoup libnotify libconfig

Compile & Install

After installing the aboved dependencies, download the source code:

Get stable(require wget and tar):

$ wget
$ tar -xvzf 0.06.3.tar.gz
$ cd srain-0.06.3

Get git version(require git):

$ git clone
$ cd srain

Complile and install:

$ ./configure --prefix=/usr/local --config-dir=/usr/local/etc
$ make
# make install


The configure script doesn’t check any dependience. So you should make sure that you have fully installed all dependencies.

Install documents:

$ make doc
# make install-doc

Distribution Package

Arch Linux

Packages srain and srain-git (git version) are available on AUR, it is quite easy to install using yaourt:

$ yaourt -S srain
$ yaourt -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


rtlanceroad maintains Gentoo ebuilds for Srain, please refer to it for more details.


dfceaef has written Debian package script for Srain, but it is already out of date, I will be glad if anyone can fix it.