Merge pull request #789 from rhansen/confdir
Change default location of `ddclient.conf` to `${sysconfdir}/ddclient`
This commit is contained in:
commit
fee71b46be
5 changed files with 41 additions and 4 deletions
25
ChangeLog.md
25
ChangeLog.md
|
@ -5,6 +5,31 @@ repository history](https://github.com/ddclient/ddclient/commits/main).
|
||||||
|
|
||||||
## v4.0.0-rc.2 (unreleased work-in-progress)
|
## v4.0.0-rc.2 (unreleased work-in-progress)
|
||||||
|
|
||||||
|
### Breaking changes
|
||||||
|
|
||||||
|
* ddclient now looks for `ddclient.conf` in `${sysconfdir}/ddclient` by
|
||||||
|
default instead of `${sysconfdir}`.
|
||||||
|
[#789](https://github.com/ddclient/ddclient/pull/789)
|
||||||
|
|
||||||
|
To retain the previous behavior, pass `'--with-confdir=${sysconfdir}'` to
|
||||||
|
`configure`. For example:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
# Before v4.0.0:
|
||||||
|
./configure --sysconfdir=/etc
|
||||||
|
# Equivalent with v4.0.0 and later (the single quotes are intentional):
|
||||||
|
./configure --sysconfdir=/etc --with-confdir='${sysconfdir}'
|
||||||
|
```
|
||||||
|
|
||||||
|
or:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
# Before v4.0.0:
|
||||||
|
./configure --sysconfdir=/etc/ddclient
|
||||||
|
# Equivalent with v4.0.0 and later:
|
||||||
|
./configure --sysconfdir=/etc
|
||||||
|
```
|
||||||
|
|
||||||
### New features
|
### New features
|
||||||
|
|
||||||
* New `--mail-from` option to control the "From:" header of email messages.
|
* New `--mail-from` option to control the "From:" header of email messages.
|
||||||
|
|
|
@ -28,8 +28,8 @@ $(subst_files): Makefile
|
||||||
-e 's|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|g' \
|
-e 's|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|g' \
|
||||||
-e '1 s|^#\!.*perl$$|#\!$(PERL)|g' \
|
-e '1 s|^#\!.*perl$$|#\!$(PERL)|g' \
|
||||||
-e 's|@localstatedir[@]|$(localstatedir)|g' \
|
-e 's|@localstatedir[@]|$(localstatedir)|g' \
|
||||||
|
-e 's|@confdir[@]|$(confdir)|g' \
|
||||||
-e 's|@runstatedir[@]|$(runstatedir)|g' \
|
-e 's|@runstatedir[@]|$(runstatedir)|g' \
|
||||||
-e 's|@sysconfdir[@]|$(sysconfdir)|g' \
|
|
||||||
-e 's|@CURL[@]|$(CURL)|g' \
|
-e 's|@CURL[@]|$(CURL)|g' \
|
||||||
"$${in}" >'$@'.tmp && \
|
"$${in}" >'$@'.tmp && \
|
||||||
{ ! test -x "$${in}" || chmod +x '$@'.tmp; }
|
{ ! test -x "$${in}" || chmod +x '$@'.tmp; }
|
||||||
|
@ -40,7 +40,7 @@ ddclient.conf: $(srcdir)/ddclient.conf.in
|
||||||
|
|
||||||
bin_SCRIPTS = ddclient
|
bin_SCRIPTS = ddclient
|
||||||
|
|
||||||
sysconf_DATA = ddclient.conf
|
conf_DATA = ddclient.conf
|
||||||
|
|
||||||
install-data-local:
|
install-data-local:
|
||||||
$(MKDIR_P) '$(DESTDIR)$(localstatedir)'/cache/ddclient
|
$(MKDIR_P) '$(DESTDIR)$(localstatedir)'/cache/ddclient
|
||||||
|
|
|
@ -105,7 +105,7 @@ operating system. See the image to the right for a list of distributions with a
|
||||||
```shell
|
```shell
|
||||||
./configure \
|
./configure \
|
||||||
--prefix=/usr \
|
--prefix=/usr \
|
||||||
--sysconfdir=/etc/ddclient \
|
--sysconfdir=/etc \
|
||||||
--localstatedir=/var
|
--localstatedir=/var
|
||||||
make
|
make
|
||||||
make VERBOSE=1 check
|
make VERBOSE=1 check
|
||||||
|
|
12
configure.ac
12
configure.ac
|
@ -23,6 +23,18 @@ AC_REQUIRE_AUX_FILE([tap-driver.sh])
|
||||||
AM_INIT_AUTOMAKE([1.11 -Wall -Werror foreign subdir-objects parallel-tests])
|
AM_INIT_AUTOMAKE([1.11 -Wall -Werror foreign subdir-objects parallel-tests])
|
||||||
AM_SILENT_RULES
|
AM_SILENT_RULES
|
||||||
|
|
||||||
|
m4_define([CONFDIR_DEFAULT], [${sysconfdir}/AC_PACKAGE_NAME])
|
||||||
|
AC_ARG_WITH(
|
||||||
|
[confdir],
|
||||||
|
[AS_HELP_STRING(
|
||||||
|
[--with-confdir=DIR],
|
||||||
|
m4_expand([[look for ddclient.conf in DIR @<:@default: ]CONFDIR_DEFAULT[@:>@]]))],
|
||||||
|
[],
|
||||||
|
# The single quotes are intentional; see:
|
||||||
|
# https://www.gnu.org/software/automake/manual/html_node/Uniform.html
|
||||||
|
[with_confdir='CONFDIR_DEFAULT'])
|
||||||
|
AC_SUBST([confdir], [${with_confdir}])
|
||||||
|
|
||||||
AC_PROG_MKDIR_P
|
AC_PROG_MKDIR_P
|
||||||
|
|
||||||
# The Fedora Docker image doesn't come with the 'findutils' package.
|
# The Fedora Docker image doesn't come with the 'findutils' package.
|
||||||
|
|
|
@ -132,7 +132,7 @@ sub subst_var {
|
||||||
return $subst;
|
return $subst;
|
||||||
}
|
}
|
||||||
|
|
||||||
my $etc = subst_var('@sysconfdir@', '/etc/ddclient');
|
my $etc = subst_var('@confdir@', '/etc/ddclient');
|
||||||
my $cachedir = subst_var('@localstatedir@', '/var') . '/cache/ddclient';
|
my $cachedir = subst_var('@localstatedir@', '/var') . '/cache/ddclient';
|
||||||
our @curl = (subst_var('@CURL@', 'curl'));
|
our @curl = (subst_var('@CURL@', 'curl'));
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue