TechnitiumSoftware / DnsServer

Technitium DNS Server
https://technitium.com/dns/
GNU General Public License v3.0
3.86k stars 401 forks source link

Provide apt packages #768

Closed brainfish closed 4 months ago

brainfish commented 8 months ago

Have you given any thought to providing apt packages? I guess some might care about yum as well. ASP.NET is already available via apt, and this would not only simplify the install process, but greatly simplify the update process. I manage TDNS via Ansible and right now automated updates requires maintaining, and periodically rotating, an API key to query TDNS for updates so I'm not re-downloading and -extracting the tarball unnecessarily on every ansible run. This additionally complicates the ansible playbook since we have to handle the case where Technitium isn't installed yet and can't be queried. With OS packages, users would get updates for free just by running e.g. apt update && apt upgrade -y, which would enhance the overall security posture of the TDNS user community and be a positive for Technitium overall.

I'd be interested in Debian 12 packages primarily but I'm sure Ubuntu would also be a common request, although the two should be virtually identical for the most recent versions of each distro.

We've considered moving to hosting Technitium in Docker for simpler updates but the overhead of running Docker on every DNS VM for this one feature is gross, and problematic for already-resource-constrained platforms like Raspberry Pi, NUC, etc. It seems like providing OS packages could really help drive adoption of Technitium.

ShreyasZare commented 8 months ago

Thanks for the post. The issue with having OS packages is with resources i.e. time. It would be quite difficult for me to be able to manage multiple packages for each distro. The install script currently available works for all distros and does not need any kind of maintenance. There are already a lot of features planned that are to be implemented so may be once most of the planned features are done and there is time available that I can plan for having packages.