On 2025/03/14 14:13, Aaron Bieber <aa...@bolddaemon.com> wrote:
> Hi,
>
> Here are updates to the Reticulum stack. Nomadnet runs fine for me.
>
> I'll probably commit this today or tomorrow if I no one objects.
>
> Cheers,
> Aaron
Hi, thanks for updating these ports.
py-rns-0.9.3 works fine, as far as I tested, but 'make test' fails: see the
attached log file.
Moreover, it would be very useful to include a README for people wanting to use
rnodeconf, since its usage on OpenBSD is not documented anywhere. Patch
attached.
Best regards.
============================= test session starts ==============================
platform openbsd7 -- Python 3.12.9, pytest-8.3.5, pluggy-1.5.0 -- /usr/local/bin/python3.12
cachedir: .pytest_cache
rootdir: /usr/ports/pobj/py-rns-0.9.3/rns-0.9.3
collecting ... collected 0 items / 1 error
==================================== ERRORS ====================================
________________________ ERROR collecting tests/all.py _________________________
ImportError while importing test module '/usr/ports/pobj/py-rns-0.9.3/rns-0.9.3/tests/all.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/local/lib/python3.12/site-packages/pyximport/_pyximport3.py:318: in create_module
so_path = build_module(spec.name, pyxfilename=spec.origin, pyxbuild_dir=self._pyxbuild_dir,
/usr/local/lib/python3.12/site-packages/pyximport/_pyximport3.py:197: in build_module
so_path = pyxbuild.pyx_to_dll(pyxfilename, extension_mod,
/usr/local/lib/python3.12/site-packages/pyximport/pyxbuild.py:103: in pyx_to_dll
dist.run_commands()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/dist.py:954: in run_commands
self.run_command(cmd)
/usr/local/lib/python3.12/site-packages/setuptools/dist.py:995: in run_command
super().run_command(command)
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/dist.py:973: in run_command
cmd_obj.run()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py:359: in run
self.build_extensions()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py:476: in build_extensions
self._build_extensions_serial()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py:502: in _build_extensions_serial
self.build_extension(ext)
/usr/local/lib/python3.12/site-packages/Cython/Distutils/build_ext.py:130: in build_extension
new_ext = cythonize(
/usr/local/lib/python3.12/site-packages/Cython/Build/Dependencies.py:1072: in cythonize
safe_makedirs_once(dir)
Cython/Utils.py:90: in Cython.Utils.cached_function.wrapper
???
Cython/Utils.py:220: in Cython.Utils.safe_makedirs
???
Cython/Utils.py:217: in Cython.Utils.safe_makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:215: in makedirs
???
<frozen os>:225: in makedirs
???
E PermissionError: [Errno 13] Permission denied: '/py-rns-0.9.3_writes_to_HOME'
During handling of the above exception, another exception occurred:
/usr/local/lib/python3.12/importlib/__init__.py:90: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
tests/__init__.py:25: in <module>
import RNS; compiling = False
/usr/local/lib/python3.12/site-packages/pyximport/_pyximport3.py:336: in create_module
raise exc.with_traceback(tb)
/usr/local/lib/python3.12/site-packages/pyximport/_pyximport3.py:318: in create_module
so_path = build_module(spec.name, pyxfilename=spec.origin, pyxbuild_dir=self._pyxbuild_dir,
/usr/local/lib/python3.12/site-packages/pyximport/_pyximport3.py:197: in build_module
so_path = pyxbuild.pyx_to_dll(pyxfilename, extension_mod,
/usr/local/lib/python3.12/site-packages/pyximport/pyxbuild.py:103: in pyx_to_dll
dist.run_commands()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/dist.py:954: in run_commands
self.run_command(cmd)
/usr/local/lib/python3.12/site-packages/setuptools/dist.py:995: in run_command
super().run_command(command)
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/dist.py:973: in run_command
cmd_obj.run()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py:359: in run
self.build_extensions()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py:476: in build_extensions
self._build_extensions_serial()
/usr/local/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py:502: in _build_extensions_serial
self.build_extension(ext)
/usr/local/lib/python3.12/site-packages/Cython/Distutils/build_ext.py:130: in build_extension
new_ext = cythonize(
/usr/local/lib/python3.12/site-packages/Cython/Build/Dependencies.py:1072: in cythonize
safe_makedirs_once(dir)
Cython/Utils.py:90: in Cython.Utils.cached_function.wrapper
???
Cython/Utils.py:220: in Cython.Utils.safe_makedirs
???
Cython/Utils.py:217: in Cython.Utils.safe_makedirs
???
E ImportError: Building module RNS failed: ["PermissionError: [Errno 13] Permission denied: '/py-rns-0.9.3_writes_to_HOME'\n"]
------------------------------- Captured stdout --------------------------------
Compiling RNS object code...
=========================== short test summary info ============================
ERROR tests/all.py
!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
=============================== 1 error in 0.98s ===============================
*** Error 2 in . (/usr/ports/lang/python/python.port.mk:397 'do-test': @ cd /usr/ports/pobj/py-rns-0.9.3/rns-0.9.3 && /usr/bin/env -i CC=cc ...)
Index: Makefile
===================================================================
RCS file: /cvs/ports/net/py-rns/Makefile,v
diff -u -p -r1.2 Makefile
--- Makefile 15 Mar 2025 00:40:00 -0000 1.2
+++ Makefile 16 Mar 2025 20:55:55 -0000
@@ -3,6 +3,7 @@ COMMENT = cryptography-based networking
MODPY_DISTV = 0.9.3
DISTNAME= rns-${MODPY_DISTV}
PKGNAME = py-${DISTNAME}
+REVISION = 0
CATEGORIES = net devel
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/net/py-rns/pkg/PLIST,v
diff -u -p -r1.2 PLIST
--- pkg/PLIST 15 Mar 2025 00:40:00 -0000 1.2
+++ pkg/PLIST 16 Mar 2025 20:55:56 -0000
@@ -274,3 +274,4 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/rns-${MODPY_DISTV}.dist-info/WHEEL
lib/python${MODPY_VERSION}/site-packages/rns-${MODPY_DISTV}.dist-info/entry_points.txt
lib/python${MODPY_VERSION}/site-packages/rns-${MODPY_DISTV}.dist-info/top_level.txt
+share/doc/pkg-readmes/${PKGSTEM}
Index: pkg/README
===================================================================
RCS file: pkg/README
diff -N pkg/README
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ pkg/README 16 Mar 2025 20:55:56 -0000
@@ -0,0 +1,25 @@
++-----------------------------------------------------------------------
+| Running ${PKGSTEM} on OpenBSD
++-----------------------------------------------------------------------
+
+Connect to RNodes with rnodeconf
+================================
+
+The rnodeconf utility can control, configure and provision RNodes
+attached as USB serial devices.
+
+To access an RNode over USB, the user must be in the dialer group:
+
+ usermod -G dialer <user>
+
+The corresponding virtual device will most often be /dev/cuaU0. See
+cua(4) for explanations.
+
+For example, you could get info about your RNode by running:
+
+ rnodeconf --info /dev/cuaU0
+
+Please note that to create a new RNode with an nRF52-based device, like
+the RAK4631 or LilyGO T-Echo, rnodeconf requires the python
+adafruit-nrfutil package, which is not yet included in OpenBSD ports,
+but can be installed from PyPI.