`GLIBC_2.38' not found
Version
0.14.11
Operating System
Linux
Distribution Method
AppImage (Linux)
Describe the issue
Hi, I got this error when launching the AppImage (distro PopOS)
(AppImageLauncher:2438309): GLib-CRITICAL **: 17:57:06.312: g_file_test: assertion 'filename != NULL' failed
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by gitbutler-tauri)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by gitbutler-tauri)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.39' not found (required by gitbutler-tauri)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libwebkit2gtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libwebkit2gtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libwebkit2gtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libwebkit2gtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgtk-3.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgtk-3.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgdk-3.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgdk-3.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libcairo.so.2)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libcairo.so.2)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libsoup-3.0.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgio-2.0.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libjavascriptcoregtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libjavascriptcoregtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libjavascriptcoregtk-4.1.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libglib-2.0.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libicui18n.so.74)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libicui18n.so.74)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libsystemd.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libicuuc.so.74)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libicuuc.so.74)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libpango-1.0.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libxml2.so.2)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libsqlite3.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libxslt.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libxslt.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgcrypt.so.20)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgstreamer-1.0.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libtasn1.so.6)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libwayland-server.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libwayland-client.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libatk-bridge-2.0.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libxkbcommon.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libXcursor.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libgssapi_krb5.so.2)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.36' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libmount.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libmount.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libselinux.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libcap.so.2)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libdw.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/liborc-0.4.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libdbus-1.so.3)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libkrb5.so.3)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libk5crypto.so.3)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libkrb5support.so.0)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libblkid.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libelf.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libudev.so.1)
gitbutler-tauri: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /tmp/.mount_GitButtT8C8k/usr/lib/libbsd.so.0)
How to reproduce (Optional)
No response
Expected behavior (Optional)
No response
Relevant log output (Optional)
Thanks for reporting!
I think there are known issues with distributions which are 'too old', and I vaguely remember that Ubuntu 24.10 is the minimum supported version, along with the libc that comes with it. However, @ndom91 would know the details and will probably correct what I just wrote π .
Thanks for reporting!
I think there are known issues with distributions which are 'too old', and I vaguely remember that Ubuntu 24.10 is the minimum supported version, along with the libc that comes with it. However, @ndom91 would know the details and will probably correct what I just wrote π .
@Byron
This AppImage is broken on a wide range of Linux systems due to an unnecessary and careless dependency on a very recent glibc version.
The build currently requires GLIBC_2.38 and GLIBC_2.39, which are relatively new and not widely adopted. glibc 2.38 was released in August 2023, and even some current stable LTS-based distributions (like Debian 12 or Ubuntu 22.04) don't have it yet. You're locking out a massive portion of your potential users for no technical reason.
π₯ Here's the problem:
- Your AppImage depends on glibc versions that are not present in most distros, including widely used ones like Pop!_OS, Mint, Debian, etc.
- This violates the core principle of AppImage, which is portability: "Build once, run anywhere."
- According to the AppImage best practices, you should build AppImages on the oldest possible compatible system, like Ubuntu 16.04 or CentOS 7, precisely to avoid glibc lock-in.
- Your codebase does NOT require glibc 2.38 or 2.39 β it's just a side-effect of building on a bleeding-edge system or bumping versions in
tauri.conf.jsonwithout care.
𧨠The consequences:
You're breaking compatibility with:
- Ubuntu LTS (22.04)
- Pop!_OS 22.04 (still widely used)
- Debian 12
- Any stable distro that ships a mature glibc
- And, ironically, the same users who rely on AppImage for compatibility reasons
β What you should do:
- Stop building on bleeding-edge distros.
- Use a proper AppImage build environment like Ubuntu 18.04 with a FHS runtime, or better yet β use a Docker container with CentOS 7 to guarantee glibc 2.17+ compatibility.
- Do not bump
glibc/libstdc++dependencies unless your code absolutely requires it (which this app does not).
You're not "supporting modern Linux"; you're breaking Linux portability.
Please take this seriously and rebuild with a sane, older toolchain. AppImage is meant to solve problems, not create them.
Thanks for the analysis and for trying to help this along - like mentioned earlier this is mostly ignorance and not bad faith, and I hope knowing that helps you to want to help us to get this straight ππ.
I just took a look for the very first time and it appears that we use the standard GitHub provided images, and Ubuntu 24.10.
https://github.com/gitbutlerapp/gitbutler/blob/150e0b68bb4cf11a99172fd57072562a3af159fc/.github/workflows/publish.yaml#L95
AppImage are then build with release.sh, which in theory should be executable on any Linux system to produce an AppImage.
https://github.com/gitbutlerapp/gitbutler/blob/2ef866baa62c5bce71a87be97cc028c08ca4640c/scripts/release.sh#L193-L197
Maybe this is something you could try on your system, in theory it should produce a valid image that runs. If I remember correctly, there was supposed to be a dependency on Ubuntu 24.10, but if it runs on your system that is less bleeding edge, there should be nothing in the way of downgrading the image used by CI.
@Byron
Thanks for reporting!
Yeah, using an older runner in the GitHub workflow is a good first step β but that's not the full fix.
Right now, the real problem is that the build links against the systemβs bleeding-edge glibc (e.g. 2.38 or 2.39), and that's what breaks compatibility with any distro that hasn't caught up yet.
π₯ To actually fix this, two things need to happen:
1. π¦ Pin dependency versions in Cargo.toml
Some Rust crates like glib, glib-macros, and cairo-sys-rs have recently bumped versions that drag in newer system libraries β often without you noticing.
To avoid requiring recent glibc symbols, pin them manually to older, safe versions:
[dependencies]
glib = "=0.14.8"
glib-sys = "=0.14.0"
glib-macros = "=0.14.3"
cairo-sys-rs = "=0.14.0"
libc = "=0.2.139" # or older if needed
Then run:
cargo update -p glib --precise 0.14.8
# and same for others
This avoids pulling in newer stuff that silently requires glibc 2.38+.
2. βοΈ Limit glibc version at the linker level
Even with pinned crate versions, Rust will still link against whatever glibc your system has β unless you explicitly tell it not to.
Add this to .cargo/config.toml:
[target.x86_64-unknown-linux-gnu]
rustflags = ["-C", "link-arg=-Wl,--glibc-version=2.17"]
This forces the linker to stay compatible with glibc 2.17 (used in CentOS 7 and Ubuntu 16.04). But again β this only works if your code and dependencies don't require newer symbols, which is why step 1 is non-optional.
β Bonus: Build in a sane environment
The safest way to avoid glibc creep is to actually build in a container or VM with an old system like:
- Ubuntu 18.04 or CentOS 7 (glibc 2.27 or 2.17)
- Or use
muslfor static builds (if your deps support it)
rustup target add x86_64-unknown-linux-musl
cargo build --target x86_64-unknown-linux-musl --release
Right now, the build is just picking up whatever glibc happens to be on the host, and AppImage wraps it without checking. So even if the codebase is portable, the output is not.
This is why AppImage best practices recommend building on the oldest possible system β and not just relying on GitHub's runner to guess it for you.
Iβm not a Rust expert and havenβt looked into your codebase directly β this is just all I can offer in terms of help. Hope itβs useful.
Thanks again!
I did take a look and tried to install suitable dependencies in Ubuntu 20. However, it only ships with Glib 2.64, while Tauri 2.0 requires at least Glib 2.70.
Further digging revealed this issue:
- https://github.com/tauri-apps/tauri/issues/9039
They mention the Glib issue on Ubuntu 20 as well. My own version yields the same result:
tauri info
byron@gitbutler-release:~/gitbutler$ pnpm tauri info
> root@ tauri /home/byron/gitbutler
> tauri info
[β] Environment
- OS: Ubuntu 20.4.0 x86_64 (X64) (Unknown DE on tty)
β webkit2gtk-4.1: not installed
Visit https://v2.tauri.app/start/prerequisites/ to learn more about tauri prerequisites
β rsvg2: 2.48.9
β rustc: 1.86.0-nightly (a567209da 2025-02-13)
β cargo: 1.86.0-nightly (2928e3273 2025-02-07)
β rustup: 1.28.2 (e4f3ad6f8 2025-04-28)
β Rust toolchain: nightly-2025-02-14-x86_64-unknown-linux-gnu (overridden by '/home/byron/gitbutler/rust-toolchain.toml')
- node: 20.19.1
- pnpm: 10.3.0
- npm: 10.8.2
[-] Packages
- tauri π¦: 2.4.1, (outdated, latest: 2.5.1)
- tauri-build π¦: 2.2.0
- wry π¦: 0.50.5, (outdated, latest: 0.51.2)
- tao π¦: 0.32.8, (outdated, latest: 0.33.0)
- @tauri-apps/api ξ: not installed!
- @tauri-apps/cli ξ: 2.4.1 (outdated, latest: 2.5.0)
[-] Plugins
- tauri-plugin-dialog π¦: 2.2.1
- @tauri-apps/plugin-dialog ξ: not installed!
- tauri-plugin-fs π¦: 2.2.1
- @tauri-apps/plugin-fs ξ: not installed!
- tauri-plugin-updater π¦: 2.7.1
- @tauri-apps/plugin-updater ξ: not installed!
- tauri-plugin-single-instance π¦: 2.2.3
- @tauri-apps/plugin-single-instance ξ: not installed!
- tauri-plugin-log π¦: 2.4.0
- @tauri-apps/plugin-log ξ: not installed!
- tauri-plugin-clipboard-manager π¦: 2.2.2
- @tauri-apps/plugin-clipboard-manager ξ: not installed!
- tauri-plugin-window-state π¦: 2.2.2
- @tauri-apps/plugin-window-state ξ: not installed!
- tauri-plugin-http π¦: 2.4.3
- @tauri-apps/plugin-http ξ: not installed!
- tauri-plugin-os π¦: 2.2.1
- @tauri-apps/plugin-os ξ: not installed!
- tauri-plugin-store π¦: 2.2.0
- @tauri-apps/plugin-store ξ: not installed!
- tauri-plugin-shell π¦: 2.2.1
- @tauri-apps/plugin-shell ξ: not installed!
- tauri-plugin-process π¦: 2.2.1
- @tauri-apps/plugin-process ξ: not installed!
[-] App
- build-type: build
- CSP: img-src 'self' asset: https://asset.localhost data: tauri://localhost https://avatars.githubusercontent.com https://*.gitbutler.com https://gitbutler-public.s3.amazonaws.com https://*.gravatar.com https://io.wp.com https://i0.wp.com https://i1.wp.com https://i2.wp.com https://i3.wp.com https://github.com https://*.googleusercontent.com https://*.giphy.com/; default-src 'self'; connect-src 'self' ipc: http://ipc.localhost https://eu.posthog.com https://eu.i.posthog.com https://app.gitbutler.com https://o4504644069687296.ingest.sentry.io ws://localhost:7703 https://github.com https://api.github.com https://api.openai.com https://api.anthropic.com https://app.staging.gitbutler.com https://*.gitlab.com https://gitlab.com wss://irc.gitbutler.com:8097; script-src 'self' https://eu.posthog.com https://eu.i.posthog.com; style-src 'self' 'unsafe-inline'
- frontendDist: ../../apps/desktop/build
- devUrl: http://localhost:1420/
- framework: Svelte
- bundler: Rollup
(failed reverse-i-search)`lsb_release': sudo apt install libwebkit2gtk-4.0-dev build-essential curl wget file libxdo-dev libssl-dev libayatana-appindicator3-dev ^Cbrsvg2-dev
byron@gitbutler-release:~/gitbutler$ lsb_release
No LSB modules are available.
byron@gitbutler-release:~/gitbutler$ lsb_release -h
Usage: lsb_release [options]
Options:
-h, --help show this help message and exit
-v, --version show LSB modules this system supports
-i, --id show distributor ID
-d, --description show description of this distribution
-r, --release show release number of this distribution
-c, --codename show code name of this distribution
-a, --all show all of the above information
-s, --short show requested information in short format
byron@gitbutler-release:~/gitbutler$ lsb_release -d
Description: Ubuntu 20.04.6 LTS
Tauri 2 seems to be supported on Ubuntu 22.04 at the earliest due to the requirement for libwebkit2gtk-4.1-dev, just a minor version higher than libwebkit2gtk-4.0-dev, but worlds apart apparently.
It doesn't look good, but as a small improvement I'd think it's possible to build on Ubuntu 22 instead.
A local installation is promising, with the build working and tauri info being happy.
tauri info
byron@gitbutler-release:~/gitbutler$ pnpm tauri info
> root@ tauri /home/byron/gitbutler
> tauri info
[β] Environment
- OS: Ubuntu 22.4.0 x86_64 (X64) (Unknown DE on tty)
β webkit2gtk-4.1: 2.48.1
β rsvg2: 2.52.5
β rustc: 1.86.0-nightly (a567209da 2025-02-13)
β cargo: 1.86.0-nightly (2928e3273 2025-02-07)
β rustup: 1.28.2 (e4f3ad6f8 2025-04-28)
β Rust toolchain: nightly-2025-02-14-x86_64-unknown-linux-gnu (overridden by '/home/byron/gitbutler/rust-toolchain.toml')
- node: 20.19.1
- pnpm: 10.3.0
- npm: 10.8.2
[-] Packages
- tauri π¦: 2.4.1, (outdated, latest: 2.5.1)
- tauri-build π¦: 2.2.0
- wry π¦: 0.50.5, (outdated, latest: 0.51.2)
- tao π¦: 0.32.8, (outdated, latest: 0.33.0)
- @tauri-apps/api ξ: not installed!
- @tauri-apps/cli ξ: 2.4.1 (outdated, latest: 2.5.0)
[-] Plugins
- tauri-plugin-log π¦: 2.4.0
- @tauri-apps/plugin-log ξ: not installed!
- tauri-plugin-window-state π¦: 2.2.2
- @tauri-apps/plugin-window-state ξ: not installed!
- tauri-plugin-updater π¦: 2.7.1
- @tauri-apps/plugin-updater ξ: not installed!
- tauri-plugin-shell π¦: 2.2.1
- @tauri-apps/plugin-shell ξ: not installed!
- tauri-plugin-dialog π¦: 2.2.1
- @tauri-apps/plugin-dialog ξ: not installed!
- tauri-plugin-process π¦: 2.2.1
- @tauri-apps/plugin-process ξ: not installed!
- tauri-plugin-fs π¦: 2.2.1
- @tauri-apps/plugin-fs ξ: not installed!
- tauri-plugin-clipboard-manager π¦: 2.2.2
- @tauri-apps/plugin-clipboard-manager ξ: not installed!
- tauri-plugin-os π¦: 2.2.1
- @tauri-apps/plugin-os ξ: not installed!
- tauri-plugin-http π¦: 2.4.3
- @tauri-apps/plugin-http ξ: not installed!
- tauri-plugin-store π¦: 2.2.0
- @tauri-apps/plugin-store ξ: not installed!
- tauri-plugin-single-instance π¦: 2.2.3
- @tauri-apps/plugin-single-instance ξ: not installed!
[-] App
- build-type: build
- CSP: default-src 'self'; img-src 'self' asset: https://asset.localhost data: tauri://localhost https://avatars.githubusercontent.com https://*.gitbutler.com https://gitbutler-public.s3.amazonaws.com https://*.gravatar.com https://io.wp.com https://i0.wp.com https://i1.wp.com https://i2.wp.com https://i3.wp.com https://github.com https://*.googleusercontent.com https://*.giphy.com/; connect-src 'self' ipc: http://ipc.localhost https://eu.posthog.com https://eu.i.posthog.com https://app.gitbutler.com https://o4504644069687296.ingest.sentry.io ws://localhost:7703 https://github.com https://api.github.com https://api.openai.com https://api.anthropic.com https://app.staging.gitbutler.com https://*.gitlab.com https://gitlab.com wss://irc.gitbutler.com:8097; script-src 'self' https://eu.posthog.com https://eu.i.posthog.com; style-src 'self' 'unsafe-inline'
- frontendDist: ../../apps/desktop/build
- devUrl: http://localhost:1420/
- framework: Svelte
- bundler: Rollup
byron@gitbutler-release:~/gitbutler$ lsb_release -d
Description: Ubuntu 22.04.5 LTS
I have created a couple of bundles that you are welcome to try - they might not fully work, but should at least have a higher chance of launching.
I have used this old release as vessel to hold the locally built bundles (created on Ubuntu 22.04), if you want to try them: https://github.com/gitbutlerapp/gitbutler/releases/tag/release%2F0.12.9. However, it seems these still think they are ARM built, so due to that confusion I don't think they work at all.
Another avenue to potentially improve the compatibility is to provide a FlatPak, as these work with Runtimes which might, overall, be more available. But I haven't looked into this yet.
Tracking issue: https://github.com/gitbutlerapp/gitbutler/issues/8411
@Byron
Linux shyneko-pc 6.12.10-76061203-generic #202412060638~1743109366~22.04~1fce33b SMP PREEMPT_DYNAMIC Thu M x86_64 x86_64 x86_64 GNU/Linux
On my PopOS 22 work stable appimage you provided Very long startup (5-7s) but works stable. I test launch, add repo and test commit with pull using AI
That is very promising - I just used the default tauri bundler for appimages, and it seems to work much better now.
It will take a while for us to truly put more time into Linux support, but it's definitely on the radar and will pick it up as soon as we can. To my mind, an avenue is to work with the tauri project to help them getting their bundlers (and maybe documentation) to work better for us as well (if they don't do already), so the work is done only once.
Maybe some time for now they will even provide a build service to build application distributables for us, tuned for best compatibility, so waiting might not even be the worst option here.
I tried the AppImage on Ubuntu 22.04.5 LTS.
Commits work, put pushing doesn't.
Thanks for working to fix this, Ubuntu 22.04 is still widely used.
Thank you for trying it out! These helper programs weren't included in the test-build, so this failure would be expected unfortunately. What we learned is that the AppImage runs at all and can access local files, which seems to be an improvement over the current build.
you can basically using something like distrobox but yeah it more feasible if it compile in the same distro anyway i create a workaround even tho not complete it can install gitbutler in popos 22.04 but you need to install git inside that distrobox also setup credential etc take a look if you like https://github.com/uratmangun/web2app-gui/blob/main/gitbutler-distrobox-installation-guide.md
i build it myself finally here if you want to follow https://github.com/uratmangun/gitbutler/blob/master/LOCAL_BUILD.md with the help of a gpt-5 high
now i can run it on my beautiful popos 22.04 lol
@uratmangun Thank you very much for your work! I tried too, but spent about 30 minutes on it and gave up. You're awesome!
@shynekomaid Upgrade to 24.04 if possible; it works well, but understanding the new Pop!_OS beta 24.04 flow may take time. actually its not my work GPT-5's high reasoning helped me a lot in windsurf lol.