Adamcake / Bolt

An alternative launcher for your favourite MMO
GNU Affero General Public License v3.0
122 stars 18 forks source link

CEF binaries are out of date #48

Closed kmcgurty closed 2 weeks ago

kmcgurty commented 2 weeks ago

The CEF binaries listed at https://adamcake.com/cef (linked in the readme) are out of date, causing the Cloudflare robot check to fail. Spotify offers the most recent binaries here if you'd like to link to these instead.

Chrome 114 is from May 2023, the latest stable is version 126. Not sure of what version is packed with the flatpak app?

Adamcake commented 2 weeks ago

What exactly is failing and are you sure that's the reason? Having to go through the robot check multiple times is a common complaint, even from people using the actual launcher on Windows. And if you've been logging in a lot of times in one day from the same IP address, then it gets even more likely. As far as I know the actual jagex launcher's bundled CEF version is even older than 114.

If you read that link you'll see what makes these builds different form the official ones:

All were made specifically with the aim of disabling as many pointless features as possible. [...] with almost every optional feature being disabled at build time, such as widevine, rlz, extensions, hangouts, printers, gnome-keyring, and probably more. [...] "ungoogled" means the build had the ungoogled-chromium patchset applied to it.

Of course, you can download an official binary and build with that if you'd like.

Not sure of what version is packed with the flatpak app?

It's also version 114, but not exactly the same build, as I had to apply some patches from org.chromium.Chromium to it to allow chromium's sandbox and flatpak's sandbox to be able to work together.

kmcgurty commented 2 weeks ago

I can't say for sure exactly what's wrong since I can't tell why Cloudflare is failing. I just tested it again, and it the ungoogled and minimal-ungoogled both fail the robot check. As a sanity check, I can run navigator.userAgent in the dev console and it indeed spits out that it's version 114 (and 126 when I used the updated binary). I'm currently on Pop_OS (Ubuntu) 22.04.

Steps to reproduce:

  1. Extract 114 contents into Bolt/cef
  2. Rename the containing folder to dist
  3. Run these commands
    cmake -S . -B build -D CMAKE_BUILD_TYPE=Release -D BOLT_SKIP_LIBRARIES=1 -D BOLT_DEV_SHOW_DEVTOOLS=1 -D BOLT_DEV_LAUNCHER_DIRECTORY=1
    cmake --build build
    cmake --install build --prefix build
    ./build/bolt.sh
  4. Try to sign in
  5. Get prompted with a robot check, click it. It takes 5 seconds or so, and refreshes - wanting me to click it again

The only way I've been able to get around it, is using the updated 126 binaries. Interestingly, the flatpak version runs totally fine for me, so that indicates it's not related to 114, and something else?

I'm fine with closing this if no one else is having the problem.

Adamcake commented 2 weeks ago

Yeah, point 5 is a quite common complaint made by all launcher users, including the official jagex launcher. User-agent string might be a small factor in cloudflare's decision making but it's more likely to be that you've been logging in too often while working on PRs recently. It's also known to happen if using a VPN. I just tested it this morning after seeing your issue and I only got prompted once with the robot check, after that I signed in as normal.

Of course, it goes without saying that you can continue using the official CEF build in your dev environment if it helps you get around the problem.