5 ms·
There is no technical reason one could not port Chromium or Firefox at this point; it's simply that nobody has put the time in to do it (as you can imagine, por
by waddlesplash 5y ago
There is no technical reason one could not port Chromium or Firefox at this point; it's simply that nobody has put the time in to do it (as you can imagine, porting a web browser is not an easy task.)
- ori_b 5y agoThere's 600+ patches needed to build chrome on BSD, and upstream is constantly churning, which means they need maintenance. Upstream refuses to import anything related to BSD support, so they need to be maintained out of tree. And this is for a much more popular set of projects. "Not an easy task" is a bit of an understatement.
- HeckFeck 5y agoI've built Firefox on NetBSD. I wonder how many patches are required for it. Presumably the use of rust is a dependency that needs fulfilled for building FF. Looks like there has been some work on getting rust to play with Haiku at both the Rust and Haiku ends: https://docs.rs/haiku/0.2.0/haiku/ https://docs.rs/haiku/0.2.0/haiku/ https://www.haiku-os.org/blog/nielx/2020-09-06_rust_on_haiku_the_case_of_the_disappearing_deceased_threads/ https://www.haiku-os.org/blog/nielx/2020-09-06_rust_on_haiku...
- nix23 5y agoThat much: https://github.com/NetBSD/pkgsrc/tree/trunk/www/firefox/patches https://github.com/NetBSD/pkgsrc/tree/trunk/www/firefox/patc...
- rjsw 5y agoSome of those are for optional features like WebRTC, they are not all needed for a functional browser.
- codetrotter 5y agoThis thread is about fully featured browsers though. I think without WebRTC you can not call the browser fully featured.
- rjsw 5y agoFirefox 52 is the last version that can be built without Rust, it is kept in pkgsrc for that reason.
- leoc 5y agoThe demise of TenFourFox is relevant: http://tenfourfox.blogspot.com/2020/04/the-end-of-tenfourfox-and-what-ive.html http://tenfourfox.blogspot.com/2020/04/the-end-of-tenfourfox... .
- yjftsjthsd-h 5y ago> as you can imagine, porting a web browser is not an easy task I would imagine, but now I'm trying to figure out why; do they really use that much API surface? Network access should be simple enough, they need audio, keyboard input, and a canvas/surface to render to, but what else?
- panta 5y agoHW accelerated audio/video encoders/decoders (eg for WebRTC), mic, camera, crypto, ...
- phendrenad2 5y agoI think the problem is most modern browsers are a pile of open-source libraries at the bottom, any of which may use architecture-specific and/or compiler-specific native code. Also different systems have slightly different toolchains, for instance, compiling BSD on Linux can't be done because Linux GCC can't handle the divergent BSD GCC makefiles. D'oh! Wonder how that happened, surely they'll fix it soon...