Fix kwin-system76-scheduler-integration for KWin 6 (#1090)

* Update kwin-system76-scheduler-integration.spec

Signed-off-by: Dipta Biswas <73038615+hazel-bunny@users.noreply.github.com>

* Delete anda/misc/kwin-system76-scheduler-integration/system76-scheduler-dbus-proxy.sh

Signed-off-by: Dipta Biswas <73038615+hazel-bunny@users.noreply.github.com>

* Update kwin-system76-scheduler-integration.spec

Signed-off-by: Dipta Biswas <73038615+hazel-bunny@users.noreply.github.com>

* Update update.rhai

Signed-off-by: Dipta Biswas <73038615+hazel-bunny@users.noreply.github.com>

* Update kwin-system76-scheduler-integration.spec

Signed-off-by: Dipta Biswas <73038615+hazel-bunny@users.noreply.github.com>

---------

Signed-off-by: Dipta Biswas <73038615+hazel-bunny@users.noreply.github.com>
This commit is contained in:
Dipta Biswas
2024-04-13 22:59:26 +06:00
committed by GitHub
parent 637f1af74c
commit 0bf2e96d9c
3 changed files with 33 additions and 34 deletions
@@ -1,15 +1,20 @@
%global debug_package %nil
Name: kwin-system76-scheduler-integration
Version: 0.1
Release: 4%?dist
Summary: Notify the System76 Scheduler which app has focus so it can be prioritized
License: MIT
URL: https://github.com/maxiberta/kwin-system76-scheduler-integration
Source0: %url/archive/refs/tags/%version.tar.gz
Source1: system76-scheduler-dbus-proxy.sh
Source2: com.system76.Scheduler.dbusproxy.service
Requires: bash dbus-tools system76-scheduler kde-cli-tools systemd kf5-kconfig-core qt
Name: kwin-system76-scheduler-integration
%global forgeurl https://github.com/maxiberta/%{name}
%global commit 093a269670275feaa240d02c712f1ec8b812fd80
%global date 20240320
%forgemeta
Version: 0.1
Release: 5%?dist
Summary: Notify the System76 Scheduler which app has focus so it can be prioritized
License: MIT
URL: %forgeurl
Source0: %forgesource
Source1: com.system76.Scheduler.dbusproxy.service
Requires: bash dbus-tools system76-scheduler kde-cli-tools systemd kf6-kconfig-core
BuildRequires: systemd-rpm-macros
%description
@@ -20,21 +25,24 @@ This KWin Script interactively notifies System76 Scheduler which app has focus
via D-Bus, so it is prioritized.
%prep
%autosetup
%forgeautosetup
%build
%install
mkdir -p %buildroot%_datadir/kwin/scripts/kwin-system76-scheduler-integration/
cp -r * %buildroot%_datadir/kwin/scripts/kwin-system76-scheduler-integration/
install -Dm755 %SOURCE1 %buildroot%_libexecdir/system76-scheduler-dbus-proxy.sh
install -Dm644 %SOURCE2 %buildroot%_userunitdir/com.system76.Scheduler.dbusproxy.service
install -Dm644 metadata.desktop %buildroot%_datadir/kservices5/kwin-system76-scheduler-integration.desktop
mkdir -p %buildroot%_datadir/kwin/scripts/%{name}/
mkdir -p %buildroot%_libexecdir/
mkdir -p %buildroot%_userunitdir/
cp -r contents %buildroot%_datadir/kwin/scripts/%{name}/
cp -r metadata.json %buildroot%_datadir/kwin/scripts/%{name}/
cp -r system76-scheduler-dbus-proxy.sh %buildroot%_libexecdir/
install -Dm644 %SOURCE1 %buildroot%_userunitdir/com.system76.Scheduler.dbusproxy.service
%post
%systemd_user_post com.system76.Scheduler.dbusproxy.service
%preun
%systemd_user_preun com.system76.Scheduler.dbusproxy.service
@@ -42,10 +50,11 @@ install -Dm644 metadata.desktop %buildroot%_datadir/kservices5/kwin-system76-sch
%systemd_user_postun_with_restart com.system76.Scheduler.dbusproxy.service
%files
%license LICENSE
%doc README.md
%config %_userunitdir/com.system76.Scheduler.dbusproxy.service
%_libexecdir/system76-scheduler-dbus-proxy.sh
%_datadir/kwin/scripts/kwin-system76-scheduler-integration/
%_datadir/kservices5/kwin-system76-scheduler-integration.desktop
%_datadir/kwin/scripts/%{name}/
%changelog
%autochangelog
@@ -1,14 +0,0 @@
#!/bin/bash
set -euo pipefail
DBUS_SERVICE="com.system76.Scheduler"
DBUS_PATH="/com/system76/Scheduler"
DBUS_INTERFACE="com.system76.Scheduler"
DBUS_METHOD="SetForegroundProcess"
while true; do
read method call time sender _ dest serial path interface member
read type pid
[ "$member" = "member=$DBUS_METHOD" ] && qdbus --system $DBUS_SERVICE $DBUS_PATH $DBUS_INTERFACE.$DBUS_METHOD $pid
done < <(dbus-monitor "destination=$DBUS_SERVICE,path=$DBUS_PATH,interface=$DBUS_INTERFACE,member=$DBUS_METHOD")
@@ -1 +1,5 @@
rpm.version(gh("maxiberta/kwin-system76-scheduler-integration"));
rpm.global("commit", gh("maxiberta/kwin-system76-scheduler-integration"));
if rpm.changed() {
rpm.global("date", date()); // remove if we don't need the `date` macro
rpm.release();
}