Proposal: Improve usability by splitting package
Hi Nicholas,
Thanks for packaging btrfsmaintanance. I would like to use it to get piece of mind for important data stored on btrfs. I'd also be happy to co-maintain the package if you'd like some help or company :)
However after reviewing the package I find it's usability in the current form somewhat lacking. Let me explain and propose some improvements.
-
It's disabled by default. Why? I don't see any possible use for the code in btrfsmaintanance other than to run the periodic maintenance tasks. What's your thinking here?
-
Having /etc/default/btrfsmaintanance as the source of truth for both systemd/timer and sysvinit/cron based setups with a btrfsmaintenance-refresh.{service,path}, while a neat hack, is highly surprising for systemd users.
Side note: having a timer for each task is pretty unwieldy and seems over-engineered to me. Why not a single timer that dispatches the tasks internally?
What I would suggest is:
a) enabling timers/cron by default or adding an btrfsmaitance-auto package (in the interim can be removed later)
b) split the package along the systemd/sysvinit line and do what's natural for each of those userbases in the respective package. See the MR diff for a d/control sketch.
The idea is that btrfsmaintanance-systemd would not use /etc/default/btrfsmaintanance but rather users would systemctl --edit *.timer which results in drop-in override.conf files and is the forkflow expected by systemd users IMO.
Thanks, --Daniel