%global tag v1.3.1 %global pkg_version 1.3.1 # This macro tells RPM not to fail if the build-id is missing, # but it's better to try and generate it first. %global _missing_build_ids_terminate_build 0 # If you don't need debuginfo packages (typical for personal TUIs), disable it: %global debug_package %{nil} Name: ly Version: %{pkg_version} Release: 1%{?dist} Summary: A lightweight TUI display manager for Linux and BSD License: WTFPL URL: https://github.com/fairyglade/ly Source0: %{url}/archive/%{tag}/%{name}-%{tag}.tar.gz BuildRequires: zig BuildRequires: systemd-devel BuildRequires: pam-devel BuildRequires: libxcb-devel Requires: pam Requires: xauth Requires: systemd %description Ly is a lightweight TUI display manager. It features a simple interface and supports both X and Wayland. %prep %autosetup -n %{name}-%{pkg_version} %build export ZIG_GLOBAL_CACHE_DIR=$(pwd)/.zig-cache # Added --ld-lflags to force a GNU-style build-id for Fedora's rpmbuild zig build -Doptimize=ReleaseSafe -Dinit_system=systemd --summary all %install export ZIG_GLOBAL_CACHE_DIR=$(pwd)/.zig-cache DESTDIR=%{buildroot} zig build install --prefix %{_prefix} -Dinit_system=systemd %post %systemd_post ly.service %preun %systemd_preun ly.service %postun %systemd_postun_with_restart ly.service %files %license license.md %doc readme.md %{_bindir}/ly %dir %{_sysconfdir}/ly %config(noreplace) %{_sysconfdir}/ly/config.ini %{_unitdir}/ly.service %{_datadir}/ly/ %changelog * Sat Jan 31 2026 Your Name - 1.3.1-1 - Fixed "No build ID note found" error by disabling debug_package - Updated build process for Zig 0.15+ compatibility