Skip to content
View minexmr2's full-sized avatar

Block or report minexmr2

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
minexmr2/README.md

MineXMR2: MineXMR variant 2 come from p2pool 👋

First open-source Monero mining pool using decentralized p2pool as a hashrate-liquidity provider for frequent payouts (approx. 2 times/hour)

Also first pool ever to fight Against Curse of RANK-SIZE distribution in Mining world; we are migrating to the highly secure OpenBSD environment

The Mission.

⚡ Sep 16 2023: 1st anniversary commit; updated to p2pool v3.5; config.pool_fee_wallet is mandatory now.

minexmr2.com site screenshot

Quick start domain (stratum): minexmr2.com. Pool port: 4444. TLS pool port: 8443 ...And your valid Monero address (4... or 8...). That's all you need to start mining on MineXMR variant 2 pool. No registration, no cookies, no 3rd party scripts loaded from other domains, no personal data collection.

This mining pool implementation is based on jtgrassie's monero-pool. Just nearly 25% of code is added/rewritten, providing pool's, miner's hashrate charts, last payouts table and more. Jtgrassie's monero-pool has offered a robust base to develop minexmr2.com pool as a proxy to decentralized p2pool. See build instructions below.

The name MineXMR2 is inspired by departed old-school MineXMR pool as its variant 2 using conceptual decentralized p2pool. In no way this pool is related to original MineXMR.

  • 🔭 FULL support of SChernykh p2pool has been implemented! Now minexmr2.com pool uses decentralized p2pool as a hashrate-liquidity provider. You have nothing to build, deploy, upgrade and maintain like in your own p2pool instance. If you mine with us, you get your pending balance update as regular as p2pool finds new block. Each time your pending balance reaches 0.01XMR you receive automatic payment.

Latest news

⚡ Sep 16 2023: 1st anniversary commit; updated to p2pool v3.5; config.pool_fee_wallet is mandatory now.

⚡ Jun 12 2023: Added official support of xmrig-proxy; fixed some potential buffer overflow; updated to p2pool v3.4.

⚡ Jun 01 2023: Launched a brand new related project OpenHWW, initiating migration to OpenBSD.

⚡ May 12 2023: Added a link for profit calculation at external site for miner's current and 24h average hashrates.

⚡ May 01 2023: Read our Mission at pool site.

⚡ Apr 18 2023: minexmr2.com upgraded to the latest p2pool v3.2 and monerod v0.18.2.2; show p2pool incoming/outcoming connections.

⚡ Apr 10 2023: minexmr2.com now shows total payouts to the miners, to ensure that pool is functioning properly.

⚡ Mar 12 2023: Successfully migrated to p2pool v3.1 and monerod v0.18.2.0 and ready for Mar 18 2023 p2pool (not monero) hard fork. Traditional pool mode (without p2pool) is no longer supported, eliminating unused RandomX hash checking on the pool side (it is being made on p2pool side now). Small color fixes to the day theme.

⚡ Feb 03 2023: minexmr2.com is now full-fledged! P2Pool hashrate charts & miner's last 10 payouts to show in web-UI have been implemented and deployed to minexmr2.com with miner's hashrate charts. Remember, the pool supports only automatic difficulty that is coming from p2pool and starts from some 4000K. Minimum possible difficulty is set to 50000. That steps are made to avoid server's overloading by misconfigured miner rigs. Minimum total miner's hashrate (per each unique XMR address) is recommended to have at least 50KH/s.

⚡ Jan 23 2023: Miner's hashrate charts & p2pool local hashrate have been implemented and deployed to minexmr2.com.

minexmr2.com: miner's hashrate charts & p2pool local hashrate have been implemented

⚡ Jan 09 2023: minexmr2.com server has been patched against strange reddit-discussed issue; uses patched p2pool v2.7-jan-9 now.

⚡ Jan 03 2023: minexmr2.com server has implemented miner's hashrate recording for last N days. Pool web-ui shows miner's 24h-averaged hashrate and miner's last payout (amount @ time).

⚡ Dec 08 2022: minexmr2.com server utilizes cgroups to limit monerod CPU/RAM usage.

⚡ Dec 05 2022: minexmr2.com switched to p2pool v2.6.

⚡ Nov 06 2022: minexmr2.com site obtains NIGHT/DAY theme switch, 1st GitHub feature request has been implemented.

⚡ Nov 01 2022: minexmr2.com site has new section: Useful Resources (Some Monero-related 3rd party resources we found useful).

⚡ Oct 27-28 2022: minexmr2.com site and this README texts have been fixed against further discussion in reddit post. Wrong text about resistance to 51% attack has been completely removed.

⚡ Oct 23 2022: minexmr2.com site and this README texts have been fixed against discussion in reddit post.

⚡ Oct 18 2022: minexmr2.com pool is rebuilt against Monero Fluorine Fermi, Point Release 1.2 and p2pool v2.4.

⚡ Sep 22 2022: minexmr2.com status online and fully operational; blocks are being found by local p2pool instance, approx. 1.62 blocks/hour. Detailed info at minexmr2.com.

Compiling from source

Dependencies

The build system requires the Monero source tree to be cloned and compiled. Follow the instructions for compiling Monero, then export the following variable:

export MONERO_ROOT=/path/to/cloned/monero

Replacing the path appropriately.

Beyond the Monero dependencies, the following extra libraries are also required to build the pool:

  • liblmdb
  • libevent
  • json-c
  • uuid

As an example, on Ubuntu, these dependencies can be installed with the following command:

sudo apt-get install liblmdb-dev libevent-dev libjson-c-dev uuid-dev

P2pool should be compiled too, of course! Follow the instructions.

Compile

After installing all the dependencies as described above, to compile the pool as a release build, run:

make release_p2pool

The application will be built in build/release_p2pool/.

Optionally you can compile a debug build by simply running:

make debug_p2pool

Debug builds are output in build/debug_p2pool/.

Configuration

During compilation, a copy of pool.conf is placed in the output build directory. Edit this file as you see fit. When running, the pool will first look for this file in the same directory as the pool binary, then in the current users home directory. The configuration options should all be self explanatory.

It is highly recommended if you run separate UPSTREAM and TRUSTED instances of minexmr2 pool under different user accounts of your Linux OS or even different hardware Linux servers to maintain good security.

Note, all the networking between instances or servers is performed via OpenVPN tunnel!

UPSTREAM instance communicates with monerod and p2pool servers, while TRUSTED instance communicates with monerod and monero-wallet-rpc servers. UPSTREAM instance's purpose is to listen for miner connections and redirect them to p2pool server, while recording billing info. Billing info recorded is being sent to TRUSTED instance that performs all the payment processing via calls to monero-wallet-rpc server.

pool-edge.conf is a typical configuration file for UPSTREAM instance. Don't forget to rename it to pool.conf in your instance's folder.

pool-trusted.conf is a typical configuration file for TRUSTED instance. Don't forget to rename it to pool.conf in your pool instance's folder.

Important! Your pool's wallet must contain some XMR balance, for example 0.05XMR, and the whole line in configuration file is dedicated to that:

p2pool-safe-balance = 0.05

If something goes wrong, a built-in watchdog routine preserves wallet balance from decrease below 0.05XMR (in this example).

You must start executables in the following order

UPSTREAM

  1. monerod
  2. p2pool
  3. monero-pool as Linux user/server named "monero-pool-upstream"

TRUSTED

  1. monero-wallet-rpc
  2. monero-pool as Linux user/server named "monero-pool-trusted"

Shutdown should be performed in reversed order.

Note, you can use several UPSTREAM bundles configured to communicate with the same TRUSTED bundle. If even TRUSTED bundle is temporarily offline, UPSTREAM bundle does record all the shares/billing info that will be transferred to TRUSTED bundle when it comes back online.

Donations

If you find MINEXMR2 as a good project to support decentralized p2pool hashrate, please donate XMR or BTC to further development. Our goal is to bring all the p2pool decentralized capabilities to every miner, without time/resource costs to deploy, upgrade, maintain the p2pool instance by himself.

Donate XMR: 4AoKL73JHbJWSws7exQyxMYwgEvqkrpxX6hiLwLA8YXyESLHVCk7r9djR8fmeaDMSABCryvu1PjUGDYmQnkBNHum9NhDpbW

Donate BTC: bc1qmg0jc8lnsqx82096cknfn9a8q6e723gm3kw23t

Popular repositories Loading

  1. minexmr2 minexmr2 Public

    First open-source Monero mining pool using decentralized p2pool as a hashrate-liquidity provider for frequent payouts (approx. 2.1 times/hour)

    C 30 7