Skip to content

Update monerod recommended args for v0.18.5.0 (SOCKS5, drop UPnP) #46

Description

@libre-7

Summary

Monero v0.18.5.0 "Fluorine Fermi" was released 2026-05-12. The container works fine with it as-is, but two changes to the recommended monerod CLI arguments in start.sh should be made to keep the Tor configuration current.

Changes that affect gupax-docker

1. 🔴 --tx-proxy format: SOCKS4 → SOCKS5

PRs #9443 (master) / #10411 (backport to release-v0.18) by vtnerd added SOCKS5 support to the daemon. The old comma-format --tx-proxy=tor,127.0.0.1:9050 was SOCKS4. The new URI format is --tx-proxy=socks5://127.0.0.1:9050.

Tested by nahuhh with Tor + I2P (comment on #9443): works correctly.

start.sh currently hardcodes the old format in 4 locations (echo'd banner + persisted monerod_onion.txt):

--tx-proxy=tor,127.0.0.1:9050

These should all become:

--tx-proxy=socks5://127.0.0.1:9050

SOCKS5 also adds optional username/password authentication (for I2P/Nym/Dante), but Tor doesn't use auth, so we don't need that.

2. 🟡 --no-igd is now a no-op

PR #10465: UPnP support (miniupnp) was completely removed from the daemon — 317 lines deleted across 19 files. The --no-igd flag we recommend is now meaningless. It's harmless (unknown flag or ignored), but should be cleaned up for accuracy. Remove --no-igd from all 4 locations.

3. Other changes — no action needed

  • Shutdown hang fixes (#10494, #10401, #10489): Net positive for Docker. Cleaner docker stop.
  • ZMQ improvements (#10389, #10399, #10453): Better pub-sub for P2Pool. No config change.
  • Wallet RPC changes (#10379, #10435): Wallet-side only, not monerod.
  • HTTP client auth hardening (#10364): Internal, no config change.
  • LoongArch support (#10400): Not relevant.

Why this matters

The user's monerod runs behind Tor in tx-only mode (--tx-proxy). Using the correct SOCKS5 protocol ensures:

  • Future compatibility (SOCKS4 may eventually be deprecated)
  • IPv6 support through the proxy (SOCKS4 is IPv4-only)
  • Clean, documented behavior matching what Monero upstream recommends

Why no Dockerfile change

Gupax downloads monerod at runtime — the image doesn't bundle it. So this is purely a start.sh documentation/recommendation update. Users will see the new flags in the startup banner and paste them into Gupax's Node → Arguments field.

Files to change

  • start.sh — 4 locations where monerod args are echoed (banner + monerod_onion.txt)
  • README.md — the setup section showing recommended monerod arguments

Implementation plan

  1. Branch: feat/monero-0.18.5-socks5
  2. In start.sh:
    • Replace --tx-proxy=tor,127.0.0.1:9050--tx-proxy=socks5://127.0.0.1:9050 (4 occurrences)
    • Remove --no-igd from all monerod argument blocks (4 occurrences)
  3. Update README setup section to match
  4. VM smoke test with TOR_ENABLED=true
  5. Unraid test — user verifies after Gupax upgrades monerod to 0.18.5.0

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions