Netsurf porting effort

Date: Wed, 05 Feb 2020 01:56:42 +0200
Subject: [9front] TODO Netsurf port to Plan 9

Dear all,

I have compiled a small TODO list for the port of Netsurf to Plan 9 from 
things that I can come to think of. I also made the list so that it 
would be easer to select a task for anyone that would find it fun to 
help out. Maybe you would like to play with something on the list? The 
support for various image formats could be one thing that is easy to do 
in parallel with other tasks.

I am not expecting changes in 9front just to compile upstream netsurf 
without patches, neither do I believe that the Netsurf team would change 
their code base too much in order for it to compile out of the box in 
Plan 9. All comments are welcome, however. As Ori and Kyle mentioned 
they were willing to work on some things, I put their names in brackets 
for those tasks :-)

Higher priority tasks:

* clean up the mkfiles, factor out common parts [Ori B]
* implement webfs fetcher backend [Kyle N]
* alternatively integrate with libcurl
* compress image updates sent to /dev/draw [Jonas A]
* iconv library support (convert between different character encodings.
* make content handlers for jpg, png & svg compile & work
    (netsurf/content/handlers/image/ now commented out in netsurf/mkfile)
* start on a native gui frontend (netsurf/frontends/plan9/gui.c)
    (lots of things, fonts handling etc.)
* netsurf/frontends/framebuffer/gui.c
    fix Options handling (argc/argv) in main()
* add support for pread() pwrite() and fceil() in APE
    (now implemented in posix/*)
* look into the warning "Using dodgy gettimeofday() fallback"
    in libnsutils/src/time.c

Maybe less important tasks: (mostly for easier upstream integration)

* make translator between flex/bison and lex/yacc for *.l and
    *.y files. Also something for perl scripts maybe.
* look into the macros in libwapcaplet. Not all macros are understood
    by cpp (now using function decl. from older version of the library.
* make the code in libnsfb-0.2.1/src/plot/*.c byte order agnostic
    (might not matter if we make an native GUI)
* implement VLA (Variable Lentgth Arrays) - or an good  way to
    avoid them (if upstream is updated)

Netusrf Project Style Guide: https://www.netsurf-browser.org/developers/StyleGuide.pdf

Netsurf for Plan 9 source: https://github.com/netsurf-plan9


To post a comment you need to login first.