%bcond_with asan %global debug_package %{nil} %global tag 0.3.0 Name: quickshell Version: %{tag} Release: %autorelease 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/v%{tag}/quickshell-%{tag}.tar.gz %if 0%{?fedora} %global crash_handler ON BuildRequires: cpptrace-devel BuildRequires: libdwarf-devel BuildRequires: pkgconfig(libzstd) %else %global crash_handler OFF %endif %if 0%{?fedora} %global jemalloc_enabled ON %else %global jemalloc_enabled OFF %endif BuildRequires: cmake BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6Qml) BuildRequires: cmake(Qt6ShaderTools) BuildRequires: cmake(Qt6WaylandClient) BuildRequires: gcc-c++ BuildRequires: ninja-build %if 0%{?fedora} BuildRequires: pkgconfig(CLI11) %else BuildRequires: cli11-devel %endif BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(polkit-agent-1) %if 0%{?fedora} BuildRequires: pkgconfig(jemalloc) %endif BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(pam) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: qt6-qtbase-private-devel BuildRequires: spirv-tools %if %{with asan} BuildRequires: libasan %endif Conflicts: quickshell-git Provides: desktop-notification-daemon %description Flexible toolkit for making desktop shells with QtQuick, targeting Wayland and X11. %prep %autosetup -n quickshell-%{tag} -p1 %build %cmake -GNinja \ %if %{with asan} -DASAN=ON \ %endif -DBUILD_SHARED_LIBS=OFF \ -DCRASH_HANDLER=%{crash_handler} \ -DUSE_JEMALLOC=%{jemalloc_enabled} \ -DCMAKE_BUILD_TYPE=Release \ -DDISTRIBUTOR="Fedora COPR (avengemedia/quickshell)" \ -DINSTALL_QML_PREFIX=%{_lib}/qt6/qml %cmake_build %install %cmake_install %files %license LICENSE %license LICENSE-GPL %doc BUILD.md %doc CONTRIBUTING.md %doc README.md %doc changelog/v%{tag}.md %{_bindir}/qs %{_bindir}/quickshell %{_datadir}/applications/org.quickshell.desktop %{_datadir}/icons/hicolor/scalable/apps/org.quickshell.svg %{_libdir}/qt6/qml/Quickshell %changelog %autochangelog