# SPDX-License-Identifier: MIT # ============================================================================= # Version definitions # ============================================================================= %global hypridle_version 0.1.7 %global hyprland_min_ver 0.54.2 %global hyprwayland_scanner_ver 0.4.5 %global hyprutils_ver 0.11.0 %global hyprlang_ver 0.6.8 %global hyprland_protocols_ver 0.7.0 Name: hypridle Version: %{hypridle_version} Release: 1%{?dist} Summary: Hyprland idle daemon License: BSD-3-Clause URL: https://github.com/hyprwm/hypridle # Main source Source0: https://github.com/hyprwm/hypridle/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz # Vendored Hyprland libs Source10: https://github.com/hyprwm/hyprwayland-scanner/archive/refs/tags/v%{hyprwayland_scanner_ver}.tar.gz#/hyprwayland-scanner-%{hyprwayland_scanner_ver}.tar.gz Source11: https://github.com/hyprwm/hyprutils/archive/refs/tags/v%{hyprutils_ver}.tar.gz#/hyprutils-%{hyprutils_ver}.tar.gz Source12: https://github.com/hyprwm/hyprlang/archive/refs/tags/v%{hyprlang_ver}.tar.gz#/hyprlang-%{hyprlang_ver}.tar.gz Source13: https://github.com/hyprwm/hyprland-protocols/archive/refs/tags/v%{hyprland_protocols_ver}.tar.gz#/hyprland-protocols-%{hyprland_protocols_ver}.tar.gz BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: meson BuildRequires: ninja-build BuildRequires: pkgconf-pkg-config BuildRequires: sdbus-cpp-devel >= 2.0.0 BuildRequires: wayland-devel BuildRequires: wayland-protocols-devel Requires: hyprland >= %{hyprland_min_ver} Requires: libwayland-client Requires: sdbus-cpp >= 2.0.0 %description hypridle is a lightweight idle daemon for Hyprland that allows you to define timeout actions (e.g. screen dimming, locking, sleep) based on user inactivity. This package uses vendored Hyprland libraries installed by the hyprland package at /usr/libexec/hyprland/vendor/. %prep %autosetup -n %{name}-%{version} # Unpack vendored deps tar -xzf %{SOURCE10} tar -xzf %{SOURCE11} tar -xzf %{SOURCE12} tar -xzf %{SOURCE13} %build VENDOR_PREFIX="$(pwd)/vendor" export PATH="$VENDOR_PREFIX/bin:$PATH" export PKG_CONFIG_PATH="$VENDOR_PREFIX/lib64/pkgconfig:$VENDOR_PREFIX/lib/pkgconfig:%{_libdir}/pkgconfig:%{_datadir}/pkgconfig" export CMAKE_PREFIX_PATH="$VENDOR_PREFIX" GCC15_CXXFLAGS="%{optflags} -fpermissive" # 1) hyprwayland-scanner (build tool) pushd hyprwayland-scanner-%{hyprwayland_scanner_ver} cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$VENDOR_PREFIX" \ -DCMAKE_INSTALL_LIBDIR=lib64 cmake --build build --parallel %{_smp_build_ncpus} cmake --install build popd # 2) hyprutils pushd hyprutils-%{hyprutils_ver} cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$VENDOR_PREFIX" \ -DCMAKE_PREFIX_PATH="$VENDOR_PREFIX" -DCMAKE_INSTALL_LIBDIR=lib64 cmake --build build --parallel %{_smp_build_ncpus} cmake --install build popd # 3) hyprlang pushd hyprlang-%{hyprlang_ver} cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$VENDOR_PREFIX" \ -DCMAKE_PREFIX_PATH="$VENDOR_PREFIX" -DCMAKE_INSTALL_LIBDIR=lib64 cmake --build build --parallel %{_smp_build_ncpus} cmake --install build popd # 4) hyprland-protocols pushd hyprland-protocols-%{hyprland_protocols_ver} meson setup build --prefix="$VENDOR_PREFIX" ninja -C build ninja -C build install popd # 5) hypridle VENDOR_RPATH='%{_libexecdir}/hyprland/vendor/lib64:%{_libexecdir}/hyprland/vendor/lib' cmake -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_PREFIX_PATH="$VENDOR_PREFIX" \ -Dhyprwayland-scanner_DIR="$VENDOR_PREFIX/lib64/cmake/hyprwayland-scanner" \ -DCMAKE_CXX_FLAGS="$GCC15_CXXFLAGS" \ -DCMAKE_INSTALL_RPATH="$VENDOR_RPATH" \ -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON cmake --build build --parallel %{_smp_build_ncpus} %install DESTDIR=%{buildroot} cmake --install build %files %license LICENSE %doc README.md %{_bindir}/%{name} %changelog * Mon Mar 16 2026 Automated Build - 0.54.2-1 - Update to Hyprland 0.54.2 * Mon Mar 16 2026 Automated Build - 0.54.2-1 - Update to Hyprland 0.54.2 * Mon Mar 16 2026 Automated Build - 0.1.7-1 - Initial package for jwpkg/Hyprland-Fedora COPR