diff options
author | Dobroslaw Kijowski <dobo90@gmail.com> | 2020-06-02 15:19:52 +0200 |
---|---|---|
committer | Dobroslaw Kijowski <dobo90@gmail.com> | 2020-10-08 00:26:12 +0200 |
commit | 9d2d678db500084e108b78c746da4e720a8b8e51 (patch) | |
tree | 96f81a2a5de55cb8d4a5606823d59027fbebd64f /net/adguardhome | |
parent | 5d1127b7fe507c9189bcf77a8d8b80c4304967e8 (diff) |
adguardhome: Implement initial package recipe
AdGuardHome is a network-wide ads and trackers blocking DNS server.
After installing it with opkg, start it like every service:
/etc/init.d/adguardhome start
In order to complete the installation vist http://{YOUR_ROUTERS_IP}:3000.
Then you can setup dnsmasq to forward DNS traffic to AdGuardHome:
uci -q delete dhcp.@dnsmasq[0].server
uci add_list dhcp.@dnsmasq[0].server=127.0.0.1#{PORT_SET_DURING_INSTALL}
uci set dhcp.@dnsmasq[0].noresolv=1
uci commit dhcp
/etc/init.d/dnsmasq restart
Signed-off-by: Dobroslaw Kijowski <dobo90@gmail.com>
Diffstat (limited to 'net/adguardhome')
-rw-r--r-- | net/adguardhome/Makefile | 66 | ||||
-rw-r--r-- | net/adguardhome/files/adguardhome.init | 17 |
2 files changed, 83 insertions, 0 deletions
diff --git a/net/adguardhome/Makefile b/net/adguardhome/Makefile new file mode 100644 index 000000000..a43ce0818 --- /dev/null +++ b/net/adguardhome/Makefile @@ -0,0 +1,66 @@ +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=adguardhome +PKG_VERSION:=0.103.3 +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/AdguardTeam/AdGuardHome +PKG_MIRROR_HASH:=edf00ede9d208b7f78574e267ad2617dd4d4f06548cb2e6369cc1ad702427d9a + +PKG_LICENSE:=GPL-3.0-only +PKG_LICENSE_FILES:=LICENSE.txt +PKG_MAINTAINER:=Dobroslaw Kijowski <dobo90@gmail.com> + +PKG_BUILD_DEPENDS:=golang/host node/host packr/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/AdguardTeam/AdGuardHome +GO_PKG_EXCLUDES:=dhcpd/standalone +GO_PKG_LDFLAGS_X:=main.version=$(PKG_VERSION) main.channel=release main.goarm=$(GO_ARM) + +include $(INCLUDE_DIR)/package.mk +include ../../lang/golang/golang-package.mk + +define Package/adguardhome + SECTION:=net + CATEGORY:=Network + TITLE:=Network-wide ads and trackers blocking DNS server + URL:=https://github.com/AdguardTeam/AdGuardHome + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +endef + +define Package/adguardhome/conffiles +/etc/adguardhome.yaml +endef + +define Package/adguardhome/description +Free and open source, powerful network-wide ads and trackers blocking DNS server. +endef + +define Build/Compile + ( \ + pushd $(PKG_BUILD_DIR) ; \ + npm --prefix client ci ; \ + npm --prefix client run build-prod ; \ + packr -z -v -i home ; \ + popd ; \ + $(call GoPackage/Build/Compile) ; \ + ) +endef + +define Package/adguardhome/install + $(call GoPackage/Package/Install/Bin,$(1)) + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/adguardhome.init $(1)/etc/init.d/adguardhome +endef + +$(eval $(call GoBinPackage,adguardhome)) +$(eval $(call BuildPackage,adguardhome)) diff --git a/net/adguardhome/files/adguardhome.init b/net/adguardhome/files/adguardhome.init new file mode 100644 index 000000000..f2c733534 --- /dev/null +++ b/net/adguardhome/files/adguardhome.init @@ -0,0 +1,17 @@ +#!/bin/sh /etc/rc.common + +PROG=/usr/bin/AdGuardHome +USE_PROCD=1 + +# starts after network starts +START=21 +# stops before networking stops +STOP=89 + +start_service() { + procd_open_instance + procd_set_param command "$PROG" -c /etc/adguardhome.yaml -w /tmp/adguardhome --no-check-update + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_close_instance +} |