Name: treeland Version: 0.8.1 Release: %autorelease Summary: App manager of Deepin Desktop Environment License: LGPL-3.0-or-later URL: https://github.com/linuxdeepin/treeland Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz Patch0: https://topazus.fedorapeople.org/treeland-fix.patch BuildRequires: gcc-c++ BuildRequires: cmake BuildRequires: ninja-build BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6Gui) BuildRequires: cmake(Qt6Widgets) BuildRequires: cmake(Qt6DBus) BuildRequires: cmake(Qt6Qml) BuildRequires: cmake(Qt6Quick) BuildRequires: cmake(Qt6QuickControls2) BuildRequires: cmake(Qt6Concurrent) BuildRequires: cmake(Qt6WaylandClient) BuildRequires: cmake(Qt6ShaderTools) BuildRequires: cmake(Qt6LinguistTools) BuildRequires: cmake(Qt6Test) BuildRequires: cmake(Qt6QuickTest) BuildRequires: cmake(Qt6GuiPrivate) BuildRequires: cmake(Qt6QuickPrivate) BuildRequires: cmake(Qt6WaylandClientPrivate) BuildRequires: cmake(Dtk6Core) BuildRequires: cmake(Dtk6Declarative) BuildRequires: cmake(Dtk6SystemSettings) BuildRequires: cmake(Dtk6Tools) BuildRequires: cmake(DDM) BuildRequires: cmake(TreelandProtocols) BuildRequires: pkgconfig(wlroots-0.19) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(pam) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(xau) BuildRequires: pkgconfig(pixman-1) BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(wayland-server) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(wlr-protocols) %description treeland is a wayland compositor based on wlroots and QtQuick, designed to provide efficient and flexible graphical interface support. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel This package contains development files for %{name}. %package -n qwlroots Summary: Libraries for qwlroots %description -n qwlroots Qwlroots is a binding of wlroots, which provides a Qt style development interface. It aims to simplify wlroots API calling methods with Qt, and serve the needs of calling wlroots within Qt projects. In qwlroots, each wlroots struct is wrapped as a C++ class with its corresponding functions. At the same time, wl_singals in Wayland are wrapped as Qt signals. %package -n qwlroots-devel Summary: Development files for qwlroots Requires: wlroots%{?_isa} = %{version}-%{release} %description -n qwlroots-devel This package contains the development files for qwlroots. %package -n waylib Summary: Libraries for qwlroots %description -n waylib Waylib is a Wayland compositor development library, based on qwlroots, provides a Qt-style development interface. It is designed to be deeply integrated with QtQuick, taking advantage of QtQuick's Scene Graphics model to simplify the complexity of window management. In waylib, it is possible to attach one or multiple Wayland Outputs to a QQuickWindow, and a corresponding Wayland Surface can be attached to a QQuickItem, allowing it to be mixed with QtQuick's graphics components and supporting QRHI for OpenGL and Vulkan compatibility in a single piece of code. %package -n waylib-devel Summary: Development files for waylib Requires: waylib%{?_isa} = %{version}-%{release} %description -n waylib-devel This package contains the development files for waylib. %prep %autosetup -p1 -C %build %cmake -GNinja %cmake_build %install %cmake_install %check %ctest %files %doc README.md %license LICENSES/* %{_bindir}/treeland %{_bindir}/treeland-user-wrapper %{_bindir}/treeland.sh %{_unitdir}/treeland.service %{_userunitdir}/dde-session-pre.target.wants/ %{_userunitdir}/dde-session-shutdown.target.wants/ %{_userunitdir}/treeland-sd.service %{_userunitdir}/treeland-sd.socket %{_userunitdir}/treeland-session-helper.service %{_userunitdir}/treeland-session-shutdown.service %{_userunitdir}/treeland-shortcut.service %{_userunitdir}/treeland-xwayland.service %{_userunitdir}/treeland-xwayland.socket %{_userunitdir}/treeland.service %{_userunitdir}/treeland.service.wants/ %{_libdir}/libtreeland-protocol-capture-v1.so.0* %{_libdir}/libtreeland.so.0* %{_libdir}/treeland/plugins/liblockscreen.so %{_libdir}/treeland/plugins/libmultitaskview.so %{_libexecdir}/treeland-* %{_datadir}/dbus-1/interfaces/org.freedesktop.ScreenSaver.xml %{_datadir}/dbus-1/services/org.freedesktop.ScreenSaver.service %{_datadir}/dbus-1/system.d/org.deepin.compositor1.conf %{_datadir}/dsg/configs/org.deepin.dde.treeland/ %dir %{_datadir}/treeland %dir %{_datadir}/treeland/shortcuts %dir %{_datadir}/treeland/translations %{_datadir}/treeland/shortcuts/*.ini %{_datadir}/treeland/translations/*.qm %{_datadir}/wayland-sessions/treeland-user.desktop %{_datadir}/wayland-sessions/treeland.desktop %files devel %{_includedir}/treeland/ %{_libdir}/cmake/Treeland/ %{_libdir}/cmake/treeland/ %{_libdir}/libtreeland-protocol-capture-v1.so %{_libdir}/libtreeland.so %files -n qwlroots %{_libdir}/libqwlroots.so.0* %files -n qwlroots-devel %{_includedir}/qwlroots/ %{_libdir}/libqwlroots.so %{_libdir}/pkgconfig/qwlroots.pc %files -n waylib %{_libdir}/libwaylibserver.so.0* %files -n waylib-devel %{_includedir}/waylibserver/ %{_libdir}/cmake/Waylib/ %{_libdir}/cmake/WaylibServer/ %{_libdir}/libwaylibserver.so %{_libdir}/pkgconfig/waylibserver.pc %changelog %autochangelog