Skip to content
Permalink
Browse files

realigned with muscleman pool

  • Loading branch information
muscleman committed Jun 23, 2019
1 parent d5d3102 commit 82dc706bb85559b63c9efde9357fcb350cd30aaf
Showing with 1,678 additions and 2,628 deletions.
  1. +1 −0 .gitignore
  2. +2 −1 Dockerfile
  3. +54 −25 README.md
  4. +0 −313 config.ETNX.json
  5. +8 −1 config_examples/aeon.json
  6. +3 −3 config_examples/arqma.json
  7. +0 −313 config_examples/arto.json
  8. +2 −2 config_examples/bbscoin.json
  9. +23 −26 config_examples/{bitcoinmono.json → bloc.json}
  10. +8 −8 config_examples/bytecoin.json
  11. +0 −312 config_examples/citicash.json
  12. +0 −312 config_examples/dragonglass.json
  13. +2 −3 config_examples/electronero.json
  14. +1 −1 config_examples/graft.json
  15. +3 −3 config_examples/italocoin.json
  16. +27 −25 config_examples/{parsicoin.json → kepl.config}
  17. +2 −2 config_examples/loki.json
  18. +3 −3 config_examples/{ → masari}/masari.json
  19. +1 −0 config_examples/masari/notes.txt
  20. +33 −0 config_examples/masari/package.json
  21. +6 −7 config_examples/monero.json
  22. +2 −2 config_examples/qwertycoin.json
  23. +11 −10 config_examples/stellite.json
  24. 0 config_examples/{turtle.json → turtlecoin.json}
  25. +1 −1 config_examples/ultranote.json
  26. +28 −20 config_examples/{arqma.conf → worktips.json}
  27. +6 −0 config_examples/wownero.json
  28. +2 −2 config_examples/xmv.json
  29. +29 −20 deployment/sample-landing-page.html
  30. +231 −221 lib/api.js
  31. +32 −32 lib/blockUnlocker.js
  32. +48 −47 lib/charts.js
  33. +5 −5 lib/chartsDataCollector.js
  34. +15 −10 lib/email.js
  35. +4 −4 lib/exceptionWriter.js
  36. +16 −16 lib/logger.js
  37. +254 −74 lib/market.js
  38. +28 −28 lib/notifications.js
  39. +50 −50 lib/paymentProcessor.js
  40. +151 −138 lib/pool.js
  41. +13 −27 lib/telegram.js
  42. +50 −50 lib/telegramBot.js
  43. +21 −24 lib/utils.js
  44. +2 −1 website_example/config.js
  45. +31 −23 website_example/index.html
  46. +53 −53 website_example/js/common.js
  47. +1 −1 website_example/lang/languages.js
  48. +5 −5 website_example/pages/admin/monitoring.html
  49. +7 −7 website_example/pages/admin/ports.html
  50. +2 −2 website_example/pages/admin/statistics.html
  51. +9 −9 website_example/pages/admin/tools.html
  52. +6 −6 website_example/pages/admin/userslist.html
  53. +27 −27 website_example/pages/faq.html
  54. +68 −59 website_example/pages/getting_started.html
  55. +38 −38 website_example/pages/home.html
  56. +40 −40 website_example/pages/market.html
  57. +25 −25 website_example/pages/payments.html
  58. +43 −43 website_example/pages/pool_blocks.html
  59. +27 −30 website_example/pages/settings.html
  60. +12 −12 website_example/pages/top10miners.html
  61. +106 −106 website_example/pages/worker_stats.html
@@ -5,3 +5,4 @@ build/
.idea/
logs/
website/
custom_coins/
@@ -3,7 +3,8 @@ FROM node:8-slim

RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y nodejs-legacy npm git libboost1.55-all libssl-dev \
&& rm -rf /var/lib/apt/lists/*
&& rm -rf /var/lib/apt/lists/* && \
chmod +x /wait-for-it.sh

ADD . /pool/
WORKDIR /pool/
@@ -102,31 +102,44 @@ Community / Support

* https://imaginary.stream/
* https://graft.anypool.net/
* https://graft.dark-mine.su/
* https://www.dark-mine.su/
* http://itns.proxpool.com/
* https://bytecoin.pt
* http://ita.minexmr24.ru/
* https://pool.croatpirineus.cat
* https://bytecoin.pt/
* https://pool.leviar.io/
* https://pool.croatpirineus.cat/

Usage
===

#### Requirements
* Coin daemon(s) (find the coin's repo and build latest version from source)
* [List of Cryptonote coins](https://github.com/dvandal/cryptonote-nodejs-pool/wiki/Cryptonote-Coins)
* [Node.js](http://nodejs.org/) v4.0+
* [Node.js](http://nodejs.org/) v11.0+
* For Ubuntu:
```
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash
curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash
sudo apt-get install -y nodejs
```
```
* Or use NVM(https://github.com/creationix/nvm) for debian/ubuntu.


* [Redis](http://redis.io/) key-value store v2.6+
* For Ubuntu:
```
sudo add-apt-repository ppa:chris-lea/redis-server
sudo apt-get update
sudo apt-get install redis-server
```
Dont forget to tune redis-server:
```
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 1024 > /proc/sys/net/core/somaxconn
```
Add this lines to your /etc/rc.local and make it executable
```
chmod +x /etc/rc.local
```

* libssl required for the node-multi-hashing module
* For Ubuntu: `sudo apt-get install libssl-dev`

@@ -155,7 +168,7 @@ sudo su - your-user
Clone the repository and run `npm update` for all the dependencies to be installed:

```bash
git clone https://github.com/dvandal/cryptonote-nodejs-pool.git pool
git clone https://github.com/muscleman/cryptonote-nodejs-pool.git pool
cd pool
npm update
@@ -198,7 +211,6 @@ Explanation for each field:
"cnBlobType": 0,
"includeHeight":false, /*true to include block.height in job to miner*/
"includeAlgo":"cn/wow", /*wownero specific change to include algo in job to miner*/
/* Logging */
"logging": {
@@ -222,7 +234,8 @@ Explanation for each field:
"colors": true
}
},
/*Which Hashing Package to use: cryptonight-hashing=false, multi-hashing=true*/
"hashingUtil":false,
/* Modular Pool Server */
"poolServer": {
"enabled": true,
@@ -304,7 +317,8 @@ Explanation for each field:
/* Set payment ID on miner client side by passing <address>.<paymentID> */
"paymentId": {
"addressSeparator": "." // Character separator between <address> and <paymentID>
"addressSeparator": ".", // Character separator between <address> and <paymentID>
"validation": true // Refuse login if non alphanumeric characters in <paymentID>
},
/* Feature to trust share difficulties from miners which can
@@ -361,8 +375,7 @@ Explanation for each field:
"depth": 60,
"poolFee": 0.8, // 0.8% pool fee (1% total fee total including donations)
"devDonation": 0.2, // 0.2% donation to send to pool dev
"networkFee": 0.0, // Network/Governance fee (used by some coins)
"useFirstVout": false, // Should be true for a coin like Loki that has multiple block reward recipients where first is miner reward
"networkFee": 0.0, // Network/Governance fee (used by some coins like Loki)
/* Some forknote coins have an issue with block height in RPC request, to fix you can enable this option.
See: https://github.com/forknote/forknote-pool/issues/48 */
@@ -396,7 +409,9 @@ Explanation for each field:
/* Wallet daemon connection details (default port is 18980) */
"wallet": {
"host": "127.0.0.1",
"port": 18982
"port": 18982,
"username": "--rpc-username", //monero based wallet authentication
"password": "--rpc-password"
},
/* Redis connection info (default port is 6379) */
@@ -508,7 +523,7 @@ Explanation for each field:
/* Prices settings for market and price charts */
"prices": {
"source": "cryptonator", // Exchange (supported values: cryptonator, altex, crex24, cryptopia, stocks.exchange, tradeogre)
"source": "cryptonator", // Exchange (supported values: cryptonator, altex, crex24, cryptopia, stocks.exchange, tradeogre, maplechange)
"currency": "USD" // Default currency
},
@@ -560,6 +575,12 @@ Explanation for each field:
"stepInterval": 1800,
"maximumPeriod": 86400
},
"worker_hashrate": {
"enabled": true,
"updateInterval": 60,
"stepInterval": 60,
"maximumPeriod": 86400
},
"payments": { // Payment chart uses all user payments data stored in DB
"enabled": true
}
@@ -588,6 +609,8 @@ This software contains four distinct modules:
* `api` - Used by the website to display network, pool and miners' data
* `unlocker` - Processes block candidates and increases miners' balances when blocks are unlocked
* `payments` - Sends out payments to miners according to their balances stored in redis
* `chartsDataCollector` - Processes miners and workers hashrate stats and charts
* `telegramBot` - Processes telegram bot commands


By default, running the `init.js` script will start up all four modules. You can optionally have the script start
@@ -600,7 +623,7 @@ node init.js -module=api
[Example screenshot](http://i.imgur.com/SEgrI3b.png) of running the pool in single module mode with tmux.

To keep your pool up, on operating system with systemd, you can create add your pool software as a service.
Use this [example](https://github.com/dvandal/cryptonote-nodejs-pool/blob/master/deployment/cryptonote-nodejs-pool.service) to create the systemd service `/lib/systemd/system/cryptonote-nodejs-pool.service`
Use this [example](https://github.com/muscleman/cryptonote-nodejs-pool/blob/master/deployment/cryptonote-nodejs-pool.service) to create the systemd service `/lib/systemd/system/cryptonote-nodejs-pool.service`
Then enable and start the service with the following commands :

```
@@ -636,6 +659,9 @@ var telegram = "https://t.me/YourPool";
/* Pool Discord URL */
var discord = "https://discordapp.com/invite/YourPool";
/*Pool Facebook URL */
var facebook = "https://www.facebook.com/<YourPoolFacebook";
/* Market stat display params from https://www.cryptonator.com/widget */
var marketCurrencies = ["{symbol}-BTC", "{symbol}-USD", "{symbol}-EUR", "{symbol}-CAD"];
@@ -748,23 +774,26 @@ curl 127.0.0.1:18081/json_rpc -d '{"method":"getblockheaderbyheight","params":{"
Donations
---------

Thanks for supporting my works on this project! If you want to make a donation to [Daniel Vandal](https://github.com/dvandal/), the developper of this project, you can send any amount of your choice to one of theses addresses:
Thanks for supporting my works on this project! If you want to make a donation to [Dvandal](https://github.com/dvandal/), the developper of this project, you can send any amount of your choice to one of theses addresses:

* Bitcoin (BTC): `34GDVuVbuxyYdR8bPZ7g6r12AhPPCrNfXt`
* Bitcoin (BTC): `17XRyHm2gWAj2yfbyQgqxm25JGhvjYmQjm`
* Bitcoin Cash (BCH): `qpl0gr8u3yu7z4nzep955fqy3w8m6w769sec08u3dp`
* Ethereum (ETH): `0xd4d9a4f22475039f115824b15999a5a8143d424c`
* Litecoin (LTC): `LW169WygGDMBN1PGSr8kNbrFBx94emGWfB`
* Monero (XMR): `4Cf2TfMKhCgJ2vsM3HeBUnYe52tXrvv8X1ajjuQEMUQ8iU8kvUzCSsCEacxFhEmeb2JgPpQ5chdyw3UiTfUgapJBhHdmH87gYyoDR6NMZj`
* Graft (GRFT): `GMPHYf5KRkcAyik7Jw9oHRfJtUdw2Kj5f4VTFJ25AaFVYxofetir8Cnh7S76Q854oMXzwaguL8p5KEz1tm3rn1SA6r6p9dMjuV81yqXCgi`
* Haven (XHV): `hvi1aCqoAZF19J8pijvqnrUkeAeP8Rvr4XyfDMGJcarhbL15KgYKM1hN7kiHMu3fer5k8JJ8YRLKCahDKFgLFgJMYAfngJjDmkZAVuiRP15qv`
* Masari (MSR): `5t5mEm254JNJ9HqRjY9vCiTE8aZALHX3v8TqhyQ3TTF9VHKZQXkRYjPDweT9kK4rJw7dDLtZXGjav2z9y24vXCdRc3DY4daikoNTeK1v4e`
* Stellite (XTL): `SEiStP7SMy1bvjkWc9dd1t2v1Et5q2DrmaqLqFTQQ9H7JKdZuATcPHUbUL3bRjxzxTDYitHsAPqF8EeCLw3bW8ARe8rYRNQQwys1JcJAs3qSH`
* Ethereum (ETH): `0x83ECF65934690D132663F10a2088a550cA201353`
* Litecoin (LTC): `LS9To9u2C95VPHKauRMEN5BLatC8C1k4F1`
* Monero (XMR): `49WyMy9Q351C59dT913ieEgqWjaN12dWM5aYqJxSTZCZZj1La5twZtC3DyfUsmVD3tj2Zud7m6kqTVDauRz53FqA9zphHaj`
* Graft (GRFT): `GBqRuitSoU3PFPBAkXMEnLdBRWXH4iDSD6RDxnQiEFjVJhWUi1UuqfV5EzosmaXgpPGE6JJQjMYhZZgWY8EJQn8jQTsuTit`
* Haven (XHV): `hvxy2RAzE7NfXPLE3AmsuRaZztGDYckCJ14XMoWa6BUqGrGYicLCcjDEjhjGAQaAvHYGgPD7cGUwcYP7nEUs8u6w3uaap9UZTf`
* IntenseCoin (ITNS): `iz4fRGV8XsRepDtnK8XQDpHc3TbtciQWQ5Z9285qihDkCAvB9VX1yKt6qUCY6sp2TCC252SQLHrjmeLuoXsv4aF42YZtnZQ53`
* Masari (MSR): `5n7mffxVT9USrq7tcG3TM8HL5yAz7MirUWypXXJfHrNfTcjNtDouLAAGex8s8htu4vBpmMXFzay8KG3jYGMFhYPr2aMbN6i`
* Stellite (XTL): `Se45GzgpFG3CnvYNwEFnxiRHD2x7YzRnhFLdxjUqXdbv3ysNbfW5U7aUdn87RgMRPM7xwN6CTbXNc7nL5QUgcww11bDeypTe1`


Credits
---------

* [fancoder](//github.com/fancoder) - Developper on cryptonote-universal-pool project from which current project is forked.
* dvandal (//github.com/dvandal) - Developer of cryptonote-nodejs-pool software
* Musclesonvacation (//github.com/muscleman) - Current developer for pool software

License
-------

1 comment on commit 82dc706

@ParsiCoin

This comment has been minimized.

Copy link
Contributor

ParsiCoin commented on 82dc706 Jul 10, 2019

config_examples/parsicoin.json → config_examples/kepl.config ?!

Please sign in to comment.
You can’t perform that action at this time.