]>
Commit | Line | Data |
---|---|---|
1 | # Rizon Acid Services | |
2 | Acid is a Java based pseudo IRC server used by [Rizon](https://www.rizon.net) to run bots like Internets, LimitServ, and Quotes, as well as various others. | |
3 | ||
4 | ## Requirements | |
5 | Required to build are: | |
6 | * Python2.7, with development headers. | |
7 | * Maven | |
8 | * JDK 1.8 | |
9 | * C++ compiler with C++11 support | |
10 | ||
11 | ## Installing | |
12 | It is recommended that you run Acid on a Linux OS. | |
13 | ||
14 | Start by cloning the repo using: | |
15 | ``` | |
16 | > git clone https://gitlab.com/rizon/acid.git | |
17 | ``` | |
18 | ||
19 | And then grab the submodules using: | |
20 | ``` | |
21 | > cd acid | |
22 | > git submodule init | |
23 | > git submodule update | |
24 | ``` | |
25 | ||
26 | Go to the folder ```pyva/libpyva/pyva-native/``` and copy ```make.example.properties``` to ```make.properties```. Then modify the values to match your system. | |
27 | ||
28 | Go back to the acid main folder and run ```mvn package```. | |
29 | ||
30 | After pyva has been built, symlink ```libpyva.so``` from the pyva-native folder to the acid main folder. | |
31 | ``` | |
32 | > ln -s pyva/libpyva/pyva-native/libpyva.so libpyva.so | |
33 | ``` | |
34 | ||
35 | To obtain the correct python package you can use pip in the ```pyva``` folder | |
36 | ``` | |
37 | > pip install -r requirements.txt | |
38 | ``` | |
39 | ||
40 | ## Running | |
41 | Acid has several configuration files that are needed for the program to successfully start. All configuration files must be put in the acid main folder. | |
42 | ||
43 | The list of configuration files: | |
44 | * acidictive.yml (acidictive.example.yml located in ```acid``` folder) | |
45 | * config.yml (config.example.yml located in ```pyva``` folder) | |
46 | * pyva.yml (pyva.example.yml located in ```pyva``` folder) | |
47 | ||
48 | ### Database | |
49 | Install the ```acidcore.sql```, located in ```acid``` database in your MySQL server. | |
50 | ||
51 | Add yourself to the ```access``` table in the acidcore SQL database. Where ```flags``` matches one of the presets in ```acidictive.yml``` or your own set of privileges (SRA or 1 gives you full access in the default setting). | |
52 | ||
53 | ### Anope configuration | |
54 | Have the names of the bots you are going to use (ex. Internets) registered and allow them access to ```chanserv/why``` (Anope 1.8) or ```chanserv/status``` (Anope 2.0) command. | |
55 | LimitServ requires ```chanserv/op``` access. | |
56 | ||
57 | ### Linux | |
58 | Before you can start Acid with libpyva you need to set the LD_PRELOAD environment variable to libpython, you can either add this to your ```~/.bashrc``` or to the ```run.sh``` script. | |
59 | ||
60 | LD_PRELOAD should point to libpython, for example: | |
61 | ``` | |
62 | export LD_PRELOAD=/usr/lib64/libpython2.7.so | |
63 | ``` | |
64 | ||
65 | ### Windows | |
66 | Requires a .symlink from libpyva.pyd to pyva.dll for some of the exception features to work. |