David Uhden Collado wrote:
Hello,Please find attached two new ports: - net/monero 0.18.5.4 - net/monero-lws 1.0.4 Upstream: https://github.com/monero-project/monero https://github.com/vtnerd/monero-lws Monero provides the blockchain daemon, CLI wallet, wallet RPC server and related utilities. Monero LWS provides a lightweight wallet backend using view keys without requiring clients to scan the entire blockchain. Both ports include OpenBSD compatibility patches for LMDB, CMake, Protobuf, HIDAPI, Boost and system libraries. The packages also provide two rc.d services: - monerod, running as _monerod. - monero_lws, sharing the same system account. The attached infrastructure/db/user.list patch reserves the _monerod account. The net/monero package creates the user and group, with /sbin/nologin as the shell. No additional user is needed for LWS. The services use the following configuration and data directories: /etc/monero/ /var/monero/ /etc/monero-lws/ /var/monero-lws/ Configuration files are installed under share/examples and handled through @sample. Both services also have separate log directories under /var/log. The monerod service includes a login class with an open file limit of 4096. LWS connects to the Monero daemon through ZMQ RPC and listens on 127.0.0.1:8443 by default. The LWS port builds against Monero 0.18.5.4 and declares the matching net/monero package as a runtime dependency. Its Monero-specific patches are kept under files/monero. I've also attached the corresponding net/Makefile and infrastructure/db/user.list changes. I would appreciate review and testing, particularly of the shared system account, rc.d integration and OpenBSD compatibility patches. Thank you for your time and consideration. Best regards, David.
Hello, Please find attached updated ports for Monero and Monero LWS. I believe I have found another major cause of Monero's poor performance on OpenBSD, besides LMDB: the assembler. OpenBSD previously included an outdated version of GNU Assembler in the base system. It now appears to have been removed in favorof LLVM. However, LLVM on OpenBSD does not include llvm-mc, while upstream builds with the GNU toolchain (GCC and binutils).
I have modified both ports to use GNU Assembler from ports at build time for the RandomX assembly code. Together with the LMDB changes, I believe all the potential causes of poor performance I have identified have now been addressed at the patch level. I think both ports are ready for import. Thanks, David.
monero-v2.tar.gz
Description: application/gzip
monero-lws-v2.tar.gz
Description: application/gzip
