[2026-06-22T01:15:18Z] just found a neat little text browser [2026-06-22T01:15:24Z] it hasn't been worked on since 2006 which is unfortunate [2026-06-22T01:15:30Z] but it's super tiny and easy to fiddle with [2026-06-22T01:15:35Z] "netrik" [2026-06-22T01:15:40Z] some guy called antrik wrote it [2026-06-22T01:15:51Z] the code is kind of clunky but it's only 7k lines of C [2026-06-22T01:16:05Z] i would really classify it as more of an html-aware pager than a browser [2026-06-22T01:16:07Z] which is a compliment [2026-06-22T01:16:33Z] literally only had to add two lines to have it support https since it offloads connections to wget [2026-06-22T01:16:40Z] but you could totally modify it to use any external client [2026-06-22T01:17:04Z] tbh if you were to clone links2's hooks system it would be really comfy... [2026-06-22T01:17:10Z] also the binary is *tiny* [2026-06-22T01:17:16Z] 99k on my setup [2026-06-22T01:17:21Z] with slackware mind [2026-06-22T01:17:34Z] i honestly might switch to it and start hacking on it [2026-06-22T01:18:02Z] the rendering is a little primitive which is totally fine. but it's enough to browse sdf [2026-06-22T01:18:15Z] i imagine invidious would be usable if it wasn't for that stupid fucking anubis bullshit [2026-06-22T01:18:49Z] but considering cookies are handled by an external client and there's an article i read a little while ago that implements an anubis solver in c... [2026-06-22T01:18:52Z] hm [2026-06-22T01:20:49Z] yeah this is super cute [2026-06-22T01:20:52Z] i like this a lot [2026-06-22T01:21:27Z] needs to have support for editing text fields and some way to understand when POST'ing is necessary and then it would be super usable [2026-06-22T01:21:38Z] honestly it even renders simple pages like wikipedia's entries really well [2026-06-22T01:22:30Z] since it offloads all the UI to curses it can even render non-latin languages [2026-06-22T01:23:12Z] cyrillic, arabic, hebrew, chinese, japanese, and various indian scripts all seem to work well [2026-06-22T01:23:57Z] sri lankan writing... greek... more scripts that i don't recognise, too [2026-06-22T01:23:58Z] wow [2026-06-22T01:28:03Z] needs to be modified to not use ncursesw if that's possible... that would break i18n but for my purposes that's fine [2026-06-22T02:20:53Z] midfavila: didn't anubis explicitly allow text browsers by default [2026-06-22T02:21:01Z] altho it might block wget [2026-06-22T02:25:14Z] dery last i heard that wasn't the case [2026-06-22T02:25:18Z] if so then that's slightly less annoying [2026-06-22T02:25:20Z] also [2026-06-22T02:25:41Z] i have managed to get netrik to compile using musl and netbsd curses [2026-06-22T02:25:47Z] it barely works but it does compile [2026-06-22T02:26:42Z] now to see if i can make it work with hurl [2026-06-22T02:33:15Z] what's hurl mid [2026-06-22T02:34:40Z] I found a thing but it's written in rust and IIRC you said you were avoiding stuff written in that? [2026-06-22T02:35:38Z] also based on curl lol [2026-06-22T02:35:42Z] definitely not what you're talking about [2026-06-22T02:40:15Z] hurl is from fastestcode [2026-06-22T02:40:20Z] i prefer apport because i'm vain [2026-06-22T02:40:24Z] but hurl is very good too [2026-06-22T02:40:40Z] it's a simple alternative to curl in <=1ksloc of C and it uses libtls [2026-06-22T02:40:47Z] so it can link against bearssl [2026-06-22T02:41:21Z] i'm trying to get something resembling a bare-minimum viable setup of my rootfs going tonight [2026-06-22T02:41:30Z] the last major thing i need is a basic browser [2026-06-22T02:41:42Z] links2 isn't something i feel like tinkering with atm [2026-06-22T02:41:53Z] so i'm working on netrik instead [2026-06-22T02:42:35Z] fortunately it's easy to work around the autotools build system it was written with, you can just do the stupid approach of cc*.c -o netrik -lcurses -lterminfo [2026-06-22T02:42:53Z] can you please link it? I can only find the rust thing xD [2026-06-22T02:43:00Z] last thing i need to do to have something sort of viable is figure out why it's not properly refreshing the window buffer when loading a new page [2026-06-22T02:43:03Z] sure [2026-06-22T02:43:06Z] one sec [2026-06-22T02:43:48Z] https://codemadness.org/hurl.html [2026-06-22T02:43:52Z] ty [2026-06-22T02:43:53Z] codemadness not fastestcode [2026-06-22T02:43:54Z] my bad [2026-06-22T02:43:59Z] nw [2026-06-22T02:44:22Z] nice! [2026-06-22T02:44:30Z] i don't like that the author wrote their own parser for URIs but it's still super clean [2026-06-22T02:44:57Z] and it's undeniable that their approach is both faster and results in a smaller binary size than my approach with apport, which uses posix's regex parser [2026-06-22T02:45:22Z] yea a dedicated parser will always win [2026-06-22T02:46:22Z] but yeah only things left for netrik are to like [2026-06-22T02:46:29Z] fix the rendering issue [2026-06-22T02:46:39Z] and maybe try implementing support for text fields and POSTing tonight [2026-06-22T02:48:22Z] i'll need to sit down and rewrite a good chunk of this since it's not implemented in as nice a way as i would like, not to mention adding hooks and a simple way to define keybinds... maybe do all that with a config.h file [2026-06-22T02:49:36Z] honestly the idea here is really nice... [2026-06-22T02:51:26Z] i could hook one of those plaintext bookmark management utilities into netrik with a bind, and handle multimedia with a plumbing script... [2026-06-22T02:52:10Z] fuck i need to do more computer stuff [2026-06-22T03:45:05Z] FUCK [2026-06-22T03:45:08Z] it is almost 6 [2026-06-22T03:45:16Z] gtg [2026-06-22T03:45:34Z] * dery disappears in one frame while screaming [2026-06-22T04:16:28Z] rip [2026-06-22T04:16:31Z] doing some more thinking [2026-06-22T04:16:55Z] why not have a lowest-common-denominator hypertext format for netrik [2026-06-22T04:17:13Z] and then have filters that accept, you know, html, or gopher, or gemini, or ftp listings, etcetera as input [2026-06-22T04:17:25Z] and then produce that simplified hypertext format to be fed into netrik [2026-06-22T04:17:52Z] then you could just implement support for whatever protocol(s) you want in your backend and netrik can handle the rest [2026-06-22T04:18:09Z] well, and implement a simple... transpiler? transparser? [2026-06-22T04:18:35Z] by essentially just mapping tags from the format you want to view to the LCD format [2026-06-22T04:19:13Z] you could even extend that to local documents e.g. man pages [2026-06-22T04:19:22Z] and then have a sort of info-like experience