# Generated by rust2rpm 26
%bcond_without check
%global crate alacritty
Name: rust-alacritty
Version: 0.13.2
Release: %autorelease
Summary: Fast, cross-platform, OpenGL terminal emulator
License: Apache-2.0
URL: https://crates.io/crates/alacritty
Source: %{crates_source}
# Automatically generated patch to strip dependencies and normalize metadata
Patch: alacritty-fix-metadata-auto.diff
# GNOME 45.2 or later tells alacritty window to stop rendering under certain
# conditions.
# https://github.com/alacritty/alacritty/issues/7465#issuecomment-1871014052
# https://gitlab.gnome.org/GNOME/mutter/-/issues/3229
Patch: alacritty-0.13-ignore-xdg-shell-suspended-state.patch
BuildRequires: cargo-rpm-macros >= 24
%global _description %{expand:
A fast, cross-platform, OpenGL terminal emulator.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
# (MIT OR Apache-2.0) AND Unicode-DFS-2016
# 0BSD OR MIT OR Apache-2.0
# Apache-2.0
# Apache-2.0 OR BSL-1.0
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# BSD-2-Clause
# BSD-2-Clause OR Apache-2.0 OR MIT
# BSD-3-Clause
# CC0-1.0
# ISC
# MIT
# MIT OR Apache-2.0
# MIT OR Apache-2.0 OR Zlib
# MIT OR Zlib OR Apache-2.0
# Unlicense OR MIT
# Zlib OR Apache-2.0 OR MIT
License: (MIT OR Apache-2.0) AND Unicode-DFS-2016 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT)
# LICENSE.dependencies contains a full license breakdown
# libwayland-egl is dlopened when running on a wayland compositor
Requires: libwayland-egl
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE-APACHE
%license LICENSE.dependencies
%doc CHANGELOG.md
%doc README.md
%{_bindir}/alacritty
%{_mandir}/man1/alacritty-msg.1*
%{_mandir}/man1/alacritty.1*
%{_mandir}/man5/alacritty-bindings.5*
%{_mandir}/man5/alacritty.5*
%{_metainfodir}/org.alacritty.Alacritty.appdata.xml
%{_datadir}/applications/Alacritty.desktop
%{_datadir}/pixmaps/Alacritty.svg
%{bash_completions_dir}/alacritty
%{zsh_completions_dir}/_alacritty
%{fish_completions_dir}/alacritty.fish
%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
echo 'desktop-file-utils'
echo 'libappstream-glib'
echo 'scdoc'
%build
%cargo_build
%{cargo_license_summary}
%{cargo_license} > LICENSE.dependencies
for fname in alacritty-bindings.5 alacritty-msg.1 alacritty.1 alacritty.5; do
scdoc <extra/man/$fname.scd >extra/man/$fname
done
%install
%cargo_install
desktop-file-install --dir=%{buildroot}%{_datadir}/applications extra/linux/Alacritty.desktop
install -m644 -pvD extra/completions/alacritty.bash %{buildroot}%{bash_completions_dir}/alacritty
install -m644 -pvD extra/completions/_alacritty %{buildroot}%{zsh_completions_dir}/_alacritty
install -m644 -pvD extra/completions/alacritty.fish %{buildroot}%{fish_completions_dir}/alacritty.fish
install -m644 -pvD extra/logo/alacritty-term.svg %{buildroot}%{_datadir}/pixmaps/Alacritty.svg
install -m644 -pvD -t %{buildroot}%{_metainfodir} extra/linux/org.alacritty.Alacritty.appdata.xml
for fname in alacritty-bindings.5 alacritty-msg.1 alacritty.1 alacritty.5; do
install -m644 -pvD "extra/man/$fname" "%{buildroot}%{_mandir}/man${fname##*.}/$fname"
done
%if %{with check}
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.appdata.xml
# * expects workspace paths
%cargo_test -- -- --skip cli::tests::completions
%endif
%changelog
%autochangelog