File ghostty.spec of Package ghostty

Name:           ghostty
Version:        1.0.0
Release:        1%{?dist}
Summary:        Fast, native, feature-rich terminal emulator pushing modern features.

License:        MIT
URL:            https://github.com/ghostty-org/ghostty
Source0:        https://release.files.ghostty.org/1.0.0/ghostty-source.tar.gz
Source1:        https://release.files.ghostty.org/1.0.0/ghostty-source.tar.gz.minisig
BuildRequires:  zig, glib2-devel, freetype2-devel, ncurses-devel, pandoc, harfbuzz-devel, fontconfig, oniguruma-devel, gtk4-devel, libadwaita-devel
Requires:       zig

%description
Ghostty is a terminal emulator that differentiates itself by being fast, feature-rich, and native. While there are many excellent terminal emulators available, they all force you to choose between speed, features, or native UIs. Ghostty provides all three.

%prep
%setup -q -n ghostty-source

%build
# Fetch dependencies
ZIG_GLOBAL_CACHE_DIR=%{_builddir}/offline-cache ./nix/build-support/fetch-zig-cache.sh

zig build \
  --summary all \
  --prefix "%{buildroot}%{_prefix}" \
  --system %{_builddir}/offline-cache/p \
  -Dversion-string=%{version}-%{release} \
  -Doptimize=ReleaseFast \
  -Dcpu=baseline \
  -Dpie=true \
  -Demit-docs \

%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/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
%{_prefix}/share/man/man1/ghostty.1
%{_prefix}/share/man/man5/ghostty.5
%{_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
* Sun Dec 29 2024 Phillip Rak <rak.phillip@gmail.com> - 1.0.0-1
- Initial package for Ghostty

openSUSE Build Service is sponsored by