SuperTux88 / gentoo-overlay

experimental ebuild collection
10 stars 1 forks source link

x11-drivers/displaylink-driver-6.0.0 is systemd only #9

Open Arniiiii opened 4 months ago

Arniiiii commented 4 months ago

I have openrc, and the https://wiki.archlinux.org/title/DisplayLink mentions the service.

The service is seems to be installed for me at /usr/lib/systemd/system-sleep/displaylink.sh

SuperTux88 commented 4 months ago

I have all my systems with systemd, and I have no way to test anything with openrc. So all the ebuilds in this overlay come without official openrc support. If it's easy to support, I try to add openrc (but can't test it), so some ebuilds have openrc support, but there are no guarantees for openrc. And this ebuild was already a mess to create just for systemd alone.

The arch wiki also only mentions systemd, and I don't even know if the upstream installer-script even supports openrc. The service itself is in /opt/displaylink/DisplayLinkManager (see /usr/lib/systemd/system/displaylink-driver.service). The script in /usr/lib/systemd/system-sleep/displaylink.sh is to suspend the DisplayLinkManager when you suspend your system and resume it again after that. But I have no idea how to do all that with openrc.

So I won't be able to add openrc support to this ebuild myself. But if you want to create a Pull-request, I'll merge it and try to keep it intact for future updates (however without guarantees, as I can't test it).

Arniiiii commented 4 months ago

/usr/lib/systemd/system/displaylink-driver.service doesn't exist for me. Can you send here the file here, please?

Honestly, I don't how to write openrc scripts, but there's a doc about how to write them, so the systemd-specific script maybe can be rewritten in a spare time

Arniiiii commented 4 months ago

I'm just trying to make an USB - HDMI adapter to work

SuperTux88 commented 4 months ago

The displaylink-driver.service looks like this:

[Unit]
Description=DisplayLink Driver Service
After=display-manager.service
Conflicts=getty@tty7.service

[Service]
ExecStartPre=/sbin/modprobe evdi
ExecStart=/opt/displaylink/DisplayLinkManager
Restart=always
WorkingDirectory=/opt/displaylink
RestartSec=5

As said, I won't add openrc support to this ebuild myself, but if you want to, you can provide a PR. But you can probably also just create the files required for openrc on your PC without the ebuild, so that's maybe easier?

There is a reason why I use systemd on all my systems, because most things already provide systemd support, and for the things that don't it's very easy to write your own systemd unit files.