File noctalia-qs.spec of Package noctalia-qs
#
# spec file for package noctalia-qs
#
# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define __builder ninja
Name: noctalia-qs
Version: 0.0.9+2.gfd50060
Release: 0
Summary: Toolkit for making desktop shells with QtQuick
License: LGPL-3.0-only
URL: https://github.com/noctalia-dev/noctalia-qs
Source0: %{name}-%{version}.tar.zst
Patch0: 0001-CMake-wayland-add-missing-wayland-client-CFLAGS.patch
BuildRequires: Mesa-libGLESv3-devel
BuildRequires: c++_compiler
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: hicolor-icon-theme
BuildRequires: ninja
BuildRequires: pkgconfig
BuildRequires: qt6-base-private-devel
BuildRequires: qt6-declarative-private-devel
BuildRequires: qt6-waylandclient-private-devel
BuildRequires: cmake(CLI11)
BuildRequires: cmake(Qt6Core)
BuildRequires: cmake(Qt6Qml)
BuildRequires: cmake(Qt6ShaderTools)
BuildRequires: cmake(Qt6WaylandClient)
BuildRequires: cmake(cpptrace)
BuildRequires: cmake(zstd)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libpipewire-0.3)
BuildRequires: pkgconfig(pam)
BuildRequires: pkgconfig(polkit-agent-1)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-protocols)
Recommends: libtcmalloc4
Recommends: noctalia-shell
Conflicts: quickshell
Conflicts: quickshell-git
BuildSystem: cmake
BuildOption: -DCMAKE_CXX_STANDARD=20
BuildOption: -DCMAKE_SKIP_RPATH=TRUE
BuildOption: -DDISTRIBUTOR="openSUSE (home:mia)"
BuildOption: -DGIT_REVISION="%{version}"
BuildOption: -DCRASH_HANDLER=ON
# Does not fix memory fragmentation. Use tcmalloc instead!
BuildOption: -DUSE_JEMALLOC=OFF
%description
noctalia-qs extends Quickshell with features and patches specific
to the Noctalia shell ecosystem, including:
- ext-background-effect-v1 Wayland protocol support
- Noctalia-specific build defaults and configuration
The executable is named qs and is a drop-in replacement for
quickshell when using Noctalia Shell.
%prep
%autosetup -p1
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/dev.noctalia.noctalia-qs.desktop
%files
%license LICENSE
%doc README.md
%{_bindir}/quickshell
%{_bindir}/qs
%{_datadir}/applications/dev.noctalia.noctalia-qs.desktop
%{_datadir}/icons/hicolor/scalable/apps/dev.noctalia.noctalia-qs.svg
%changelog