%global commit 11a71d233a566caba4ddffdca2e41d1fa79e45b1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global build_timestamp %(date +"%Y%m%d") %global rel_build 10.git.%{build_timestamp}.%{shortcommit}%{?dist} %bcond_with asan Name: quickshell Version: 0.2.1 Release: %{rel_build} Summary: Flexible QtQuick based desktop shell toolkit License: LGPL-3.0-only AND GPL-3.0-only URL: https://github.com/quickshell-mirror/quickshell Source0: %{url}/archive/%{commit}/%{name}-%{commit}.tar.gz %if 0%{fedora} >= 42 BuildRequires: breakpad-static %endif BuildRequires: cmake BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6Qml) BuildRequires: cmake(Qt6ShaderTools) BuildRequires: cmake(Qt6WaylandClient) BuildRequires: gcc-c++ BuildRequires: git BuildRequires: ninja-build BuildRequires: pkgconfig(breakpad) BuildRequires: pkgconfig(CLI11) BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(jemalloc) BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(libunwind-generic) BuildRequires: pkgconfig(pam) BuildRequires: pkgconfig(polkit-agent-1) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: qt6-qtbase-private-devel BuildRequires: spirv-tools %if %{with asan} BuildRequires: libasan %endif Provides: desktop-notification-daemon Provides: bundled(cpptrace) = 1.0.4 Conflicts: noctalia-qs %description Flexible toolkit for making desktop shells with QtQuick, targeting Wayland and X11. %prep %autosetup -n %{name}-%{commit} %build %cmake -GNinja \ %if %{with asan} -DASAN=ON \ %endif -DBUILD_SHARED_LIBS=OFF \ -DCMAKE_BUILD_TYPE=Release \ -DDISTRIBUTOR="Fedora COPR (lionheartp/Hyprland)" \ -DDISTRIBUTOR_DEBUGINFO_AVAILABLE=YES \ -DGIT_REVISION=%{commit} \ -DINSTALL_QML_PREFIX=%{_lib}/qt6/qml \ -DVENDOR_CPPTRACE=ON %cmake_build %install %cmake_install # Remove vendored files we don't want to package rm -rf %{buildroot}%{_includedir}/{cpptrace,ctrace,dwarf.h,libdwarf.h,zstd.h,zdict.h,zstd_errors.h} rm -rf %{buildroot}%{_libdir}/{libcpptrace.a,libdwarf.a,libzstd.a} rm -rf %{buildroot}%{_libdir}/cmake/{cpptrace,libdwarf,zstd} rm -rf %{buildroot}%{_libdir}/pkgconfig/{libdwarf.pc,libzstd.pc} rm -rf %{buildroot}%{_datadir}/cpptrace %files %license LICENSE %license LICENSE-GPL %doc BUILD.md %doc CONTRIBUTING.md %doc README.md %doc changelog/v%{version}.md %{_bindir}/qs %{_bindir}/quickshell %{_datadir}/applications/org.quickshell.desktop %{_datadir}/icons/hicolor/scalable/apps/org.quickshell.svg %{_libdir}/qt6/qml/Quickshell %changelog %autochangelog