Support wayland session by launching kwin as wayland server.
Signed-off-by: tangjie02 <tangjie02@kylinsec.com.cn>
This commit is contained in:
parent
86bfddb401
commit
ae5f366ecb
124
0001-feature-wayland-Support-wayland-session-by-launching.patch
Normal file
124
0001-feature-wayland-Support-wayland-session-by-launching.patch
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
From 199320d7beec9ea0b80c3e7f331f3d269d68f493 Mon Sep 17 00:00:00 2001
|
||||||
|
From: tangjie02 <tangjie02@kylinsec.com.cn>
|
||||||
|
Date: Tue, 7 Feb 2023 20:23:51 +0800
|
||||||
|
Subject: [PATCH] feature(wayland): Support wayland session by launching kwin
|
||||||
|
as wayland server.
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
- 使用kwin来支持wayland会话
|
||||||
|
|
||||||
|
Signed-off-by: tangjie02 <tangjie02@kylinsec.com.cn>
|
||||||
|
---
|
||||||
|
data/CMakeLists.txt | 32 +++++++++++++++--------------
|
||||||
|
data/kiran-session-kwayland.in | 9 ++++++++
|
||||||
|
data/kiran-session-wayland.in | 3 +++
|
||||||
|
data/kiran-wayland.desktop.in | 4 ++--
|
||||||
|
data/sessions/kiran-wayland.session | 2 +-
|
||||||
|
5 files changed, 32 insertions(+), 18 deletions(-)
|
||||||
|
create mode 100644 data/kiran-session-kwayland.in
|
||||||
|
create mode 100644 data/kiran-session-wayland.in
|
||||||
|
|
||||||
|
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
|
||||||
|
index 8df02d5..83aed59 100644
|
||||||
|
--- a/data/CMakeLists.txt
|
||||||
|
+++ b/data/CMakeLists.txt
|
||||||
|
@@ -1,27 +1,29 @@
|
||||||
|
cmake_minimum_required(VERSION 3.2)
|
||||||
|
|
||||||
|
-# gschema.xml
|
||||||
|
-file(GLOB SCHEMA_IN_FILES ./*.gschema.xml.in)
|
||||||
|
-
|
||||||
|
-foreach(SCHEMA_IN_FILE IN LISTS SCHEMA_IN_FILES)
|
||||||
|
- string(REGEX REPLACE ".+/(.+)\\..*" "\\1" SCHEMA_FILE ${SCHEMA_IN_FILE})
|
||||||
|
- configure_file(${SCHEMA_IN_FILE} ${PROJECT_BINARY_DIR}/data/${SCHEMA_FILE})
|
||||||
|
+# xxx.in -> xxx
|
||||||
|
+file(GLOB XXX_IN_FILES ./*.in)
|
||||||
|
|
||||||
|
- install(FILES ${PROJECT_BINARY_DIR}/data/${SCHEMA_FILE}
|
||||||
|
- DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/glib-2.0/schemas/)
|
||||||
|
+foreach(XXX_IN_FILE IN LISTS XXX_IN_FILES)
|
||||||
|
+ string(REGEX REPLACE ".+/(.+)\\..*" "\\1" XXX_FILE ${XXX_IN_FILE})
|
||||||
|
+ configure_file(${XXX_IN_FILE} ${PROJECT_BINARY_DIR}/data/${XXX_FILE} @ONLY)
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
+# wayland executable file
|
||||||
|
+install(PROGRAMS ${PROJECT_BINARY_DIR}/data/kiran-session-wayland
|
||||||
|
+ ${PROJECT_BINARY_DIR}/data/kiran-session-kwayland
|
||||||
|
+ DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}/)
|
||||||
|
+
|
||||||
|
+# gschema.xml
|
||||||
|
+install(
|
||||||
|
+ FILES
|
||||||
|
+ ${PROJECT_BINARY_DIR}/data/com.kylinsec.kiran.session-manager.gschema.xml
|
||||||
|
+ DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/glib-2.0/schemas/)
|
||||||
|
+
|
||||||
|
# conf
|
||||||
|
install(FILES ${PROJECT_SOURCE_DIR}/data/90-lightdm-kiran-greeter.conf
|
||||||
|
DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/lightdm/lightdm.conf.d)
|
||||||
|
|
||||||
|
-# desktop.in
|
||||||
|
-file(GLOB DESKTOP_IN_FILES ./*.desktop.in)
|
||||||
|
-foreach(DESKTOP_IN_FILE IN LISTS DESKTOP_IN_FILES)
|
||||||
|
- string(REGEX REPLACE ".+/(.+)\\..*" "\\1" DESKTOP_FILE ${DESKTOP_IN_FILE})
|
||||||
|
- configure_file(${DESKTOP_IN_FILE} ${PROJECT_BINARY_DIR}/data/${DESKTOP_FILE})
|
||||||
|
-endforeach()
|
||||||
|
-
|
||||||
|
+# desktop
|
||||||
|
install(FILES ${PROJECT_BINARY_DIR}/data/kiran.desktop
|
||||||
|
DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/xsessions)
|
||||||
|
install(FILES ${PROJECT_BINARY_DIR}/data/kiran-wayland.desktop
|
||||||
|
diff --git a/data/kiran-session-kwayland.in b/data/kiran-session-kwayland.in
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..91c2cf8
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/data/kiran-session-kwayland.in
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+
|
||||||
|
+drs=
|
||||||
|
+
|
||||||
|
+if [ -z "${DBUS_SESSION_BUS_ADDRESS}" ]; then
|
||||||
|
+ drs=dbus-run-session
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+exec ${drs} kwin_wayland --xwayland --drm --no-lockscreen --exit-with-session=@CMAKE_INSTALL_FULL_BINDIR@/kiran-session-wayland
|
||||||
|
\ No newline at end of file
|
||||||
|
diff --git a/data/kiran-session-wayland.in b/data/kiran-session-wayland.in
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..4bd1de9
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/data/kiran-session-wayland.in
|
||||||
|
@@ -0,0 +1,3 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+
|
||||||
|
+exec @CMAKE_INSTALL_FULL_BINDIR@/kiran-session-manager --session-type=kiran-wayland
|
||||||
|
\ No newline at end of file
|
||||||
|
diff --git a/data/kiran-wayland.desktop.in b/data/kiran-wayland.desktop.in
|
||||||
|
index d98cd10..34c4781 100644
|
||||||
|
--- a/data/kiran-wayland.desktop.in
|
||||||
|
+++ b/data/kiran-wayland.desktop.in
|
||||||
|
@@ -2,8 +2,8 @@
|
||||||
|
Name=KIRAN
|
||||||
|
Comment=This session logs you into KIRAN
|
||||||
|
Comment[zh_CN]=此会话将您登录到 KIRAN
|
||||||
|
-Exec=@CMAKE_INSTALL_FULL_BINDIR@/kiran-session-manager --session-type=kiran-wayland
|
||||||
|
-TryExec=@CMAKE_INSTALL_FULL_BINDIR@/kiran-session-manager
|
||||||
|
+Exec=@CMAKE_INSTALL_FULL_BINDIR@/kiran-session-kwayland
|
||||||
|
+TryExec=@CMAKE_INSTALL_FULL_BINDIR@/kiran-session-kwayland
|
||||||
|
Type=Application
|
||||||
|
DesktopNames=KIRAN
|
||||||
|
Keywords=KIRAN;session;
|
||||||
|
diff --git a/data/sessions/kiran-wayland.session b/data/sessions/kiran-wayland.session
|
||||||
|
index 5292a1f..65bc4a6 100644
|
||||||
|
--- a/data/sessions/kiran-wayland.session
|
||||||
|
+++ b/data/sessions/kiran-wayland.session
|
||||||
|
@@ -1,3 +1,3 @@
|
||||||
|
[Kiran Session]
|
||||||
|
Name=Kiran Session
|
||||||
|
-RequiredComponents=kiran-session-idlemonitor;kiran-session-daemon;mate-settings-daemon;mutter;kiran-panel;caja
|
||||||
|
+RequiredComponents=kiran-session-idlemonitor;kiran-session-daemon;mate-settings-daemon;kiran-panel;caja
|
||||||
|
--
|
||||||
|
2.36.1
|
||||||
|
|
||||||
@ -1,11 +1,13 @@
|
|||||||
Name: kiran-session-manager
|
Name: kiran-session-manager
|
||||||
Version: 2.4.0
|
Version: 2.4.0
|
||||||
Release: 1
|
Release: 2
|
||||||
Summary: Session manager for KIRAN desktop environment
|
Summary: Session manager for KIRAN desktop environment
|
||||||
|
|
||||||
License: MulanPSL-2.0
|
License: MulanPSL-2.0
|
||||||
Source0: %{name}-%{version}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
|
|
||||||
|
Patch1001: 0001-feature-wayland-Support-wayland-session-by-launching.patch
|
||||||
|
|
||||||
BuildRequires: cmake >= 3.2
|
BuildRequires: cmake >= 3.2
|
||||||
BuildRequires: pkgconfig(gio-unix-2.0)
|
BuildRequires: pkgconfig(gio-unix-2.0)
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
@ -62,10 +64,15 @@ make %{?_smp_mflags}
|
|||||||
%{_bindir}/kiran-session-manager
|
%{_bindir}/kiran-session-manager
|
||||||
%{_bindir}/kiran-session-idlemonitor
|
%{_bindir}/kiran-session-idlemonitor
|
||||||
%{_bindir}/kiran-session-window
|
%{_bindir}/kiran-session-window
|
||||||
|
%{_bindir}/kiran-session-kwayland
|
||||||
|
%{_bindir}/kiran-session-wayland
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 07 2023 tangjie02 <tangjie02@kylinsec.com.cn> - 2.4.0-2
|
||||||
|
- Support wayland session by launching kwin as wayland server.
|
||||||
|
|
||||||
* Fri Nov 04 2022 tangjie02 <tangjie02@kylinsec.com.cn> - 2.4.0-1
|
* Fri Nov 04 2022 tangjie02 <tangjie02@kylinsec.com.cn> - 2.4.0-1
|
||||||
- KYOS-F: Init commit for v2.4
|
- KYOS-F: Init commit for v2.4
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user