%global vima_version 0.1.2 %global vima_release 1 %{!?llvm_config:%global llvm_config %{_bindir}/llvm-config} %global odin_version dev-2026-07a %global odin_dir Odin-%{odin_version} Name: vima Version: %{vima_version} Release: %{vima_release}%{?dist} Summary: Fast graphical application launcher License: MIT URL: https://github.com/mtnyoni/vima Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz # Fedora does not currently package the Odin compiler, so build a pinned # compiler from its upstream source before building Vima. Source1: https://github.com/odin-lang/Odin/archive/%{odin_version}/Odin-%{odin_version}.tar.gz ExclusiveArch: x86_64 BuildRequires: binutils BuildRequires: clang BuildRequires: desktop-file-utils BuildRequires: gcc BuildRequires: libstdc++-devel BuildRequires: llvm-devel BuildRequires: pkgconfig(sdl3) BuildRequires: pkgconfig(sdl3-image) BuildRequires: pkgconfig(sdl3-ttf) BuildRequires: pkgconfig(wayland-client) BuildRequires: wayland-protocols-devel Requires: google-noto-sans-fonts %description Vima is a keyboard-oriented graphical application launcher built with Odin, SDL3, and SDL3_ttf. It supports native Wayland layer-shell surfaces and an X11 fallback. %prep %autosetup -n %{name}-%{version} tar -xzf %{SOURCE1} # Odin defaults to static LLVM component libraries. Fedora ships the shared # library with llvm-devel, which is sufficient for this temporary compiler. sed -i 's/--libs core native/--link-shared --libs core native/' \ %{odin_dir}/build_odin.sh %build pushd %{odin_dir} LLVM_CONFIG=%{llvm_config} CXX=clang++ ./build_odin.sh release popd ./native/build.sh ./%{odin_dir}/odin build . \ -out:vima \ -no-rpath \ -reloc-mode:pic \ '-extra-linker-flags:-pie' \ -debug \ -o:speed %install install -Dm0755 vima %{buildroot}%{_bindir}/vima install -Dm0644 packaging/vima.desktop \ %{buildroot}%{_datadir}/applications/vima.desktop %check desktop-file-validate packaging/vima.desktop %files %license LICENSE %doc README.md %{_bindir}/vima %{_datadir}/applications/vima.desktop %changelog * Sat Sep 12 2026 Tawanda M Nyoni - 0.1.2-1 - Build release 0.1.2-1