Ghostty without layering?

I’ve been trying to rid myself of local layering and the last hurdle seems to be Ghostty…

There isn’t a flatpak yet, and building from source seems to require the gtk4-devel RPM, as no brew packages seem to work.

Has anyone managed to get Ghostty to work without local layering? :ghost:

Can you build in a Fedora distrobox then just copy out the result? I do this sometimes when I just need some temporary dev dependencies.

Indeed, I made a fedora distrobox and followed the build recommendations of Ghostty for fedora, see here: Build from Source - Install. You can deploy a binary in your home dir:

zig build -p $HOME/.local -Doptimize=ReleaseFast

This allows you to run Ghostty directly from the host, without entering distrobox and without layering.

Anyway, I liked the experiment and Ghostty is a promising project. For daily use, I prefer the default Ptyxis terminal.

5 Likes

Hm. Clever!
I’ll have to give this a try the next time I need a binary (added to satisfy the 20 char min).

1 Like

Ah, I didn’t think of copying the binary and running as host. Thanks!

Hopefully the flatpak will be out soon so this manual maintenance will go away.

1 Like

Indeed! With sharing of your home directory into the distrobox container, you very likely won’t need a manual copy step. As per comment from @mheuvel-dev .

2 Likes

Right now I’ve set up a script for fetching the latest release and building if there are differences, but it’s a little janky and I’m not sure how to automate it to run in the distrobox.

Does anyone have a nice way of setting up something like a systemd Quadlet to automate the maintenance?

I just realized there is an easier way than compiling from source. You could use the appimage as an alternative:

This page also includes ways to keep the app up to date.

1 Like

It seems that AppImage support might be going away.

3 Likes

Let’s give people time to cook. :smiley:

3 Likes

There is a copr repo for ghostly: pgdev/ghostty

I use it in my hyprland variant of bluefin: hyprblue/build_files/build.sh at 7987009dc4988b0dccb0d038d409732731d4f26f · ashebanow/hyprblue · GitHub

1 Like

Fix flatpak packaging to a working state by alaviss · Pull Request #6678 · ghostty-org/ghostty · GitHub It is actually a lot closer than you think. Once this PR is merged, Flatpak support will be available.

3 Likes

Looks like that PR was merged….but I’m not seeing ghostty available in flathub (or if there’s a repo available to add). Anyone know if this got resolved?

1 Like

Flatpak/Snap Update

Ghostty 1.2 now comes with a configuration to build for Flatpak as well as Snap. We test this for every commit in CI and strive to keep Ghostty working via these distribution methods. However, we do not officially provide or maintain Flatpak or Snap packages, yet.

This is major progress: Ghostty 1.1.x didn’t work at all as a Flatpak or Snap package without patches, and the official project made no guarantees about maintaining these packages. Now, we at least build and test on these platforms, while still falling short of official distribution.

Our major blocker for official distribution is maintainer interest and release automation. None of the current Ghostty maintainers main the Snap or Flatpak builds of Ghostty, and we don’t feel confident in our ability to maintain these packages long term. If you are interested in helping maintain the Flatpak or Snap packages of Ghostty, please join Discord and message us in #packaging.

From the 1.2 changelog release on 9/15.

The AppImage for GhostTTY works great, but I am looking forward to using the Flatpak. You could also install it in a debian distrobox and export the binary. I know people who have done this for apps like Steam to get around driver issues, but I’ve never tried it personally.

You can download the flatpak build from their CI and install manually for now:

  1. Go to Test · Workflow runs · ghostty-org/ghostty · GitHub
  2. Open the latest tag with green icon (when posting this, it is the 1.2.2)
  3. Go to the bottom of the page and download the artifact (ex: com.mitchellh.ghostty-x86_64.flatpak)
  4. After the zip is downloaded, extract it somewhere, inside theres a com.mitchellh.ghostty, rename it to com.mitchellh.ghostty.flatpak
  5. Install the file, either using the Warehouse app or the command line like flatpak install /path/to/file/com.mitchellh.ghostty.flatpak

Automatic updates won’t work, so for every new release, you should repeat the process