Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restore Netsurf port #277

Open
5 tasks done
klange opened this issue Apr 18, 2023 · 2 comments
Open
5 tasks done

Restore Netsurf port #277

klange opened this issue Apr 18, 2023 · 2 comments

Comments

@klange
Copy link
Owner

klange commented Apr 18, 2023

ToaruOS once had a port of Netsurf, circa 2016. We should bring that back.

Netsurf has some dependencies which don't exist in the current port catalog:

  • Curl, which builds with some minor patches, including support for mbedtls.
  • zlib, which shouldn't have any issues, it was just largely obviated by toaru_inflate.
  • libpng, again, was obviated by toaru_png; I'd rather not rewrite things to use our libraries, so just porting these is worthwhile.
  • Freetype, which was working in Toaru 1.14.
  • libjpeg, which is optional but desirable; our JPEG parser is insufficient for most images on the Internet anyway.

During the last port of Netsurf, we did not have a BSD sockets layer and the Curl port was largely stubbed, so I'm not sure we were ever even able to load web pages, just local files on disk. I expect things will go a bit better this time around.

The framebuffer backend for Netsurf supports SDL, and the first pass at porting Netsurf should use it. A future improvement might be to write a native Yutani frontend - possibly one that makes use of our menu and button libraries.

@klange
Copy link
Owner Author

klange commented Apr 18, 2023

Curl builds with minor patches. Some changes to our libc were implemented to support it, but it also needs a couple of kludges to disable calls to select that were not guarded behind HAVE_SELECT, as well as disabling some uses of getaddrinfo that were not allowing failure.

Screenshot from 2023-04-17 15-45-40

Additionally, some changes to the configure script were necessary to support shared library builds, which are now functioning.

I will formulate patches for these changes and prepare Curl for packaging. My next focus will be on zlib, libpng, and freetype.

@klange
Copy link
Owner Author

klange commented Apr 24, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant