On Sat 14/12/2024 14:35, Christoph Liebender wrote:
> Am 14.12.24 um 13:26 schrieb Björn Ketelaars:
> > On Sat 14/12/2024 00:08, Christoph Liebender wrote:
> > > Hello there everyone.
> > > 
> > > This is my first try at contributing to the OpenBSD ports tree:
> > > 
> > > https://liebender.dev/patches/openbsd-ports/wstunnel-port.tar.gz
> > > 
> > > wstunnel is useful in case you want to connect to your OpenBSD box, given
> > > that
> > > you are behind some firewall that restricts traffic to certain ports - for
> > > example, you can configure wstunnel to listen on :443 and connect to your
> > > box
> > > via that port, to then route all your traffic to the wireguard interface 
> > > of
> > > your server. There are other usecases though, but this is my primary one.
> > > 
> > > Now, there are two patches included, even though wstunnel compiles on
> > > OpenBSD
> > > amd64 just fine. I had to apply these because the original Cargo.toml
> > > references a github repository as a crate: fastwebsockets. In this case, 
> > > the
> > > developer of wstunnel made changes to the original crate which they did 
> > > not
> > > (yet?) upstream, and their fork does not include any tags for the 
> > > Cargo.toml
> > > to reference. This is why I am patching Cargo.toml to reference the 
> > > original
> > > crate and then apply the changes of the wstunnel developer on top. I 
> > > edited
> > > crates.inc manually in this case to add fastwebsockets-0.8.0. Is there a
> > > better
> > > way? `make modcargo-gen-crates` apparently only reads the unpatched,
> > > original
> > > Cargo.toml.
> > > 
> > > Anyway, I'm glad to receive any feedback or comments. Thanks.
> > > 
> > > - Christoph
> > 
> > Great start, thanks!
> 
> Many thanks for your suggestions! The OpenBSD porting tools seem to be more
> flexible than I initially thought :b
> 
> > - wstunnel.rc feels incomplete: Please check if there are some sane/safe
> >    daemon_flags that can be added. Also, check if rc_bg=YES is needed.
> 
> Yes, I have checked again and there probably also needs to be `--no-color
> true` because otherwise wstunnel would fill the log with escape-sequences.
> Though, would it make sense to "enforce" this argument no matter what
> deamon_flags are set? Does this need a custom rc_cmd?
> And yes, rc_bg=YES is needed because wstunnel stays in the foreground.
> 
> I have applied your changes and reuploaded a v2 tarball to:
> 
> https://liebender.dev/pub/openbsd-ports/wstunnel-port-v2.tar.gz (it is also
> attached for convenience)
> 
> -#584 _nepenthes              _nepenthes      net/nepenthes
> +584 _wstunnel                _wstunnel       net/wstunnel

Recycling id 584 should be ok.

Concerning the port itself, couple of things:
- No need for the GH_* stuff. "DIST_TUPLE+=github erebe wstunnel v10.1.7
  ." already does the heavy lifting.
- As a consequence you need to re-run 'make makesum' as PLIST needs to
  be updated.
- Maybe make the --no-color flag default?


diff -ruN wstunnel.orig/Makefile wstunnel/Makefile
--- wstunnel.orig/Makefile      Sat Dec 14 13:47:35 2024
+++ wstunnel/Makefile   Sat Dec 14 18:55:17 2024
@@ -3,10 +3,6 @@
 DIST_TUPLE +=          github erebe wstunnel v10.1.7 .
 DIST_TUPLE +=          github erebe fastwebsockets 
ef904598ec168d7748b28d77ec1803ba721932d8 fastwebsockets
 
-GH_ACCOUNT =           erebe
-GH_PROJECT =           wstunnel
-GH_TAGNAME =           v10.1.7
-
 CATEGORIES =           net
 
 HOMEPAGE =             https://github.com/erebe/wstunnel
diff -ruN wstunnel.orig/distinfo wstunnel/distinfo
--- wstunnel.orig/distinfo      Sat Dec 14 14:22:21 2024
+++ wstunnel/distinfo   Sat Dec 14 18:55:24 2024
@@ -346,7 +346,6 @@
 SHA256 (cargo/zerovec-derive-0.10.3.tar.gz) = 
bq+m37F1hOo+K9bnbgzBWtevErCavdHKVZYb7ZsQY8Y=
 SHA256 (erebe-fastwebsockets-ef904598ec168d7748b28d77ec1803ba721932d8.tar.gz) 
= pTk3zyTTSZ0jr2ofJrFT4W3HZ15YwiySddSrPzmd6WY=
 SHA256 (erebe-wstunnel-v10.1.7.tar.gz) = 
fMEWgfd+tQMxEzKZF0FQ7ekp7azzgbsGq3YgU3cLoDs=
-SHA256 (wstunnel-10.1.7.tar.gz) = fMEWgfd+tQMxEzKZF0FQ7ekp7azzgbsGq3YgU3cLoDs=
 SIZE (cargo/addr2line-0.24.2.tar.gz) = 39015
 SIZE (cargo/adler2-2.0.0.tar.gz) = 13529
 SIZE (cargo/ahash-0.8.11.tar.gz) = 43607
@@ -695,4 +694,3 @@
 SIZE (cargo/zerovec-derive-0.10.3.tar.gz) = 19438
 SIZE (erebe-fastwebsockets-ef904598ec168d7748b28d77ec1803ba721932d8.tar.gz) = 
57473
 SIZE (erebe-wstunnel-v10.1.7.tar.gz) = 281043
-SIZE (wstunnel-10.1.7.tar.gz) = 281043
diff -ruN wstunnel.orig/pkg/wstunnel.rc wstunnel/pkg/wstunnel.rc
--- wstunnel.orig/pkg/wstunnel.rc       Sat Dec 14 13:41:17 2024
+++ wstunnel/pkg/wstunnel.rc    Sat Dec 14 18:56:03 2024
@@ -1,9 +1,9 @@
 #!/bin/ksh
 
-daemon="${TRUEPREFIX}/bin/wstunnel"
+daemon="${TRUEPREFIX}/bin/wstunnel --no-color true"
 daemon_user="_wstunnel"
 daemon_logger="daemon.info"
-daemon_flags="server wss://localhost:8080 --no-color true"
+daemon_flags="server wss://localhost:8080"
 
 . /etc/rc.d/rc.subr
 

Reply via email to