summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2023-01-22 09:39:50 -0800
committerYuri Victorovich <yuri@FreeBSD.org>2023-01-22 09:42:32 -0800
commit940d212ecd7c7226713724aebd6df76483100c3b (patch)
tree5ca1432c8a473297c9bbd416569a1e11a07ec33f /www
parentde2abd895141340360e8a2b78c62f0c93966c40c (diff)
downloadfreebsd-ports-940d212ecd7c7226713724aebd6df76483100c3b.zip
www/adguardhome: Move config and data files to a new location
... when these files are present at old locations. PR: 269083 Reported by: Jony Hudson <bsd@j-star.org>
Diffstat (limited to 'www')
-rw-r--r--www/adguardhome/Makefile2
-rw-r--r--www/adguardhome/files/adguardhome.in32
2 files changed, 32 insertions, 2 deletions
diff --git a/www/adguardhome/Makefile b/www/adguardhome/Makefile
index c3f3023f16ad..bb7d8fe62725 100644
--- a/www/adguardhome/Makefile
+++ b/www/adguardhome/Makefile
@@ -1,7 +1,7 @@
PORTNAME= adguardhome
DISTVERSIONPREFIX= v
DISTVERSION= 0.107.21
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= www
MAINTAINER= yuri@FreeBSD.org
diff --git a/www/adguardhome/files/adguardhome.in b/www/adguardhome/files/adguardhome.in
index 6a9fd0fb6532..474e2c8a83fa 100644
--- a/www/adguardhome/files/adguardhome.in
+++ b/www/adguardhome/files/adguardhome.in
@@ -15,10 +15,15 @@ rcvar=adguardhome_enable
load_rc_config $name
: ${adguardhome_enable:=NO}
-: ${adguardhome_config:=/usr/local/etc/AdGuardHome.yaml}
+: ${adguardhome_config:=%%PREFIX%%/etc/AdGuardHome.yaml}
: ${adguardhome_user:=%%USER%%}
: ${adguardhome_group:=%%GROUP%%}
: ${adguardhome_work_dir:=/var/db/adguardhome}
+: ${adguardhome_work_dir_data:=/var/db/adguardhome/data}
+
+# old values
+: ${adguardhome_config_old:=%%PREFIX%%/bin/AdGuardHome.yaml}
+: ${adguardhome_work_dir_data_old:=%%PREFIX%%/bin/data}
logfile="/var/log/${name}.log"
@@ -30,6 +35,31 @@ start_precmd="${name}_prestart"
adguardhome_prestart()
{
+ # check if the old config exists
+ if [ -f ${adguardhome_config_old} ] || [ -d ${adguardhome_work_dir_data_old} ]; then
+ if ! [ -f ${adguardhome_config} ] && ! [ -d ${adguardhome_work_dir_data} ]; then # old config exists, new config doesn't exist
+ # move old config to new locations
+ if [ -f ${adguardhome_config_old} ]; then
+ echo "moving old config ${adguardhome_config_old} to the new location ${adguardhome_config}"
+ mv ${adguardhome_config_old} ${adguardhome_config}
+ fi
+ if [ -d ${adguardhome_work_dir_data_old} ]; then
+ install -d -m 0750 -o ${adguardhome_user} -g ${adguardhome_group} \
+ ${adguardhome_work_dir}
+ echo "moving old config ${adguardhome_work_dir_data_old} to the new location ${adguardhome_work_dir_data}"
+ mv ${adguardhome_work_dir_data_old} ${adguardhome_work_dir_data}
+ fi
+ else # both old and new config exist
+ echo "(!!!) WARNING =================================================================="
+ echo "(!!!) WARNING Both old and new configs exist"
+ echo "(!!!) WARNING Please choose which configs do you need and remove the old configs"
+ echo "(!!!) WARNING OLD config locations: ${adguardhome_config_old} ${adguardhome_work_dir_data_old}"
+ echo "(!!!) WARNING NEW config locations: ${adguardhome_config} ${adguardhome_work_dir_data}"
+ echo "(!!!) WARNING =================================================================="
+ fi
+ fi
+
+ # install dir
if [ ! -d ${adguardhome_work_dir} ]; then
install -d -m 0750 -o ${adguardhome_user} -g ${adguardhome_group} \
${adguardhome_work_dir}