r-c-f / waynergy

A synergy client for Wayland compositors
MIT License
394 stars 17 forks source link

Starting waynergy before login #100

Open dsl101 opened 2 months ago

dsl101 commented 2 months ago

I guess there may be many reasons not to do this, but I have a linux machine running Arch / SDDM / Wayland and I'd love to have waynergy running by the time I hit the greeter, so that I can log in from the (Windows) server mouse / keyboard. Is it in any way possible to achieve that? I did try creating a config file in /etc/waynergy/, and a systemd service:

[Unit]
Description=Waynergy

[Service]
Environment="WAYNERGY_CONF_PATH=/etc/waynergy/"
ExecStart=/usr/bin/waynergy

[Install]
WantedBy=multi-user.target

But the error log says 0.029392691: [ERROR] error: XDG_RUNTIME_DIR is invalid or not set in the environment. Before I beat my head against that wall, is this even possible?

r-c-f commented 2 months ago

In theory this sort of setup is quite possible; I did it for while with greetd. That being said....

By default, SDDM itself doesn't even use Wayland, so the standard client could be a better target for the time being. Though if you've configured it according to the wiki you'll still run into the issue of getting the environment to match up with the compositor. systemd services are usually not the sane way to do this sort of thing, but it doesn't seem like SDDM's configuration allows you to autostart anything before the session itself, either. If you can find a decent guide on systemd services for GUI apps (since this is more adjacent to that than a usual service) beyond "don't do this" it may be possible.

If you can't, I'd be willing to toy with adding support for running without a GUI at all, with obvious limitations (no automatic detection of displays and the like).

dsl101 commented 2 months ago

So, this is a new Arch install, and I just selected Desktop / KDE in the archinstall menu. I've done no other configuration so far, other than fixing SDDM crashing when I applied a theme via the GUI settings panel. Seems like qt5-graphicaleffects wasn't installed by default, and the theme relied on it so wouldn't load. SDDM is vanilla other than that, so I guess you're right that it's not using wayland. I would like to use wayland for the desktop, though I don't have a cast-iron reason yet other than 'new and shiny'.

If I understand you correctly, the options are:

  1. Configure SDDM to use wayland per the wiki
  2. Find some way to persuade systemd to start waynergy before the desktop or Ask you to fix it :)

I'm good to do all of those, and there's no rush. Plus chatting with Symless, they are threatening to support wayland before too long anyway so it might be a moot point eventually.

Edit: Looking at this it might not be worth persevering with SDDM. I'm also seeing that multiple tty spawning problem, and now can't log out!