fairyglade / ly

display manager with console UI
Do What The F*ck You Want To Public License
5.33k stars 306 forks source link

Faulty service files when building for runit supervising manager #610

Closed lukeflo closed 2 months ago

lukeflo commented 4 months ago

Just build ly from source for Void Linux with installrunit option since Void uses runit init system soley.

After installation it was not possible to enable the service. Thus, I investigated it a little bit and found some minor flaws which should be fixed for running Ly without problems under Void, Artix etc.:

Fixes

executable service scripts

The run and finish script inside the automatically created service dir /etc/sv/ly are not executable after build. But they have to be so they can be executed by runit.

Simply changed it with sudo chmod +x run and the same for finish manually. After that the service started immidiatley after enabling it.

missing supervise symlink

By default, the service dir from Ly misses a supervise symlink to /run/runit/. This is not necessary to run Ly, but the symlink is necessary to record status of the service.

Simply created it with sudo ln -s /run/runit/supervise.ly /etc/sv/ly/supervise manually.

enhancement

I think both settings should be enabled by default after building/installing Ly on a runit system.

AnErrupTion commented 2 months ago

@lukeflo Hey there! Sorry for being late to the party, but one thing seems a bit off to me:

By default, the service dir from Ly misses a supervise symlink to /run/runit/.

Isn't this symbolic link supposed to be created by the init system? For example, Void does this:

When a new service is created, a supervise folder will be automatically created on the first run.

https://docs.voidlinux.org/config/services/index.html#service-directories

AnErrupTion commented 2 months ago

Actually nevermind, I got a bit confused and it seems like other services like LightDM do it the way you described it. I'll be implementing it shortly.