Skip to content

fix(ci): pin WebKit to 2.44.0-2 to fix blank-webview regression in Linux builds#1311

Merged
ErikBjare merged 1 commit into
ActivityWatch:masterfrom
TimeToBuildBob:fix/tauri-linux-webkit-pin
May 27, 2026
Merged

fix(ci): pin WebKit to 2.44.0-2 to fix blank-webview regression in Linux builds#1311
ErikBjare merged 1 commit into
ActivityWatch:masterfrom
TimeToBuildBob:fix/tauri-linux-webkit-pin

Conversation

@TimeToBuildBob
Copy link
Copy Markdown
Contributor

Summary

Pins the webkit2gtk and javascriptcoregtk packages to version 2.44.0-2 in the build-tauri.yml Linux APT dependency installation step.

The ubuntu-24.04 runners can resolve newer webkit2gtk versions that cause blank webviews in the resulting AppImage builds. This is the same fix already applied in ActivityWatch/aw-tauri#99 for the standalone aw-tauri release workflow; this PR brings the parent repo's build-tauri.yml in sync.

Before: unpinned libwebkit2gtk-4.1-dev and libjavascriptcoregtk-4.1-dev — vulnerable to whatever the latest ubuntu-24.04 packages resolve to.

After: pinned =2.44.0-2 for all webkit/javascriptcoregtk packages, plus adds the runtime libs (libwebkit2gtk-4.1-0, libjavascriptcoregtk-4.1-0) and GIR packages that aw-tauri#99 identified as needed.

Related

The ubuntu-24.04 runners can get newer webkit2gtk versions which cause blank
webviews in the AppImage builds. Pin to the known-working 2.44.0-2 versions,
matching the fix already applied in ActivityWatch/aw-tauri#99.

Fixes: ActivityWatch/aw-tauri#97
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 27, 2026

Greptile Summary

This PR pins webkit2gtk and javascriptcoregtk packages to version 2.44.0-2 in the Linux APT install step of build-tauri.yml, mirroring the fix already applied in ActivityWatch/aw-tauri#99 to prevent a blank-webview regression caused by newer package versions on ubuntu-24.04 runners.

  • Moves libwebkit2gtk-4.1-dev and libjavascriptcoregtk-4.1-dev out of the generic install block and into a dedicated, version-pinned apt-get install invocation, also adding the runtime (-0) and GIR packages that aw-tauri#99 identified as necessary.
  • The pinned version 2.44.0-2 is not confirmed available on the ubuntu-24.04-arm runner in the matrix, which could break all arm64 Linux builds.

Confidence Score: 3/5

Safe to merge for x86_64 Linux and non-Linux targets, but the arm64 Linux build path is unverified and may break.

The webkit version pin was validated on x86_64 (aw-tauri#99) and correctly addresses the blank-webview regression. However, the matrix includes ubuntu-24.04-arm, and the exact version string 2.44.0-2 may not exist in arm64 apt sources — Ubuntu arm64 packages sometimes carry a different revision suffix. If that version is unavailable, every arm64 Linux build will fail at the APT install step.

.github/workflows/build-tauri.yml — specifically the pinned webkit install block and its interaction with the ubuntu-24.04-arm matrix entry.

Important Files Changed

Filename Overview
.github/workflows/build-tauri.yml Pins WebKit/JavaScriptCore packages to 2.44.0-2 to fix blank-webview regression; the pin may fail on the ubuntu-24.04-arm runner and lacks --allow-downgrades for resilience

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Install APT dependencies - Linux] --> B[apt-get install unversioned deps\nlibgtk-3-dev, libayatana, librsvg2, libsoup, xdg-utils]
    B --> C[apt-get install pinned WebKit\nlibwebkit2gtk-4.1-0=2.44.0-2\nlibwebkit2gtk-4.1-dev=2.44.0-2\nlibjavascriptcoregtk-4.1-0=2.44.0-2\nlibjavascriptcoregtk-4.1-dev=2.44.0-2\ngir1.2-javascriptcoregtk-4.1=2.44.0-2\ngir1.2-webkit2-4.1=2.44.0-2]
    C --> D{Version available\nin apt sources?}
    D -->|Yes - x86_64| E[Build succeeds]
    D -->|No - arm64 or\nversion superseded| F[apt-get fails\nBuild broken]
Loading

Reviews (1): Last reviewed commit: "fix(ci): pin WebKit to 2.44.0-2 to fix b..." | Re-trigger Greptile

Comment on lines +125 to +131
sudo apt-get install -y \
libwebkit2gtk-4.1-0=2.44.0-2 \
libwebkit2gtk-4.1-dev=2.44.0-2 \
libjavascriptcoregtk-4.1-0=2.44.0-2 \
libjavascriptcoregtk-4.1-dev=2.44.0-2 \
gir1.2-javascriptcoregtk-4.1=2.44.0-2 \
gir1.2-webkit2-4.1=2.44.0-2
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 arm64 runner may not resolve version 2.44.0-2

The matrix includes ubuntu-24.04-arm, but the version pin =2.44.0-2 was validated against x86_64 in aw-tauri#99. Ubuntu arm64 packages often carry an ubuntu1 revision suffix (e.g. 2.44.0-2ubuntu1) and may not carry the exact bare 2.44.0-2 version string. If that version isn't present in the arm64 apt sources after apt-get update, every arm Linux build will fail at this step with "Version '2.44.0-2' for 'libwebkit2gtk-4.1-dev' was not found". It's worth confirming the exact available version on ubuntu-24.04-arm (e.g. via apt-cache madison libwebkit2gtk-4.1-dev) before merging.

Comment on lines +125 to +131
sudo apt-get install -y \
libwebkit2gtk-4.1-0=2.44.0-2 \
libwebkit2gtk-4.1-dev=2.44.0-2 \
libjavascriptcoregtk-4.1-0=2.44.0-2 \
libjavascriptcoregtk-4.1-dev=2.44.0-2 \
gir1.2-javascriptcoregtk-4.1=2.44.0-2 \
gir1.2-webkit2-4.1=2.44.0-2
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Missing --allow-downgrades flag

If the ubuntu-24.04 runner image is ever updated to pre-install a newer webkit runtime library (the -0 runtime packages are more likely candidates than the -dev packages), apt-get install with a lower pinned version will fail without --allow-downgrades. Adding the flag makes the pin robust to that scenario.

Suggested change
sudo apt-get install -y \
libwebkit2gtk-4.1-0=2.44.0-2 \
libwebkit2gtk-4.1-dev=2.44.0-2 \
libjavascriptcoregtk-4.1-0=2.44.0-2 \
libjavascriptcoregtk-4.1-dev=2.44.0-2 \
gir1.2-javascriptcoregtk-4.1=2.44.0-2 \
gir1.2-webkit2-4.1=2.44.0-2
sudo apt-get install -y --allow-downgrades \
libwebkit2gtk-4.1-0=2.44.0-2 \
libwebkit2gtk-4.1-dev=2.44.0-2 \
libjavascriptcoregtk-4.1-0=2.44.0-2 \
libjavascriptcoregtk-4.1-dev=2.44.0-2 \
gir1.2-javascriptcoregtk-4.1=2.44.0-2 \
gir1.2-webkit2-4.1=2.44.0-2

@ErikBjare
Copy link
Copy Markdown
Member

Seems to build fine on arm, merging.

@ErikBjare ErikBjare merged commit bf66fa6 into ActivityWatch:master May 27, 2026
15 checks passed
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

Successfully merging this pull request may close these issues.

2 participants