jamesoff / simplemonitor

A Python-based network and host monitor
https://simplemonitor.readthedocs.io/en/latest/
BSD 3-Clause "New" or "Revised" License
407 stars 166 forks source link

Software packaging #379

Open nekatak opened 4 years ago

nekatak commented 4 years ago

From what I can see there are lots of releases of simple monitor but not python (or any other) packages build. It would make the installation process far easier if there was at least a python package. Additionally a script (like a Makefile or bash script) that installs the program and runs it as a daemon process would be ideal for the *nix environments. Even better if it was a deb/rpm package but that s more difficult I know.

I would love to hear your (@jamesoff) opinion on this and like to work on something like this if it is desirable. I am mentioning this issue as the - proper - installation took me most of the time and not the configuration of the program which was actually quick!

Thanks.

jamesoff commented 4 years ago

This is something I'm interested in working on already, and I've been reviewing how to build at least a pip package for SimpleMonitor so it can be installed that way. I'm not so interested, personally, in building packages for OS package managers but I'm happy if other people want to contribute.

I have a few things I want to finish off (like dynamic config reloading) before I start on the packaging piece (mostly because it seems like it will require rearranging files a bit!). More than happy if you want to work on it though, although bear in mind possible merge difficulties :)

Glad at least the configuration was quick; if there's any way to improve the documentation for installation based on your experience in the meantime please let me know or open a PR.

nekatak commented 4 years ago

I could start with a bash script that installs a systemd/init service using a system user and puts the configuration files in /etc/simplemonitor. And of course an uninstallation of it. If you think that s OK I can work on it and create an MR.

From modifying that script we can create packages for different distros - although making them official of course is not that easy. Dependencies are usually not that trivial to resolve.