Skip to content

Ghostty snap in Fedora 41 does not run with /snap/bin/ghostty #6608

Open
@kenvandine

Description

@kenvandine

Discussed in #6606

Originally posted by SuperMatt March 6, 2025
Since installing ghostty snap revision 32, the snap no longer loads.

If I run /snap/bin/ghostty or snap run ghostty from the command line it returns immediately with exit code 1.

Running /snap/ghostty/32/bin/ghostty does load ghostty correctly.

Running snap run --debug-log ghostty under revision 21, which is the previous revision that does work, this is the output (until I close ghostty):

$ snap run --debug-log ghostty
2025/03/06 20:06:44.277936 logger.go:99: DEBUG: enabled debug logging of early snap startup
2025/03/06 20:06:44.278234 logger.go:99: DEBUG: executing snap-confine from /usr/libexec/snapd/snap-confine
2025/03/06 20:06:44.289712 logger.go:99: DEBUG: creating transient scope snap.ghostty.ghostty
2025/03/06 20:06:44.290065 logger.go:99: DEBUG: using session bus
2025/03/06 20:06:44.291741 logger.go:99: DEBUG: create transient scope job: /org/freedesktop/systemd1/job/2139
2025/03/06 20:06:44.302242 logger.go:99: DEBUG: job result is "done"
2025/03/06 20:06:44.302257 logger.go:99: DEBUG: transient scope snap.ghostty.ghostty-87009809-688b-46bb-a837-54c117ce5ef4.scope created
2025/03/06 20:06:44.302446 logger.go:99: DEBUG: waited 12.323393ms for tracking
2025/03/06 20:06:44.302461 logger.go:99: DEBUG: -- snap startup {"stage":"snap to snap-confine", "time":"1741291604.302459"}
DEBUG: -- snap startup {"stage":"snap-confine enter", "time":"1741291604.304609"}
DEBUG: SNAP_MOUNT_DIR (probed): /var/lib/snapd/snap
DEBUG: umask reset, old umask was  022
DEBUG: security tag: snap.ghostty.ghostty
DEBUG: executable:   /usr/libexec/snapd/snap-exec
DEBUG: confinement:  classic
DEBUG: base snap:    core24
DEBUG: ruid: 1000, euid: 0, suid: 0
DEBUG: rgid: 1000, egid: 1000, sgid: 1000
DEBUG: -- snap startup {"stage":"snap-confine mount namespace start", "time":"1741291604.304946"}
DEBUG: preparing classic execution environment
DEBUG: -- snap startup {"stage":"snap-confine mount namespace finish", "time":"1741291604.304962"}
DEBUG: set_effective_identity uid:1000 (change: yes), gid:1000 (change: yes)
DEBUG: creating user data directory: /home/matthew/snap/ghostty/21
DEBUG: current SELinux process context: unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
DEBUG: ruid: 1000, euid: 1000, suid: 0
DEBUG: setting capabilities bounding set
DEBUG: regaining SYS_ADMIN
DEBUG: loading bpf program for security tag snap.ghostty.ghostty
DEBUG: clearing SYS_ADMIN
DEBUG: execv(/usr/libexec/snapd/snap-exec, /usr/libexec/snapd/snap-exec...)
DEBUG:  argv[1] = ghostty.ghostty
DEBUG: umask restored to  022
DEBUG: working directory restored to /home/matthew
DEBUG: -- snap startup {"stage":"snap-confine to snap-exec", "time":"1741291604.305203"}
2025/03/06 20:06:44.308124 logger.go:99: DEBUG: -- snap startup {"stage":"snap-exec to app", "time":"1741291604.308121"}
info: ghostty version=1.1.3-add_snap_package+85e60c82
info: ghostty build optimize=ReleaseFast
info: runtime=apprt.Runtime.gtk
info: font_backend=font.main.Backend.fontconfig_freetype
info: dependency harfbuzz=8.4.0
info: dependency fontconfig=21402
info: renderer=renderer.OpenGL
info: libxev backend=main.Backend.io_uring
info(os): setlocale from env result=C.UTF-8
info(gtk): GTK version build=4.14.2 runtime=4.14.2
info: reading configuration file path=/home/matthew/.config/ghostty/config
info(config): default shell source=env value=/bin/zsh
warning(gtk): setting GDK_DEBUG=gl-disable-gles,gl-no-fractional,vulkan-disable
warning(gtk): setting GDK_DISABLE=color-mgmt
warning(gtk): setting GSK_RENDERER=opengl
info(gtk): libadwaita version build=1.5.0 runtime=1.5.0
info(grid): loaded OpenGL 4.6
info(font_shared_grid_set): font regular: Monaspace Neon Regular
info(font_shared_grid_set): font bold: Monaspace Neon Bold
info(font_shared_grid_set): font italic: Monaspace Radon Italic
info(font_shared_grid_set): font bold_italic: Monaspace Radon Bold Italic
info(io_exec): found Ghostty resources dir: /snap/ghostty/current/share/ghostty
info(io_exec): shell integration automatically injected shell=termio.shell_integration.Shell.zsh
warning(gtk): unimplemented action=apprt.action.Action.Key.cell_size
info(io_exec): started subcommand path=/bin/sh pid=32555
info(io_exec): subcommand cgroup=-
warning(gtk): unimplemented action=apprt.action.Action.Key.key_sequence
warning(gtk): unimplemented action=apprt.action.Action.Key.cell_size
warning(gtk): unimplemented action=apprt.action.Action.Key.key_sequence
warning(gtk): unimplemented action=apprt.action.Action.Key.cell_size
info(grid): reallocating GPU buffer old=0 new=8
info(grid): reallocating GPU buffer old=8 new=20
info(io_exec): pty fd closed, read thread exiting

Running the same as revision 32 gives the following output:

2025/03/06 20:12:18.128895 logger.go:99: DEBUG: enabled debug logging of early snap startup
2025/03/06 20:12:18.129150 logger.go:99: DEBUG: executing snap-confine from /usr/libexec/snapd/snap-confine
2025/03/06 20:12:18.133324 logger.go:99: DEBUG: creating transient scope snap.ghostty.ghostty
2025/03/06 20:12:18.133654 logger.go:99: DEBUG: using session bus
2025/03/06 20:12:18.134942 logger.go:99: DEBUG: create transient scope job: /org/freedesktop/systemd1/job/2172
2025/03/06 20:12:18.158201 logger.go:99: DEBUG: job result is "done"
2025/03/06 20:12:18.158222 logger.go:99: DEBUG: transient scope snap.ghostty.ghostty-419da205-d0a9-4ae2-9529-8e0bcc90b8d8.scope created
2025/03/06 20:12:18.158464 logger.go:99: DEBUG: waited 24.755122ms for tracking
2025/03/06 20:12:18.158481 logger.go:99: DEBUG: -- snap startup {"stage":"snap to snap-confine", "time":"1741291938.158478"}
DEBUG: -- snap startup {"stage":"snap-confine enter", "time":"1741291938.160407"}
DEBUG: SNAP_MOUNT_DIR (probed): /var/lib/snapd/snap
DEBUG: umask reset, old umask was  022
DEBUG: security tag: snap.ghostty.ghostty
DEBUG: executable:   /usr/libexec/snapd/snap-exec
DEBUG: confinement:  classic
DEBUG: base snap:    core24
DEBUG: ruid: 1000, euid: 0, suid: 0
DEBUG: rgid: 1000, egid: 1000, sgid: 1000
DEBUG: -- snap startup {"stage":"snap-confine mount namespace start", "time":"1741291938.160597"}
DEBUG: preparing classic execution environment
DEBUG: -- snap startup {"stage":"snap-confine mount namespace finish", "time":"1741291938.160611"}
DEBUG: set_effective_identity uid:1000 (change: yes), gid:1000 (change: yes)
DEBUG: creating user data directory: /home/matthew/snap/ghostty/32
DEBUG: current SELinux process context: unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
DEBUG: ruid: 1000, euid: 1000, suid: 0
DEBUG: setting capabilities bounding set
DEBUG: regaining SYS_ADMIN
DEBUG: loading bpf program for security tag snap.ghostty.ghostty
DEBUG: clearing SYS_ADMIN
DEBUG: execv(/usr/libexec/snapd/snap-exec, /usr/libexec/snapd/snap-exec...)
DEBUG:  argv[1] = ghostty.ghostty
DEBUG: umask restored to  022
DEBUG: working directory restored to /home/matthew
DEBUG: -- snap startup {"stage":"snap-confine to snap-exec", "time":"1741291938.160783"}
2025/03/06 20:12:18.163481 logger.go:99: DEBUG: -- snap startup {"stage":"snap-exec to app", "time":"1741291938.163478"}

I have tested revision 32 in Ubuntu 24.10 and it does work, so this is a problem limited only to Fedora (or at least the tested version, Fedora 41).

Tagging @kenvandine as the current maintainer of this snap.

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions