Re: New port: www/chawan

[email protected] Thu, 06 Aug 2026 06:00:02 +0000
Newsgroups gmane.os.openbsd.ports
Message-ID <Limba4-ac6O6UHJz8PzTlnGzqwDfTnU714AFB09WnYgLJGJNsQw6XEiYFfhMtkBqH79WQGIz8bz2wIhwV27JqHnCffxe05iBdwZ4sF5U0VM=@protonmail.com>
--b1=_1YQ1O1JwwVzACzPg6rVioCjgjPpXs65QnobjYLfI
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

P=C3=A5 mandag 3. august 2026 kl. 16:08, skrev prx <[email protected]>:

> * Lydia Sobot <[email protected]> le [31-07-2026 20:13:33 +0200]:
> > Ping ping ping, version 0.4.4 attached
> >
>
> Hi,
>
> finally tested it.
> It is indeed a great browser I might use daily to replace w3m.
> Port build without issue on amd64.
>
> Thanks!
>
> prx
>
> > On Fri Jul 17, 2026 at 21:40 CEST, Lydia Sobot wrote:
> > > Ping
> > >
> > > On July 7, 2026 20:14:38 GMT+02:00, Lydia Sobot <chilledfrogs@disroot=
.org> wrote:
> > >>Anyone?
> > >>
> > >>On June 28, 2026 1:13:59 GMT+02:00, Lydia Sobot <chilledfrogs@disroot=
.org> wrote:
> > >>>Hi all, attached is Chawan, a cozy small web browser (i.e. it suppor=
ts
> > >>>HTTP, but also Gemini, Gopher, and some other protocols). Been using=
 it
> > >>>on and off and as my aerc mail HTML renderer instead of w3m, works l=
ike
> > >>>a charm on arm64. More testing very welcome, as I tried to ensure Ni=
m
> > >>>plays nicely with the ports build system as there is no module.
> > >>
> >
>
>
>

Built/tested on current/amd64 with privsep.

$ cd /usr/ports/www/chawan/ && make clean=3Dall clean && make build package=
 test ; make port-lib-depends-check check-shlib-syms

=3D=3D=3D>  Regression tests for chawan-0.4.3
mkdir -p /usr/ports/pobj/chawan-0.4.3/nimcache
(cd test/js && ./run.sh)
window.htmlmlllplus.htmltmlracking.app.html
(cd test/layout && ./run.sh)
z-index-for-table.htmltrinsic-min-width.htmlce.htmltmlth.htmlsa.htmll
nim --nimcache:/usr/ports/pobj/chawan-0.4.3/nimcache c test/net/run.nim
Hint: used config file '/etc/nim/nim.cfg' [Conf]
Hint: used config file '/usr/ports/pobj/chawan-0.4.3/chawan-v0.4.3/nim.cfg'=
 [Conf]
...........................................................................=
..........................................................................
CC: system/exceptions.nim
CC: system/ctypes.nim
CC: std/private/digitsutils.nim
CC: std/assertions.nim
CC: std/objectdollar.nim
CC: system/dollars.nim
CC: std/syncio.nim
CC: system.nim
CC: parseutils.nim
CC: math.nim
CC: algorithm.nim
CC: std/strbasics.nim
CC: strutils.nim
CC: std/oserrors.nim
CC: posix.nim
CC: options.nim
CC: times.nim
CC: std/envvars.nim
CC: std/cmdline.nim
CC: hashes.nim
CC: tables.nim
CC: heapqueue.nim
CC: sets.nim
CC: deques.nim
CC: asyncfutures.nim
CC: std/monotimes.nim
CC: nativesockets.nim
CC: net.nim
CC: kqueue.nim
CC: selectors.nim
CC: asyncdispatch.nim
CC: asyncnet.nim
CC: uri.nim
CC: httpcore.nim
CC: asynchttpserver.nim
CC: utils/twtstr.nim
CC: io/chafile.nim
CC: run.nim
Hint:  [Link]
Hint: mm: refc; opt: none (DEBUG BUILD, `-d:release` generates faster code)
61831 lines; 16.882s; 110.168MiB peakmem; proj: /usr/ports/pobj/chawan-0.4.=
3/chawan-v0.4.3/test/net/run.nim; out: /usr/ports/pobj/chawan-0.4.3/chawan-=
v0.4.3/test/net/run [SuccessX]
(cd test/net && ./run.sh)
cookie.http
(cd test/md && ./run.sh)
thematic-break.mdd.mdch.mdeof.md
(cd test/pager && ./run.sh)
mkdir -p .obj/chagashi_test
cp test/charset/data.tar.xz .obj/chagashi_test
unxz .obj/chagashi_test/data.tar.xz
tar xf .obj/chagashi_test/data.tar -C .obj/chagashi_test
(cd test/charset && ./run.sh)
nim --nimcache:/usr/ports/pobj/chawan-0.4.3/nimcache r --verbosity:0 test/c=
harset/basic.nim
CGS_TESTDIR=3D.obj/chagashi_test nim --nimcache:/usr/ports/pobj/chawan-0.4.=
3/nimcache r --verbosity:0 test/charset/data.nim
(cd test/nim && nim --nimcache:/usr/ports/pobj/chawan-0.4.3/nimcache r --ve=
rbosity:0 ttwtstr.nim)
--
// Look fine? No issues from checks

# TRUSTED_PKG_PATH=3D/usr/ports/packages/amd64/all/ pkg_add -Dsnap chawan
chawan-0.4.3: ok
--

Nits in Makefile:
BUILD_DEPENDS =3D lang/nim #security/libssh2 archivers/brotli

Think the comment above was leftover by mistake?

Also while no spaces where tabs are preferred, but the lines are not
very symmetrical? Staggered rather than consistent. Not big.
Possible change below.

Spelling/grammar looks fine.

Otherwise I can also attest to this building and running.

$ cha --version
Chawan browser v0.4.3 (release, sandboxed by pledge, poll uses poll)

This is was with foot on sway if it makes any difference. Could make
images load with the alt-i key combo, which was odd but cool in a
terminal browser for me at least.

Looks neat. Bit better than lynx for github pages, though w3m has tabs,
but no github display(though everything else loads). This along with
surf, all these options are great to have.

Thanks for the port. Might use this regularly in multiple foot
windows.

Sorry for any noise.

Hope this helps and may you have a cool one.
--
yaydn

An example for possible changes for Makefile:

ONLY_FOR_ARCHS =3D=09amd64 arm64 i386 # Nim arches

COMMENT =3D=09TUI web/Gopher/Gemini/SFTP browser with CSS and JS support
DIST_TUPLE +=3D=09srht bptato chawan v$V .
V =3D=09=090.4.3

CATEGORIES =3D=09www sysutils
HOMEPAGE =3D=09https://chawan.net/

MAINTAINER =3D=09Lydia Sobot <[email protected]>

# Public Domain/Unlicense,
# see https://git.sr.ht/~bptato/chawan/tree/HEAD/res/license.md for deps
PERMIT_PACKAGE =3D=09Yes

WANTLIB +=3D=09brotlicommon brotlidec c crypto m ssh2 ssl

BUILD_DEPENDS =3D=09lang/nim
LIB_DEPENDS =3D=09security/libssh2 archivers/brotli

FAKE_FLAGS =3D=09PREFIX=3D${LOCALBASE} MANPREFIX=3D${LOCALBASE}/man
TEST_FLAGS =3D=09NIMC=3D"nim --nimcache:${NIMCACHE} c" NIM=3D"nim --nimcach=
e:${NIMCACHE}"
NIMCACHE =3D=09${WRKDIR}/nimcache
USE_GMAKE =3D=09Yes

WRKDIST =3D=09${WRKDIR}/chawan-v$V

pre-test:
=09mkdir -p ${NIMCACHE}

.include <bsd.port.mk>

--
Don't know if that reads better. Thoughts?
--b1=_1YQ1O1JwwVzACzPg6rVioCjgjPpXs65QnobjYLfI
Content-Type: application/octet-stream; name=Makefile
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=Makefile

T05MWV9GT1JfQVJDSFMgPQlhbWQ2NCBhcm02NCBpMzg2ICMgTmltIGFyY2hlcwoKQ09NTUVOVCA9
CVRVSSB3ZWIvR29waGVyL0dlbWluaS9TRlRQIGJyb3dzZXIgd2l0aCBDU1MgYW5kIEpTIHN1cHBv
cnQKRElTVF9UVVBMRSArPQlzcmh0IGJwdGF0byBjaGF3YW4gdiRWIC4KViA9CQkwLjQuMwoKQ0FU
RUdPUklFUyA9CXd3dyBzeXN1dGlscwpIT01FUEFHRSA9CWh0dHBzOi8vY2hhd2FuLm5ldC8KCk1B
SU5UQUlORVIgPQlMeWRpYSBTb2JvdCA8Y2hpbGxlZGZyb2dzQGRpc3Jvb3Qub3JnPgoKIyBQdWJs
aWMgRG9tYWluL1VubGljZW5zZSwKIyBzZWUgaHR0cHM6Ly9naXQuc3IuaHQvfmJwdGF0by9jaGF3
YW4vdHJlZS9IRUFEL3Jlcy9saWNlbnNlLm1kIGZvciBkZXBzClBFUk1JVF9QQUNLQUdFID0JWWVz
CgpXQU5UTElCICs9CWJyb3RsaWNvbW1vbiBicm90bGlkZWMgYyBjcnlwdG8gbSBzc2gyIHNzbAoK
QlVJTERfREVQRU5EUyA9CWxhbmcvbmltCkxJQl9ERVBFTkRTID0Jc2VjdXJpdHkvbGlic3NoMiBh
cmNoaXZlcnMvYnJvdGxpCgpGQUtFX0ZMQUdTID0JUFJFRklYPSR7TE9DQUxCQVNFfSBNQU5QUkVG
SVg9JHtMT0NBTEJBU0V9L21hbgpURVNUX0ZMQUdTID0JTklNQz0ibmltIC0tbmltY2FjaGU6JHtO
SU1DQUNIRX0gYyIgTklNPSJuaW0gLS1uaW1jYWNoZToke05JTUNBQ0hFfSIKTklNQ0FDSEUgPQkk
e1dSS0RJUn0vbmltY2FjaGUKVVNFX0dNQUtFID0JWWVzCgpXUktESVNUID0JJHtXUktESVJ9L2No
YXdhbi12JFYKCnByZS10ZXN0OgoJbWtkaXIgLXAgJHtOSU1DQUNIRX0KCi5pbmNsdWRlIDxic2Qu
cG9ydC5taz4K

--b1=_1YQ1O1JwwVzACzPg6rVioCjgjPpXs65QnobjYLfI--