File niri-caelestia-shell.spec of Package niri-caelestia-shell

#
# spec file for package quickshell
#
# Copyright (c) 2025 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 _lto_cflags %{nil}
%define __builder ninja
%define git_rev %(echo %{version} | sed 's/.*g//')
%define pkg_ver %(echo %{version} | sed 's/\.g.*//')
Name:           niri-caelestia-shell
Version:        20250914.gfd12f57
Release:        0
Summary:        Quickshell-based desktop environment for Niri
License:        GPL-3.0-only
URL:            https://github.com/jutraim/niri-caelestia-shell.git
Source0:        %{name}-%{version}.tar.zst
Patch0:         0001-Require-QtQuick.patch
BuildRequires:  c++_compiler
BuildRequires:  cmake
BuildRequires:  ninja
BuildRequires:  pkgconfig
BuildRequires:  qt6-declarative-devel
BuildRequires:  quickshell
BuildRequires:  cmake(Qt6Concurrent)
BuildRequires:  cmake(Qt6Core)
BuildRequires:  cmake(Qt6Gui)
BuildRequires:  cmake(Qt6Multimedia)
BuildRequires:  pkgconfig(aubio)
BuildRequires:  pkgconfig(cava)
BuildRequires:  pkgconfig(fftw3)
BuildRequires:  pkgconfig(libpipewire-0.3)
BuildRequires:  pkgconfig(libqalculate)
Requires:       brightnessctl
Requires:       ddcutil
Requires:       grim
Requires:       niri
Requires:       quickshell
Requires:       sensors
Requires:       swappy

%description
A Quickshell-based desktop environment forked from Caelestia Shell,
adapted to run with the Niri window manager. This fork keeps the
dashboard-based workflow while experimenting with new sidebar
features and Niri.

%prep
%autosetup -p1

%build
%cmake \
    -DINSTALL_LIBDIR="%{_libdir}/caelestia" \
    -DINSTALL_QMLDIR="%{_libdir}/qt6/qml" \
    -DINSTALL_QSCONFDIR="%{_sysconfdir}/xdg/quickshell/%{name}" \
    -DVERSION="%{pkg_ver}" \
    -DGIT_REVISION="%{git_rev}" \
    -DDISTRIBUTOR="openSUSE (home:mia)" \
    -DDISTRIBUTOR_DEBUGINFO_AVAILABLE=YES
%cmake_build

%install
%cmake_install

%files
%license LICENSE
%doc README.md
%dir %{_sysconfdir}/xdg/quickshell
%{_sysconfdir}/xdg/quickshell/%{name}
%{_libdir}/caelestia
%{_libdir}/qt6/qml/Caelestia

%changelog
openSUSE Build Service is sponsored by