2017-04-14 02:31:09 +08:00
Un guide en francais est disponible [ici ](http://h5ckfun.info/joal-le-nouveau-ratiomaster/ )
2017-03-14 20:35:31 +08:00
# Prepare confguration folder
You first need to get the cofiguration folder. Replace `<MY_CONFIG_FOLDER_PATH>` by whatever path you want.
2017-02-18 20:21:23 +08:00
```
git clone git@github.com:anthonyraymond/joal.git
cd joal
cp -R resources < MY_CONFIG_FOLDER_PATH >
```
2017-03-14 20:35:31 +08:00
Now add some of your private tracker's `.torrent` file to `<MY_CONFIG_FOLDER_PATH>/torrents/` . But **be aware** that only torrent with at least 1 leecher will actually be used by *joal* , to keep your account from being banned.
2017-02-18 08:27:17 +08:00
2017-03-14 20:35:31 +08:00
# Install and run
### With Docker
2017-02-18 20:21:23 +08:00
At the moment only an ARM based docker file is available.
2017-02-18 08:27:17 +08:00
```
docker build -f Dockerfile.arm -t araymond/joal .
2017-02-18 20:21:23 +08:00
docker run -d -v < PATH_TO_CONFIG_DIR > :/data -p 49152-65534:49152 --name="joal" araymond/joal
2017-02-18 08:27:17 +08:00
```
2017-03-14 20:35:31 +08:00
### Without Docker
You need to have **Java 8** installed.
We first need to download the latest version of the .jar. Once again replace `<MY_CONFIG_FOLDER_PATH>` by your choosen path and execute this script
2017-02-18 08:27:17 +08:00
```
2017-03-14 20:35:31 +08:00
cd < MY_CONFIG_FOLDER_PATH > \
& & GITHUB_REPO="https://github.com/anthonyraymond/joal" \
&& LATEST=$(curl -sSI $GITHUB_REPO"/releases/latest" | perl -n -e '/^Location: .*?tag\/(.*?)\r*$/ && print "$1\n"') \
& & curl -f -L $GITHUB_REPO"/releases/download/"$LATEST"/"$LATEST".jar" > ./jack-of-all-trades.jar
2017-02-18 08:27:17 +08:00
```
2017-03-14 20:35:31 +08:00
Then you can run the application with the following command *(replace X.X.X with your own version)*
```
java -jar jack-of-all-trades-X.X.X.jar < MY_CONFIG_FOLDER_PATH >
```
# Understanding configuration (optional)
### Torrent files
- All torrent file in `<MY_CONFIG_FOLDER_PATH>/torrents/` will be available for sharing.
- One random torrent file from `<MY_CONFIG_FOLDER_PATH>/torrents/` is choosed randmfly for each seed session.
- All torrent file added/removed/modified in `<MY_CONFIG_FOLDER_PATH>/torrents/` while the client is running will be automatically hot loaded, there is no need to restart.
- **If the torrent currently seeding reach 0 peers, the file will be moved to `<MY_CONFIG_FOLDER_PATH>/torrents/archived` folder.**
### Application configuration
2017-02-18 20:21:23 +08:00
The application configuration belongs in `<MY_CONFIG_FOLDER_PATH>/config.json` .
```
{
2017-04-18 15:49:35 +08:00
"minUploadRate": 180,
2017-02-18 20:21:23 +08:00
"maxUploadRate": 190,
2017-04-18 15:49:35 +08:00
"seedFor": 840,
"waitBetweenSeed": 600,
2017-02-18 20:21:23 +08:00
"client": "azureus-5.7.4.0.client"
}
```
- `minUploadRate` : The minimum uploadRate you want to fake (in kB/s) (**required**)
- `maxUploadRate` : The maximum uploadRate you want to fake (in kB/s) (**required**)
- `seedFor` : How long the client should seed for in a row (seeding session in minutes) (**required**)
- `waitBetweenSeed` : How long the client should wait before two seeding session (in minutes) (**required**)
- `client` : The name of the .client file to use in `<MY_CONFIG_FOLDER_PATH>/clients/` (**required**)
2017-03-14 20:35:31 +08:00
### Create your own torrent clients
To learn more about .client, head to the [project's wiki][project-wiki].
2017-02-18 08:27:17 +08:00
2017-04-26 07:24:16 +08:00
## ROADMAP to v2
- https://github.com/anthonyraymond/joal/issues/4
2017-02-18 20:21:23 +08:00
2017-03-14 20:35:31 +08:00
# Thanks:
This project use a modified version of the awesome [mpetazzoni/ttorrent] library. Thanks to **mpetazzoni** for this.
2017-02-18 20:21:23 +08:00
2017-03-14 20:35:31 +08:00
[project-wiki]: https://github.com/anthonyraymond/joal/wiki
2017-02-18 20:21:23 +08:00
[mpetazzoni/ttorrent]: http://mpetazzoni.github.com/ttorrent/
2017-04-18 03:32:17 +08:00
2017-04-18 15:49:35 +08:00
[![Analytics ](https://ga-beacon.appspot.com/UA-97530761-1/joal/readme?pixel )](https://github.com/igrigorik/ga-beacon)