Ana Guerrero 2025-01-17 17:38:13 +00:00 committed by Git OBS Bridge
commit 122509b43b
6 changed files with 256 additions and 35 deletions

View File

@ -1,7 +1,7 @@
From 66b3dc4aafd8a97a08564bd460e6742582d69432 Mon Sep 17 00:00:00 2001
From 24e1764403171309cde962f5849ad11fbd16b2f4 Mon Sep 17 00:00:00 2001
From: "Shawn W. Dunn" <sfalken@cloverleaf-linux.org>
Date: Wed, 8 Jan 2025 09:24:02 -0800
Subject: [PATCH] configuration changes for default labwc session
Subject: [PATCH 1/4] configuration changes for default labwc session
Combines two prior patches into one, as they're both for the labwc
session. Sets openSUSE background for labwc session, and adjusts

View File

@ -0,0 +1,26 @@
From 38f2d4080029bf38c452c176bc675a2b1bd2c818 Mon Sep 17 00:00:00 2001
From: "Shawn W. Dunn" <sfalken@cloverleaf-linux.org>
Date: Wed, 8 Jan 2025 10:47:45 -0800
Subject: [PATCH 2/4] configuration changes for default wayfire session
Set openSUSE background in default wayfire session
---
configurations/lxqt-wayfire.ini | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configurations/lxqt-wayfire.ini b/configurations/lxqt-wayfire.ini
index edcbab3..3e531ef 100644
--- a/configurations/lxqt-wayfire.ini
+++ b/configurations/lxqt-wayfire.ini
@@ -126,7 +126,7 @@ toggle = <super> <ctrl> KEY_F
# Automatically start background and panel.
# Set to false if you want to override the default clients.
autostart_wf_shell = false
-splash = swaybg -i /usr/share/lxqt/wallpapers/origami-dark.png
+splash = swaybg -i /usr/share/wallpapers/openSUSEdefault/contents/images/default.png
session = lxqt-session && killall wayfire
# Output configuration
--
2.47.1

View File

@ -0,0 +1,26 @@
From 68ce5d43980b817fcf2759144d14bcead3689378 Mon Sep 17 00:00:00 2001
From: "Shawn W. Dunn" <sfalken@cloverleaf-linux.org>
Date: Wed, 8 Jan 2025 10:51:06 -0800
Subject: [PATCH 3/4] configuration changes for default niri session
Disables "natural scrolling" for scrollwheel in default session
---
configurations/lxqt-niri.kdl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configurations/lxqt-niri.kdl b/configurations/lxqt-niri.kdl
index 845a4d0..883eeac 100644
--- a/configurations/lxqt-niri.kdl
+++ b/configurations/lxqt-niri.kdl
@@ -28,7 +28,7 @@ input {
tap
dwt
dwtp
- natural-scroll
+ // natural-scroll
accel-speed 0.6
// accel-profile "flat"
// scroll-method "two-finger"
--
2.47.1

View File

@ -0,0 +1,129 @@
From 0f6ac090dfa3767fec272fed0f1391db3b859ab8 Mon Sep 17 00:00:00 2001
From: "Shawn W. Dunn" <sfalken@cloverleaf-linux.org>
Date: Thu, 16 Jan 2025 16:12:51 -0800
Subject: [PATCH 4/4] configuration adds miriway session
Adds miriway session to package, currently being considered for
inclusion upstream @ https://github.com/lxqt/lxqt-wayland-session/pull/40
---
configurations/CMakeLists.txt | 2 +
configurations/miriway/lxqt-miriway-wrapper | 42 +++++++++++++++++++++
configurations/miriway/miriway-shell.config | 22 +++++++++++
startlxqtwayland.in | 10 +++++
4 files changed, 76 insertions(+)
create mode 100644 configurations/miriway/lxqt-miriway-wrapper
create mode 100644 configurations/miriway/miriway-shell.config
diff --git a/configurations/CMakeLists.txt b/configurations/CMakeLists.txt
index 02ab38d..153a7f1 100644
--- a/configurations/CMakeLists.txt
+++ b/configurations/CMakeLists.txt
@@ -17,6 +17,8 @@ install(FILES
install(DIRECTORY
labwc
firstrun
+ miriway
+ USE_SOURCE_PERMISSIONS
DESTINATION "${CMAKE_INSTALL_DATADIR}/lxqt/wayland"
COMPONENT Runtime
)
diff --git a/configurations/miriway/lxqt-miriway-wrapper b/configurations/miriway/lxqt-miriway-wrapper
new file mode 100644
index 0000000..85079c0
--- /dev/null
+++ b/configurations/miriway/lxqt-miriway-wrapper
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+unset WAYLAND_DISPLAY
+unset DISPLAY
+
+port=0
+while [ -e "${XDG_RUNTIME_DIR}/wayland-${port}" ]; do
+ let port+=1
+done
+wayland_display=wayland-${port}
+
+export WAYLAND_DISPLAY=${wayland_display}
+
+if command -v Xwayland > /dev/null
+then
+ export MIR_SERVER_ENABLE_X11=1
+ MIR_SERVER_XWAYLAND_PATH=$(which Xwayland)
+ export MIR_SERVER_XWAYLAND_PATH
+fi
+
+export MIRIWAY_CONFIG_DIR="lxqt"
+
+miriway-shell --display-config=static="${XDG_CONFIG_HOME}/miriway-shell.display-config" --add-wayland-extensions=all --lockscreen-app="lxqt-leave --lockscreen" &
+miriway_pid=$!
+
+# Wait until the server starts
+until [ -O "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}" ]
+do
+ if ! kill -0 ${miriway_pid} &> /dev/null
+ then
+ echo "ERROR: miriway-shell [pid=${miriway_pid}] is not running"
+ exit 1
+ fi
+ inotifywait -qq --timeout 5 --event create "$(dirname "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}")"
+done
+
+lxqt-session "$@"
+lxqt_session_exit_code=$?
+
+kill $miriway_pid
+
+exit $lxqt_session_exit_code
diff --git a/configurations/miriway/miriway-shell.config b/configurations/miriway/miriway-shell.config
new file mode 100644
index 0000000..9f4cf9e
--- /dev/null
+++ b/configurations/miriway/miriway-shell.config
@@ -0,0 +1,22 @@
+x11-window-title=LXQt (Miriway)
+idle-timeout=600
+
+shell-component=dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
+
+shell-alt=Space:lxqt-runner
+shell-alt=F2:lxqt-runner
+shell-meta=l:lxqt-leave --lockscreen
+
+meta=p:pcmanfm-qt
+meta=Return:qterminal
+meta=f:featherpad
+
+meta=Left:@dock-left
+meta=Right:@dock-right
+meta=Space:@toggle-maximized
+meta=Home:@workspace-begin
+meta=End:@workspace-end
+meta=Page_Up:@workspace-up
+meta=Page_Down:@workspace-down
+ctrl-alt=BackSpace:@exit
+
diff --git a/startlxqtwayland.in b/startlxqtwayland.in
index 64a2986..dd91eb4 100644
--- a/startlxqtwayland.in
+++ b/startlxqtwayland.in
@@ -140,6 +140,16 @@ elif [ "$COMPOSITOR" = "kwin_wayland" ]; then
# WARNING: Option '--no-kactivities' can result in crashes with animations and corner actions.
exec ${COMPOSITOR}_wrapper --exit-with-session lxqt-session --xwayland
+elif [ "$COMPOSITOR" = "miriway" ]; then
+ export XDG_CURRENT_DESKTOP="LXQt:$COMPOSITOR:mir"
+ if [ ! -f "$XDG_CONFIG_HOME/lxqt/miriway-shell.config" ]; then
+ cp "$share_dir"/lxqt/wayland/miriway/miriway-shell.config "$XDG_CONFIG_HOME/lxqt/miriway-shell.config"
+ if echo "$valid_layouts" | grep -q "$trylayout"; then
+ echo "keymap=$trylayout" >> "$XDG_CONFIG_HOME/lxqt/miriway-shell.config"
+ fi
+ fi
+ exec "${share_dir}/lxqt/wayland/${COMPOSITOR}/lxqt-${COMPOSITOR}-wrapper"
+
elif [ "$COMPOSITOR" = "wayfire" ]; then
if [ ! -f "$XDG_CONFIG_HOME/lxqt/wayland/lxqt-wayfire.ini" ]; then
cp "$share_dir"/lxqt/wayland/lxqt-wayfire.ini "$XDG_CONFIG_HOME"/lxqt/wayland/
--
2.48.0

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Wed Jan 15 16:38:31 UTC 2025 - Shawn Dunn <sfalken@opensuse.org>
- Add:
* 0002-configuration-changes-for-default-wayfire-session.patch
- Sets openSUSE background for wayfire session
* 0003-configuration-changes-for-default-niri-session.patch
- Disables "natural scrolling" by default
* 0004-configuration-adds-miriway-session.patch
- Enables miriway as a compositor option, and adds
configurations
- Minor specfile cleanup
-------------------------------------------------------------------
Wed Jan 8 17:29:38 UTC 2025 - Shawn Dunn <sfalken@opensuse.org>

View File

@ -27,16 +27,26 @@ Source1: %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz.as
Source2: %{name}.keyring
## PATCH-CONFIGURATION-openSUSE 0001-configuration-changes-for-default-labwc-session.patch
Patch0: 0001-configuration-changes-for-default-labwc-session.patch
## PATCH-CONFIGURATION-openSUSE 0002-configuration-changes-for-default-wayfire-session.patch
Patch1: 0002-configuration-changes-for-default-wayfire-session.patch
## PATCH-CONFIGURATION-openSUSE 0003-configuration-changes-for-default-niri-session.patch
Patch2: 0003-configuration-changes-for-default-niri-session.patch
## PATCH-FEATURE-Upstream 0004-configuration-adds-miriway-session.patch
Patch3: 0004-configuration-adds-miriway-session.patch
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: git-core
BuildRequires: pkgconfig
BuildRequires: xdg-user-dirs
BuildRequires: cmake(KF6WindowSystem)
BuildRequires: cmake(Qt6LinguistTools)
BuildRequires: cmake(lxqt2-build-tools)
BuildRequires: pkgconfig(lxqt) >= 2.1.0
Requires: layer-shell-qt6 >= 6.2.0
Requires: lxqt-session >= 2.1.0
Requires: xdg-user-dirs
@ -59,6 +69,34 @@ Supplements: (%{name} and hyprland)
This package contains the files necessary to use Hyprland as the Wayland
compositor with LXQt
%package -n lxqt-labwc-session
Summary: Session files and theme for labwc
License: CC-BY-SA-4.0 AND GPL-2.0-or-later
Requires: %{name} = %{version}
Requires: labwc >= 0.7.2
Requires: swaybg
Requires: swayidle
Requires: swaylock
Recommends: labwc-tweaks
Recommends: sddm-conf
Recommends: wdisplays
Supplements: (%{name} and labwc)
Conflicts: labwc-theme-vent <= %{version}
%description -n lxqt-labwc-session
This package contains the openbox themes and other files for labwc.
%package -n lxqt-miriway-session
Summary: Session files for LXQt-Miriway
License: GPL-3.0-or-later
Requires: %{name} = %{version}
Requires: miriway
Supplements: (%{name} and miriway)
%description -n lxqt-miriway-session
This package contains the files necessary to use Miriway as the Wayland
compositor with LXQt
%package -n lxqt-niri-session
Summary: Session files for LXQT-niri
License: GPL-3.0-or-later
@ -105,23 +143,6 @@ Supplements: (%{name} and wayfire)
This package contains the files necessary to use wayfire as the Wayland
compositor with LXQt
%package -n lxqt-labwc-session
Summary: Session files and theme for labwc
License: CC-BY-SA-4.0 AND GPL-2.0-or-later
Requires: %{name} = %{version}
Requires: labwc >= 0.7.2
Requires: swaybg
Requires: swayidle
Requires: swaylock
Recommends: labwc-tweaks
Recommends: sddm-conf
Recommends: wdisplays
Supplements: (%{name} and labwc)
Conflicts: labwc-theme-vent <= %{version}
%description -n lxqt-labwc-session
This package contains the openbox themes and other files for labwc.
%prep
%autosetup -p1 -S git_am
@ -152,22 +173,6 @@ This package contains the openbox themes and other files for labwc.
%license LICENSE.BSD
%{_datadir}/lxqt/wayland/lxqt-hyprland.conf
%files -n lxqt-niri-session
%license COPYING
%{_datadir}/lxqt/wayland/lxqt-niri.kdl
%files -n lxqt-river-session
%license COPYING
%attr(0755,root,root)%{_datadir}/lxqt/wayland/lxqt-river-init
%files -n lxqt-sway-session
%license LICENSE.MIT
%{_datadir}/lxqt/wayland/lxqt-sway.config
%files -n lxqt-wayfire-session
%license LICENSE.MIT
%{_datadir}/lxqt/wayland/lxqt-wayfire.ini
%files -n lxqt-labwc-session
%license LICENSE.GPLv2
%dir %{_datadir}/lxqt/wallpapers
@ -185,4 +190,26 @@ This package contains the openbox themes and other files for labwc.
%{_datadir}/lxqt/wayland/labwc/themerc-override
%{_datadir}/lxqt/graphics/lxqt-labwc.png
%files -n lxqt-miriway-session
%license COPYING
%dir %{_datadir}/lxqt/wayland/miriway
%attr(0755,root,root)%{_datadir}/lxqt/wayland/miriway/lxqt-miriway-wrapper
%{_datadir}/lxqt/wayland/miriway/miriway-shell.config
%files -n lxqt-niri-session
%license COPYING
%{_datadir}/lxqt/wayland/lxqt-niri.kdl
%files -n lxqt-river-session
%license COPYING
%attr(0755,root,root)%{_datadir}/lxqt/wayland/lxqt-river-init
%files -n lxqt-sway-session
%license LICENSE.MIT
%{_datadir}/lxqt/wayland/lxqt-sway.config
%files -n lxqt-wayfire-session
%license LICENSE.MIT
%{_datadir}/lxqt/wayland/lxqt-wayfire.ini
%changelog