hzeller / gmrender-resurrect

Resource efficient UPnP/DLNA renderer, optimal for Raspberry Pi, CuBox or a general MediaServer. Fork of GMediaRenderer to add some features to make it usable.
GNU General Public License v2.0
851 stars 206 forks source link

Debian packaging discussion #229

Open hzeller opened 3 years ago

hzeller commented 3 years ago

Creating this to discuss needs for maintaining a good Debian package. Adding @coldtobi as owner of that package.

Are there things that you'd like to see me add or change.

coldtobi commented 3 years ago

Hi @hzeller

Thanks for opening this topic; and for your thrust :)

Creating this to discuss needs for maintaining a good Debian package. Adding @coldtobi as owner of that package.

Are there things that you'd like to see me add or change.

* Are you using the [`dist-scripts/debian/`](https://github.com/hzeller/gmrender-resurrect/tree/master/dist-scripts/debian) scripts, or is this not relevant for you ?

Yeah, I saw those; Well I'm not using those for the Debian packaging*; it is kind of best practice to keep the packaging separate from the upstream sources, but yours are already (due to the dist-script intermediate directory), so they are not a problem at all. (If you want I can "sync" them to modernize the packaging a bit. However, how much backwards compatiblity with e.g older Ubuntu releases you want to retain, because my goal is that packaging is according to latest Debian policies, but I'd also like to retain the possibility for an backports upload (https://backports.debian.org/). (This is usually mostly constrainted by the availability of dependencies, usually the debhelper tool version available at backports). (Sorry for that overdose of Debian lingo …)

(*the packaging is here: https://salsa.debian.org/debian/gmrender-resurrect)

* There are currently a lot of command line options, that are probably a little bit of a hassle to maintain in the init script. Would you prefer for me to add some configuration file ? Or is a `/etc/default/gmediarender` sufficient ?

Well, the init script works quite well :) Yes, I would like to have a systemd service file which is on par with the init.d script, but as long as the init script works and /etc/default/gmediarender provides "sane defaults", I'm happy with it. (There are no plans to discontinue systemd's init.d scripts support in Debian, as of now, and IMHO don't think there is an urgent need to drop support for those people still wanting to use System V style init systems…)

(FWIW, /etc/default was invented by Debian, so this is not really a distribution agnostic solution. This maybe would be a valid point why /etc/default/gmediarender maybe could be deprecated in favour of a conf file or other means, but I really don't see a urgent need for that.)

* Right now it seems like the Debian package is using SysV init. There is a [systemd service file](https://github.com/hzeller/gmrender-resurrect/blob/master/dist-scripts/debian/gmrender-resurrect.service) but not sure if that is sufficient for Debian standards, or if it should be upgraded.

As said above… The systemd service should provide the same functionality as currently the initrd script does, and because of ENOTIME I was unable to find a solution yet, but there were leads how to solve in this discussion: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=941198#134

(Best, I'd like to have some solution that won't break users configuration on migrating, or some radical cut like dropping /etc/default in favour for a conffile or sometthing else (e.g with means of systemd) and displaying a NEWS file that the users need to reconfigure. But for sure this will produce bug reports. I'm not sure.)

I don't want to drop init.d support without reason, (just being nice to those wanting to avoid systemd.), so in my ideal world, the solution would need to work on both systems, unless it becomes a burden, of course.

Are there any parts that you think could be improved in the Debian/gmrender-resurrect experience?

ingo-h commented 3 years ago

Sorry, haven't seen this new issue. I was working on a systemd service as discussed here and made also a new issue for it. Should be better placed here?