Bug 2388747

Summary: alacritty requires libxkbcomon-x11
Product: [Fedora] Fedora Reporter: Scott Robbins <scottro11>
Component: rust-alacritty_terminalAssignee: Rust SIG <rust-sig>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: 42CC: decathorpe, rust-sig
Target Milestone: ---Keywords: Desktop
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-08-16 01:11:47 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Scott Robbins 2025-08-15 08:15:03 UTC
When doing a minimalistic install after choosing custom, then installing xorg-server, x11-drv-libinput and openbox as a window manager, if alacritty is installed, it won't start. Calling it from an open urxvt terminal gives the message
==============================================================================
thread 'main' panicked at /usr/share/cargo/registry/xkbcommon-dl-0.4.2/src/x11.rs:59:28:
Library libxkbcommon-x11.so could not be loaded.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
================================================================================
If one installs libxkbcommon-x11, alacritty then starts without a problem. So it seems as if libxkbcommon-x11 should be included as a dependency. I found this in both Fedora 42 and Fedora 43. I only tried with openbox, I suspect the problem wouldn't show with most desktop environments. I didn't test with other small window managers.

This is probably an edge case, as I think a great many Fedora users prefer a Desktop Environment, and there is the easy workaround of installing libxkbcommon-x11. (You don't even need libxkbcommon-x11-devel).

Reproducible: Always

Steps to Reproduce:
1.Do a minimalistic install of Fedora and install openbox as windowmanager. Install alacritty
2.Try to start alacritty. If you've installed a second terminal and start from said terminal,a message appears that libxkbcommon-x11.so could not be loaded.
Actual Results:
Results as described above. Calling alacritty from a urxvt terminal gives the message that libxkbcommon-x11.so can't be found.

Expected Results:
That an alacritty terminal should open.

Additional Information:
Opened alacritty once libxkbcommon-x11 is installed.

Comment 1 Fabio Valentini 2025-08-15 13:26:01 UTC
Thank you for the report.

It's sometimes hard to figure out which library dependencies are actually needed when the libraries are dynamically loaded at runtime instead of linked :(

I'll add a hard dependency on libxkbcommon-x11 to the package, that should resolve this problem.

Comment 2 Scott Robbins 2025-08-15 13:55:43 UTC
Wow, that was a quick response! Thank you. Once you've done it, I can very quickly throw together a new F42, 43, or rawhide VM to confirm it's good. 
Thanks again. :)

Comment 3 Fedora Update System 2025-08-15 16:48:32 UTC
FEDORA-2025-b7a71cd44d (rust-alacritty-0.15.1-3.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-b7a71cd44d

Comment 4 Fedora Update System 2025-08-15 16:48:33 UTC
FEDORA-2025-7c2e9b6231 (rust-alacritty-0.15.1-3.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-7c2e9b6231

Comment 5 Scott Robbins 2025-08-15 17:32:26 UTC
Thank you! I've got to say, that was quick. I put together a fresh rawhide install with X and openbox, got the rpm from the bhodi link above, and ran dnf -y install on it. Started X and alacritty installed with no problems. So, I only have x86_64, so that was the one I tried, but as far as I can see, the problem is solved. Thank you for the super quick work.

Comment 6 Fabio Valentini 2025-08-15 19:15:37 UTC
No problem! Thank you for the report.

Comment 7 Fedora Update System 2025-08-16 01:11:47 UTC
FEDORA-2025-7c2e9b6231 (rust-alacritty-0.15.1-3.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 8 Fedora Update System 2025-08-16 02:38:56 UTC
FEDORA-2025-b7a71cd44d has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-b7a71cd44d`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-b7a71cd44d

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Scott Robbins 2025-08-16 13:57:59 UTC
Adding this comment here as well as in the bhodi link. 

. I just installed a fresh F42 on a vm. Alacritty installed as did libxkbcommon-X11. However it wouldn't start, this time, because it was missing libXi.

Error: Os(OsError { line: 788, file: "/usr/share/cargo/registry/winit-0.30.12/src/platform_impl/linux/mod.rs", error: XNotSupported(LibraryOpenError(OpenError { kind: Library, detail: "opening library failed (libXi.so.6: cannot open shared object file: No such file or directory); opening library failed (libXi.so: cannot open shared object file: No such file or directory)" })) })

Installing libXi (again, didn't need the -devel) fixed the error and alacritty would open without a problem. I'm sorry, I didn't have this error when I reported the original bug, I guess something else I'd installed put in iibXi. This new f42 install just had enough to get openbox running with a few extras like xorg-xinit feh and dmenu.

As you said above, it's hard to figure out which library dependencies are linked when they're not loaded till runtime.

Comment 10 Fedora Update System 2025-08-24 02:48:16 UTC
FEDORA-2025-b7a71cd44d (rust-alacritty-0.15.1-3.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.