在CentOS8的gdm启动(迎宾)期间启动Synergy

在CentOS8的gdm启动(迎宾)期间启动Synergy,centos8,gdm,Centos8,Gdm,这类似于 然而,这似乎不再起作用了 我基本上想做的是在显示迎宾员时执行一个程序。通过将其添加到/etc/gdm/Init/Default脚本中,这一点以前一直有效。 但是,现在该脚本似乎不再被调用(通过“logger”调用进行测试) SElinux处于允许模式。脚本是可执行的。synergyc是用完整路径指定的。以下内容解决了该问题。因此,要使synergyc始终在GDM迎宾台上运行,请使用下面的PostSession脚本,并将/usr/share/GDM/greeter/autostart/s

这类似于 然而,这似乎不再起作用了

我基本上想做的是在显示迎宾员时执行一个程序。通过将其添加到/etc/gdm/Init/Default脚本中,这一点以前一直有效。 但是,现在该脚本似乎不再被调用(通过“logger”调用进行测试)


SElinux处于允许模式。脚本是可执行的。synergyc是用完整路径指定的。

以下内容解决了该问题。因此,要使synergyc始终在GDM迎宾台上运行,请使用下面的PostSession脚本,并将/usr/share/GDM/greeter/autostart/synergyc.desktop文件放置到位:

[Desktop Entry]
Type=Application
Name=Synergy Client
Exec=synergyc 192.168.1.110
X-GNOME-AutoRestart=true
/etc/gdm/PostSession/Default:

#!/bin/sh

# Kill old process
/usr/bin/killall synergyc
while [ $(pgrep -x synergyc) ]; do sleep 0.1; done

# Get the xauthority file GDM uses, setup DISPLAY var and start synergyc again
xauthfile=$(ps aux |grep Xauth | grep '^gdm' | grep -oP '\-auth \K[\w/]+')
export DISPLAY=:0
export XAUTHORITY=${xauthfile}
/usr/bin/synergyc 192.168.1.110

exit 0

我似乎找到了另一种选择:cat/usr/share/gdm/greeter/autostart/synergyc.desktop[桌面输入]Type=Application Name=Synergy Client Exec=synergyc 192.168.1.110#NoDisplay=true#AutostartCondition=GSettings org.gnome.desktop.a11y.applications屏幕阅读器启用X-gnome-AutoRestart=true重新启动GDM并正常工作。请注意,当您注销会话时,autostart.desktop文件不会重新启动synergyc。所以它只在gdm服务重新启动后工作一次。