%global git_commit_sha b68e9a10e033945467d46283d3ca3b02d5e32aab %global git_commit_timestamp 2025-01-03T18:10:19Z Name: ghostty-git Version: 1.0.1 Release: 1+%(date --date='%{git_commit_timestamp}' +'%%Y%%m%%d.%%H%%M%%S').%{git_commit_sha}%{?dist} Summary: Fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration License: MIT URL: https://github.com/ghostty-org/ghostty Source0: https://github.com/ghostty-org/ghostty/archive/%{git_commit_sha}.tar.gz Patch0: 0001-Switch-to-Epoll-for-libxev.patch ExclusiveArch: x86_64 aarch64 BuildRequires: fontconfig-devel BuildRequires: freetype-devel BuildRequires: glib2-devel BuildRequires: gtk4-devel BuildRequires: harfbuzz-devel BuildRequires: libadwaita-devel BuildRequires: libpng-devel BuildRequires: oniguruma-devel %if 0%{?fedora} || 0%{?rhel} >= 10 BuildRequires: pandoc-cli %endif BuildRequires: pixman-devel BuildRequires: pkg-config BuildRequires: zig BuildRequires: zlib-ng-devel Requires: fontconfig Requires: freetype Requires: glib2 Requires: gtk4 Requires: harfbuzz Requires: libadwaita Requires: libpng Requires: oniguruma Requires: pixman Requires: zlib-ng Conflicts: ghostty %description %{summary}. %prep %setup -q -n ghostty-%{git_commit_sha} %patch -P 0 -p1 %build ZIG_GLOBAL_CACHE_DIR=/tmp/offline-cache ./nix/build-support/fetch-zig-cache.sh zig build \ --summary all \ --prefix "%{buildroot}%{_prefix}" \ --system "/tmp/offline-cache/p" \ -Dversion-string=%{version}-%{release} \ -Doptimize=ReleaseFast \ -Dcpu=baseline \ -Dpie=true \ %if 0%{?fedora} || 0%{?rhel} >= 10 -Demit-docs %endif %if 0%{?rhel} < 10 -Demit-docs=false %endif %files %license LICENSE %{_bindir}/ghostty %{_prefix}/share/applications/com.mitchellh.ghostty.desktop %{_prefix}/share/bash-completion/completions/ghostty.bash %{_prefix}/share/bat/syntaxes/ghostty.sublime-syntax %{_prefix}/share/fish/vendor_completions.d/ghostty.fish %{_prefix}/share/ghostty %{_prefix}/share/icons/hicolor/1024x1024/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/128x128/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/128x128@2/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/16x16/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/16x16@2/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/256x256/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/256x256@2/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/32x32/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/32x32@2/apps/com.mitchellh.ghostty.png %{_prefix}/share/icons/hicolor/512x512/apps/com.mitchellh.ghostty.png %{_prefix}/share/kio/servicemenus/com.mitchellh.ghostty.desktop %if 0%{?fedora} || 0%{?rhel} >= 10 %{_prefix}/share/man/man1/ghostty.1 %{_prefix}/share/man/man5/ghostty.5 %endif %if 0%{?rhel} < 10 %exclude %{_prefix}/share/man/.placeholder %endif %{_prefix}/share/nvim/site/ftdetect/ghostty.vim %{_prefix}/share/nvim/site/ftplugin/ghostty.vim %{_prefix}/share/nvim/site/syntax/ghostty.vim %{_prefix}/share/terminfo/g/ghostty %{_prefix}/share/terminfo/ghostty.termcap %{_prefix}/share/terminfo/ghostty.terminfo %{_prefix}/share/terminfo/x/xterm-ghostty %{_prefix}/share/vim/vimfiles/ftdetect/ghostty.vim %{_prefix}/share/vim/vimfiles/ftplugin/ghostty.vim %{_prefix}/share/vim/vimfiles/syntax/ghostty.vim %{_prefix}/share/zsh/site-functions/_ghostty %changelog %autochangelog