Skip to content

Proposal: Improve usability by splitting package

Daniel Gröber (dxld) requested to merge dxld/btrfsmaintenance:master into master

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.

  1. 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?

  2. 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

Merge request reports

Loading