The Rocketpool package for Dappnode is not production ready and should not have been released in its current state.
I was an early adopter (so for me: risks understood!) and I installed it about a week before it was released in late May/early June. (Not that it matters for the purposes of this post, but I am a Dappnode ‘community steward’). The Rocketpool package has not been updated since then and uses v1.9.2 of the Rocketpool smart node.
There has been next to no official support provided for this package on the Dappnode discord: I know because I have been the one providing unofficial support to other people. Here are some of the current issues:
- If the underlying execution layer client becomes unavailable, the Rocketpool client wrapper (that is to say: the Dappnode ‘engine’ behind the official rocketpool client) will fail after three attempts to reach the EL. This means that, if you change out your EL, or purge your EL, or your EL for any reason isn’t 100% synced, Dappnode-Rocketpool will silently give up after three attempts. It will still appear to be running on your Dappnode dashboard and the only way to know it isn’t working is to look at the logs.
- According to Rocketpool, 15-20% of all dissolved minipools are Dappnode users. I was one of the first, because of the above issue. Despite plenty of monitoring, I didn’t realize that my Rocketpool package wasn’t running at a critical time during minipool formation and it was dissolved. As a result, to recover all of the ETH supporting my two minipools, I had to allocate 31 ETH to each minipool and wait for the activation queue (tying up 31 ETH or about $59k USD for (activation queue length * 2) days – currently about 90 – or else double that amount of 45 days.
- The current Rocketpool smart node version is 1.9.8. Dappnode’s is 6 releases behind at 1.9.2.
- There is no way to interact with the Rocketpool client outside of the handful of functions wrapped in the Dappnode UI. You can stake ETH and RPL; you can register your node; you can create minipools. I believe you can claim rewards. You cannot do anything else unless you have sufficient familiarity with Docker to SSH into your dappnode and use the CLI with a couple of options (rocketpool --allow-root -d /usr/local/bin/rocketpoold -c /app/rocketpool (cmd) for anyone interested). You cannot exit a minipool (much less rescue a dissolved one) without this Docker/CLI workaround, and even with that you have to work with a version 6 releases behind.
- Neither the original Dappnode developer responsible for the package nor the newer developer who appears to have taken over for the original one have said anything about a roadmap or timeline for any of these issues to be resolved
As a frame of reference, the Rocketpool support folks are extremely responsive and have helped a number of people (including me) salvage the situation caused by our early adoption. They are advising people not to use Dappnode. Right now, this is good advice. It looks like nobody is driving the bus. Some of these issues were posted on the Github issues page and they have not been addressed. It’s possible that they’re being fixed (or have already been fixed!) but difficult to know.
This isn’t a dig on the Dappnode team. Their regular support for everyday, non-Rocketpool users is great. I also want to be sensible of the usual consideration one gives to demanding updates to free software: these things take time and with Real Money involved, obviously it’s better to do it right than do it quickly. What needs to happen, though, is for an official Dappnode rep to get out ahead of these issues, post a roadmap, and mend the fences with Rocketpool support so that they aren’t left picking up the pieces and discouraging Dappnode adoption.
I’m going to take stock of the situation a week from today. My alternative is to wipe my Dappnode and build a standalone EL/CL machine with the regular Rocketpool smart node in ‘external’ mode so I can run my solo validator alongside my minipools (once they’re done being rescued…at the end of August). This is several hours of work (at least) and I will lose several cool things I love about Dappnode. But one needs a certain level of control over this stuff, and the best UI and convenience tooling in the world doesn’t help if you can’t interact with the system the way you need to.