在 CentOS8 中的 gdm 启动(欢迎程序)期间启动 Synergy

Starting Synergy during gdm startup (greeter) in CentOS8

这类似于Starting synergy automatically on RHEL/CentOS 然而,这似乎不再起作用了。

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

SElinux 处于宽容模式。该脚本是可执行的。 synergyc 指定了完整路径。

下面解决了这个问题。因此,要在 GDM 欢迎程序中始终使用 synergyc 运行,请使用下面的 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