diff --git a/www/adguardhome/Makefile b/www/adguardhome/Makefile index 22d6708f2b41..6d6192999d87 100644 --- a/www/adguardhome/Makefile +++ b/www/adguardhome/Makefile @@ -1,58 +1,59 @@ PORTNAME= adguardhome DISTVERSIONPREFIX= v DISTVERSION= 0.107.51 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org COMMENT= Network-wide ads & trackers blocking DNS server WWW= https://adguard.com/en/adguard-home/overview.html LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE.txt RUN_DEPENDS= ca_root_nss>=0:security/ca_root_nss USES= cpe go:1.22,modules GO_MODULE= github.com/AdguardTeam/AdGuardHome GO_BUILDFLAGS= -ldflags="-s -w -X github.com/AdguardTeam/AdGuardHome/internal/version.version=${DISTVERSION}" # workaround for https://github.com/AdguardTeam/AdGuardHome/issues/4774 # to rebuild the deps archives: # 1. set DEV_UPDATE_MODE=yes # 2. make makesum build # 3. upload the *-html-{build,client}* archives # 4. set DEV_UPDATE_MODE=no # 5. make clean makesum DEV_UPDATE_MODE= no USER= root # it has to run as root because it listens on the privileged DNS port GROUP= wheel SUB_LIST= USER=${USER} GROUP=${GROUP} USE_RC_SUBR= ${PORTNAME} CPE_VENDOR= adguard .if (${DEV_UPDATE_MODE} == "yes") BUILD_DEPENDS= npm:www/npm \ yarn:www/yarn MAKE_ENV+= NODE_OPTIONS=--openssl-legacy-provider # workaround suggested in https://github.com/AdguardTeam/AdGuardHome/issues/6585 do-build: @cd ${WRKSRC} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} js-deps js-build && \ ${TAR} czf ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-html-build-${DISTVERSION}${EXTRACT_SUFX} build && \ ${TAR} czf ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-html-client-${DISTVERSION}${EXTRACT_SUFX} client && \ ${ECHO} "Please upload files ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-html-build-${DISTVERSION}${EXTRACT_SUFX} and ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-html-client-${DISTVERSION}${EXTRACT_SUFX}" .else MASTER_SITES= LOCAL/yuri/:deps DISTFILES= ${PORTNAME}-html-build-${DISTVERSION}${EXTRACT_SUFX}:deps \ ${PORTNAME}-html-client-${DISTVERSION}${EXTRACT_SUFX}:deps pre-build: @${CP} -r ${WRKDIR}/build ${WRKDIR}/client ${WRKSRC}/ .endif PLIST_FILES= bin/${PORTNAME} .include diff --git a/www/adguardhome/files/adguardhome.in b/www/adguardhome/files/adguardhome.in index f69f1df46889..347814f8a0d3 100644 --- a/www/adguardhome/files/adguardhome.in +++ b/www/adguardhome/files/adguardhome.in @@ -1,70 +1,71 @@ #!/bin/sh # PROVIDE: adguardhome # REQUIRE: DAEMON NETWORKING # KEYWORD: shutdown # Add the following lines to /etc/rc.conf to enable adguardhome: # adguardhome_enable : set to "YES" to enable the daemon, default is "NO" . /etc/rc.subr name=adguardhome rcvar=adguardhome_enable load_rc_config $name : ${adguardhome_enable:=NO} : ${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} +: ${adguardhome_svcj_options:="net_basic"} # old values : ${adguardhome_config_old:=%%PREFIX%%/bin/AdGuardHome.yaml} : ${adguardhome_work_dir_data_old:=%%PREFIX%%/bin/data} logfile="/var/log/${name}.log" pidfile="/var/run/${name}.pid" procname=%%PREFIX%%/bin/adguardhome command="/usr/sbin/daemon" command_args="-u ${adguardhome_user} -o ${logfile} -t ${name} -p ${pidfile} %%PREFIX%%/bin/adguardhome -c ${adguardhome_config} -w ${adguardhome_work_dir}" 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} fi } run_rc_command "$1"