Hi there,

On Mon, 1 Jun 2026, Kenneth Porter wrote:

...  I'd suggest that future packaging (including upstream) relocate
the directory to /var/lib/backuppc/etc/backuppc ...

Since July 2006 with the release of version 3.0.0beta1, BackupPC has
by default ysed the FHS standard. [1]  Quoting the latest version of
the FHS (version 3.0, March 2015) for the use of /var/lib/:

"This hierarchy holds state information pertaining to an application
... Users must never need to modify files in /var/lib to configure a
package's operation..." [2]

So strictly speaking it goes against the FHS guidance to relocate the
location of the BackupPC configuration directory as you suggest.

Of course you might say that you're really configuring the package by
changing files in /etc/BackupPC->/var/lib/backuppc/etc/BackupPC, but I
think it isn't straightforward.  I wouldn't want to be responsible for
fallout of the "I never thought of that!" variety.

========

IMO it's irresponsible of a distro to let systemd make /etc/ or chunks
of it read-only if they haven't first checked that the packages in the
distribution are not going to break as a result.  For example in the
the latest version of the FHS it's documented that /etc/X11/ is there
in /etc/ precisely because /usr/ may be mounted read-only. [3]

BackupPC's install script already asks users to choose a configuration
directory location.  The distro packagers will be perfectly capable of
running the install script themselves.  When the configuration is done
a placeholder in the source (__CONFDIR__) is replaced by the directory
specified by the user.  The placeholder appears once in a regex in the
configuration script, in 19 places in the BackupPC.pod document and in
only four other places in the 4.4.x code.  These are at about

line 401 of makeDist
line  84 of lib/BackupPC/Lib.pm
line  44 of httpd/src/BackupPC.conf
line   1 of systemd/src/init.d/gentoo-backuppc.conf

The makeDist script is used only to create a tarball for BackupPC that
will be used for download or distribution.  The systemd/... file is a
Gentoo start/stop script.  So for most systems at present that leaves
only two places where it need be changed: Lib.pm and BackupPC.conf.

So if you don't like your distro's choice and you're minded to change
it, you can grab the upstream source and search for that string.  Then
you could compare it with your distro's version of the code to see how
you need to change it there.  The next distro update would most likely
then break things so write to yourself on a Post-it note or something.

About two decades ago, after bad experiences, I abandoned versions of
BackupPC from Linux distros.  Being relatively unfamiliar with it at
that stage, I found the multitude of changes made by the distros very
confusing and use of the upstream sources much less so.  When you're
trying to find out where everything is, the last thing you need every
time you read something in the docs, or a post on a mailing list, is
to have to convert every path you see there to something totally else
in your own systems.

The simplest solution would I think be to add an option to BackupPC's
scripts where needed, for example '--confdir', which would override a
setting elsewhere.  A well-thought-out pull request on Github would be
welcome but I'm afraid I can't afford to spend time on it right now as
there are many much more serious issues to deal with.

[1] https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html
[2] https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch05s08.html
[3] 
https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s07.html#etcx11ConfigurationForTheXWindowS

--

73,
Ged.


_______________________________________________
BackupPC-users mailing list
[email protected]
List:    https://lists.sourceforge.net/lists/listinfo/backuppc-users
Wiki:    https://github.com/backuppc/backuppc/wiki
Project: https://backuppc.github.io/backuppc/

Reply via email to