frp: service scripts
The runit services defined in this package use INI config files, which are deprecated in new versions of frp, and the package comes with TOML config files anyway. Also, frp prints logs in colour and only closes the colour tags when it exits, which makes your terminal light blue when you read logs. Disabling colour output is only possible for frps, though.
I also think that both the frp server and client shouldn't need to be run as root. I start them with chpst -u nobody:nogroup myself, but I'd like to get a second opinion on that. I can imagine someone wanting to use privileged ports with frp, but not sure how common that usecase is.
Testing the changes
- I tested the changes in this PR: briefly
If you know which capabilities it needs, you could run it as unprivileged user like so https://github.com/void-linux/void-packages/blob/master/srcpkgs/speakersafetyd/files/speakersafetyd/run
If you know which capabilities it needs, you could run it as unprivileged user like so https://github.com/void-linux/void-packages/blob/master/srcpkgs/speakersafetyd/files/speakersafetyd/run
Doesn't need any I think. Maybe CAP_NET_BIND_SERVICE to allow it to use privileged ports, but I'm not sure if that is desired.
Anyway, idk why the checks are failing. I thought I should increase the revision by one when making any changes to the template.
It is just about commit msg: subject does not follow CONTRIBUTING.md guildelines.
You could try setpriv with no capabilities, and see what is broken.
Why wasn't I pinged? I maintain frp. I am not using it anymore, which is probably why the change from ini to toml was not caught by me.
It looks like the legacy format is still supported for now, which is why nobody complained about it yet: https://github.com/fatedier/frp/blob/master/cmd/frps/root.go#L69
I am not sure which path to go: Keep the ini for now or ship with toml as default?