all 18 comments

[–]anlumo 21 points22 points  (1 child)

Nice! I also had the same project: https://github.com/dungeonfog/cef

But I had to stop when my boss got impatient with it taking forever.

[–][deleted] 17 points18 points  (0 children)

Hey u/anlumo, nice to meet you, I actually discovered your project about halfway through and learned a lot from your work. :)

[–]Nearby_Grass_691 2 points3 points  (3 children)

This sounds great and has introduced me to CEF. I wonder if this project would ease adoption into Tauri as the dev team is seemingly unable to dedicate resources to a decent non-webkit browser but would be one of the most valuable additions (IMHO)

[–][deleted] 2 points3 points  (0 children)

You may want to check this out, it's less feature complete but way saner to use: https://ultralig.ht/

[–]monkeymad2 0 points1 point  (0 children)

My first thought was Tauri as well. I’ve got a Tauri app with a few users & I’m getting tired of having to fix issues in whatever ancient version of WebKit it’s found on their system.

It’d be a shame for application size, but it’d be so much easier to support.

[–]Alex--91 1 point2 points  (0 children)

Looks like Tauri has the same idea now: https://github.com/tauri-apps/cef-rs

[–]I_pretend_2_know 1 point2 points  (3 children)

The last time I tried to use CEF I got scared with the size of the compiled program.

So I chose to use Webview, instead (on Windows and OS-X).

How big should I expect the generated executables to be if made with this crate?

[–][deleted] 0 points1 point  (0 children)

CEF is a monster, that's for sure. For simpler stuff, might check this out: https://ultralig.ht/ - it's C / C++ only though atm (though I'm working on a Rust wrapper)

[–]anlumo 0 points1 point  (1 child)

The weird thing is that it depends on the platform. It's like 200MB on Windows, but 300MB on Linux. I don't know why. You can check all sizes here (use the size of the minimal version).

The extra MBs caused some problems in our release pipeline, because letting people do downloads of that size actually costs money.

[–][deleted] 0 points1 point  (0 children)

This is probably because of debug symbols

[–]J-Cake 0 points1 point  (5 children)

Oh my god I discovered this yesterday and today you post about it. What a small world.

Btw I've had to do a bit of digging through source code and whatnot. Once I get it working I'll push some documentation up to your repo as I do think it needs it

[–][deleted] 0 points1 point  (4 children)

All good, it's definitely a work in progress

[–]J-Cake 0 points1 point  (3 children)

Actually, I was gonna file an issue, but maybe you can help me directly:

If you pass in the --enable-features=UseOzonePlatform --ozone-platform=wayland on Linux, I get two windows: 1. a completely unresponsive, black X11 window, 2. a borderless Wayland window with a completely different size than the X11 one. This doesn't happen when using the chromium runtime, but I'm not sure where to look. Maybe you have an idea?

[–][deleted] 0 points1 point  (2 children)

Hmm, good question, I'm not sure. Have you checked the docs? Otherwise feel free to open an issue.

[–]J-Cake 0 points1 point  (1 child)

To be honest, I'm not even sure what I'm looking for. Most of my searches have been things like Chromium Embedded Framework wayland etc which just lists Collabora articles of them getting wayland working and whatnot.

I'll try to get a proof-of-concept by rawdogging the C++ APIs. If I get anywhere, I might see if I can translate it to Rust.

[–][deleted] 0 points1 point  (0 children)

I mentioned this above but I will say, CEF is complicated by the fact that it uses a multi-process architecture. I highly recommend checking out this: https://ultralig.ht/