%global commit f157ebe9e8f0caa51b182ee4749f06aae4fab20e %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global stamp 20261014225228 %global up noctalia Name: noctalia-git Version: 5.2.1^%{stamp}git%{shortcommit} Release: 1%{?dist} Summary: A sleek, customizable desktop shell crafted for Wayland. License: MIT URL: https://github.com/noctalia-dev/noctalia Provides: noctalia = %{version}-%{release} Conflicts: noctalia Conflicts: noctalia-nightly Source0: %{up}-%{commit}.tar.gz BuildRequires: meson BuildRequires: gcc-c++ BuildRequires: cmake BuildRequires: git BuildRequires: desktop-file-utils # Derived from upstream meson.build at SRPM time (scripts/gen-buildrequires.py) BuildRequires: pkgconfig(sdbus-c++) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(wayland-egl) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(cairo-ft) BuildRequires: pkgconfig(pango) >= 1.50 BuildRequires: pkgconfig(pangocairo) BuildRequires: pkgconfig(pangoft2) BuildRequires: pkgconfig(harfbuzz) BuildRequires: pkgconfig(librsvg-2.0) BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gobject-2.0) BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(libsecret-1) >= 0.20 BuildRequires: pkgconfig(libsodium) >= 1.0.18 BuildRequires: pkgconfig(polkit-agent-1) BuildRequires: pkgconfig(polkit-gobject-1) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(wireplumber-0.5) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libqalculate) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(md4c) BuildRequires: pkgconfig(nlohmann_json) BuildRequires: pkgconfig(tomlplusplus) BuildRequires: pkgconfig(libical) BuildRequires: pkgconfig(libwebp) BuildRequires: pkgconfig(libwebpdemux) BuildRequires: pkgconfig(libjxl) BuildRequires: pkgconfig(libjxl_threads) BuildRequires: pkgconfig(sndfile) BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(glesv2) BuildRequires: pkgconfig(jemalloc) BuildRequires: pam-devel BuildRequires: stb_image_resize2-devel BuildRequires: stb_image_write-devel Provides: desktop-notification-daemon Provides: PolicyKit-authentication-agent Requires: hicolor-icon-theme Requires: dejavu-sans-fonts Recommends: ddcutil Recommends: gpu-screen-recorder Recommends: power-profiles-daemon %description A sleek, customizable desktop shell crafted for Wayland (Noctalia v5). Git snapshot build. %files %license LICENSE %{_licensedir}/%{name}/third_party/ %doc README.md %{_bindir}/noctalia %{_datadir}/noctalia/ %{_datadir}/applications/dev.noctalia.Noctalia.desktop %{_datadir}/icons/hicolor/scalable/apps/noctalia.svg %prep %autosetup -n %{up}-%{commit} # Upstream tarball has no .git; stamp the commit into the version string sed -i "s/'unknown'/'%{shortcommit}'/g" meson.build %build %meson --buildtype=release -Dtests=disabled %meson_build %install %meson_install install -d %{buildroot}%{_licensedir}/%{name}/third_party find third_party -type f \( -name "LICENSE*" -o -name "COPYING*" -o -name "NOTICE*" \) | while read -r file; do dest_dir="%{buildroot}%{_licensedir}/%{name}/$(dirname "$file")" install -d "$dest_dir" install -p -m 0644 "$file" "$dest_dir/" done %check desktop-file-validate %{buildroot}%{_datadir}/applications/dev.noctalia.Noctalia.desktop %changelog * Wed Oct 14 2026 c0mpile - 0-0.1 - Automated git snapshot build