mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-10-30 03:45:14 +08:00
🎉 Sync 2026-06-14 00:48:20
This commit is contained in:
1 parent
e7e8c48a5e
commit
0b5f398c4f
10 files changed
+169645
-131
No files matched your search
+56
-48
@@ -1,27 +1,39 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-only
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
#
|
|
||||||
# Copyright (C) 2023 ImmortalWrt.org
|
|
||||||
|
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=dae
|
PKG_NAME:=dae
|
||||||
PKG_VERSION:=1.1.0
|
PKG_VERSION:=2026.06.13.2
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=3
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip
|
PKG_SOURCE:=dae-src-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://github.com/daeuniverse/dae/releases/download/v$(PKG_VERSION)/dae-full-src.zip?
|
PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/dae-src
|
||||||
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_HASH:=skip
|
PKG_HASH:=skip
|
||||||
|
|
||||||
PKG_LICENSE:=AGPL-3.0-only
|
PKG_LICENSE:=AGPL-3.0-only
|
||||||
PKG_LICENSE_FILE:=LICENSE
|
PKG_LICENSE_FILE:=LICENSE
|
||||||
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
|
PKG_MAINTAINER:=kenzok8
|
||||||
|
|
||||||
|
DAE_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_BUILD_DIR:=$(DAE_BUILD_DIR)/core
|
||||||
|
|
||||||
PKG_BUILD_DEPENDS:=golang/host bpf-headers
|
PKG_BUILD_DEPENDS:=golang/host bpf-headers
|
||||||
PKG_BUILD_PARALLEL:=1
|
PKG_BUILD_PARALLEL:=1
|
||||||
PKG_BUILD_FLAGS:=no-mips16
|
PKG_BUILD_FLAGS:=no-mips16
|
||||||
|
|
||||||
|
# armv7 lacks a CO-RE vmlinux.h for the trace eBPF, so trace's bpf2go fails to
|
||||||
|
# build there. Apply sbwml/openwrt_helloworld's arm patches (add vmlinux-arm.h
|
||||||
|
# + drop the kprobe that doesn't work) to let dae build on arm targets.
|
||||||
|
ifeq ($(ARCH),arm)
|
||||||
|
PATCH_DIR:=$(CURDIR)/patches_arm
|
||||||
|
endif
|
||||||
|
|
||||||
GO_PKG:=github.com/daeuniverse/dae
|
GO_PKG:=github.com/daeuniverse/dae
|
||||||
GO_PKG_EXCLUDES:=control/kern/tests
|
GO_PKG_EXCLUDES:=control/kern/tests
|
||||||
|
GO_PKG_LDFLAGS:= \
|
||||||
|
-s -w -buildid= \
|
||||||
|
-linkmode external -extldflags '-static -Wl,-s'
|
||||||
GO_PKG_LDFLAGS_X:= \
|
GO_PKG_LDFLAGS_X:= \
|
||||||
$(GO_PKG)/cmd.Version=$(PKG_VERSION) \
|
$(GO_PKG)/cmd.Version=$(PKG_VERSION) \
|
||||||
$(GO_PKG)/common/consts.MaxMatchSetLen_=1024
|
$(GO_PKG)/common/consts.MaxMatchSetLen_=1024
|
||||||
@@ -31,7 +43,10 @@ include $(INCLUDE_DIR)/package.mk
|
|||||||
include $(INCLUDE_DIR)/bpf.mk
|
include $(INCLUDE_DIR)/bpf.mk
|
||||||
include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk
|
include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk
|
||||||
|
|
||||||
UNZIP_CMD:=unzip -q -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE)
|
GO_PKG_BUILD_VARS+= GOFLAGS="-trimpath -buildvcs=false -pgo=auto"
|
||||||
|
GO_PKG_TARGET_VARS+= \
|
||||||
|
CGO_LDFLAGS="$(TARGET_LDFLAGS) -static -Wl,-s" \
|
||||||
|
GOEXPERIMENT=newinliner,simd
|
||||||
|
|
||||||
define Package/dae/Default
|
define Package/dae/Default
|
||||||
SECTION:=net
|
SECTION:=net
|
||||||
@@ -43,36 +58,31 @@ endef
|
|||||||
define Package/dae
|
define Package/dae
|
||||||
$(call Package/dae/Default)
|
$(call Package/dae/Default)
|
||||||
TITLE:=A lightweight and high-performance transparent proxy solution
|
TITLE:=A lightweight and high-performance transparent proxy solution
|
||||||
# You need enable KERNEL_DEBUG_INFO_BTF and KERNEL_BPF_EVENTS
|
DEPENDS:=$(GO_ARCH_DEPENDS) \
|
||||||
DEPENDS:=$(GO_ARCH_DEPENDS) $(BPF_DEPENDS) \
|
+ca-bundle +kmod-sched-core +kmod-sched-bpf \
|
||||||
+ca-bundle +kmod-sched-core +kmod-sched-bpf +kmod-xdp-sockets-diag \
|
+kmod-veth +v2ray-geoip +v2ray-geosite \
|
||||||
+kmod-veth
|
+@KERNEL_XDP_SOCKETS \
|
||||||
|
+DAE_USE_VMLINUX_BTF:vmlinux-btf
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/dae-geoip
|
define Package/dae/config
|
||||||
$(call Package/dae/Default)
|
choice
|
||||||
TITLE:=geoip for dae
|
prompt "BTF source for CO-RE"
|
||||||
DEPENDS:=+dae +v2ray-geoip
|
default DAE_USE_KERNEL_BTF
|
||||||
PKGARCH:=all
|
depends on PACKAGE_dae
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/dae-geosite
|
config DAE_USE_KERNEL_BTF
|
||||||
$(call Package/dae/Default)
|
bool "Use kernel BTF (integrated)"
|
||||||
TITLE:=geosite for dae
|
depends on KERNEL_DEBUG_INFO_BTF
|
||||||
DEPENDS:=+dae +v2ray-geosite
|
|
||||||
PKGARCH:=all
|
config DAE_USE_VMLINUX_BTF
|
||||||
|
bool "Use vmlinux-btf package"
|
||||||
|
endchoice
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/dae/description
|
define Package/dae/description
|
||||||
dae, means goose, is a lightweight and high-performance transparent
|
dae, means goose, is a lightweight and high-performance transparent
|
||||||
proxy solution.
|
proxy solution.
|
||||||
|
|
||||||
In order to improve the traffic diversion performance as much as possible,
|
|
||||||
dae runs the transparent proxy and traffic diversion suite in the linux
|
|
||||||
kernel by eBPF. Therefore, we have the opportunity to make the direct
|
|
||||||
traffic bypass the forwarding by proxy application and achieve true direct
|
|
||||||
traffic through. Under such a magic trick, there is almost no performance
|
|
||||||
loss and additional resource consumption for direct traffic.
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/dae/conffiles
|
define Package/dae/conffiles
|
||||||
@@ -86,8 +96,15 @@ DAE_CFLAGS:= \
|
|||||||
-I$(BPF_HEADERS_DIR)/tools/lib \
|
-I$(BPF_HEADERS_DIR)/tools/lib \
|
||||||
-I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include/asm/mach-generic
|
-I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include/asm/mach-generic
|
||||||
|
|
||||||
|
define Build/Prepare
|
||||||
|
mkdir -p $(DAE_BUILD_DIR)
|
||||||
|
$(TAR) --strip-components=1 -C $(DAE_BUILD_DIR) -xzf $(DL_DIR)/$(PKG_SOURCE)
|
||||||
|
$(if $(wildcard $(PATCH_DIR)/*.patch),$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR),))
|
||||||
|
endef
|
||||||
|
|
||||||
define Build/Compile
|
define Build/Compile
|
||||||
( \
|
( \
|
||||||
|
pushd $(PKG_BUILD_DIR) ; \
|
||||||
export \
|
export \
|
||||||
$(GO_GENERAL_BUILD_CONFIG_VARS) \
|
$(GO_GENERAL_BUILD_CONFIG_VARS) \
|
||||||
$(GO_PKG_BUILD_CONFIG_VARS) \
|
$(GO_PKG_BUILD_CONFIG_VARS) \
|
||||||
@@ -97,17 +114,20 @@ define Build/Compile
|
|||||||
BPF_CFLAGS="$(DAE_CFLAGS)" \
|
BPF_CFLAGS="$(DAE_CFLAGS)" \
|
||||||
BPF_TARGET="bpfel,bpfeb" \
|
BPF_TARGET="bpfel,bpfeb" \
|
||||||
BPF_TRACE_TARGET="$(GO_ARCH)" ; \
|
BPF_TRACE_TARGET="$(GO_ARCH)" ; \
|
||||||
go generate $(PKG_BUILD_DIR)/control/control.go ; \
|
go generate ./control/control.go ; \
|
||||||
go generate $(PKG_BUILD_DIR)/trace/trace.go ; \
|
go generate ./trace/trace.go ; \
|
||||||
$(call GoPackage/Build/Compile) ; \
|
popd ; \
|
||||||
)
|
)
|
||||||
|
$(call GoPackage/Build/Compile)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/dae/install
|
define Package/dae/install
|
||||||
$(call GoPackage/Package/Install/Bin,$(1))
|
$(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR))
|
||||||
|
$(INSTALL_DIR) $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/dae $(1)/usr/bin/dae
|
||||||
|
|
||||||
$(INSTALL_DIR) $(1)/etc/dae/
|
$(INSTALL_DIR) $(1)/etc/dae
|
||||||
$(INSTALL_CONF) $(PKG_BUILD_DIR)/example.dae $(1)/etc/dae/
|
$(INSTALL_CONF) $(PKG_BUILD_DIR)/example.dae $(1)/etc/dae/example.dae
|
||||||
|
|
||||||
$(INSTALL_DIR) $(1)/etc/config
|
$(INSTALL_DIR) $(1)/etc/config
|
||||||
$(INSTALL_CONF) $(CURDIR)/files/dae.config $(1)/etc/config/dae
|
$(INSTALL_CONF) $(CURDIR)/files/dae.config $(1)/etc/config/dae
|
||||||
@@ -116,17 +136,5 @@ define Package/dae/install
|
|||||||
$(INSTALL_BIN) $(CURDIR)/files/dae.init $(1)/etc/init.d/dae
|
$(INSTALL_BIN) $(CURDIR)/files/dae.init $(1)/etc/init.d/dae
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/dae-geoip/install
|
|
||||||
$(INSTALL_DIR) $(1)/usr/share/dae
|
|
||||||
$(LN) ../v2ray/geoip.dat $(1)/usr/share/dae/geoip.dat
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/dae-geosite/install
|
|
||||||
$(INSTALL_DIR) $(1)/usr/share/dae
|
|
||||||
$(LN) ../v2ray/geosite.dat $(1)/usr/share/dae/geosite.dat
|
|
||||||
endef
|
|
||||||
|
|
||||||
$(eval $(call GoBinPackage,dae))
|
$(eval $(call GoBinPackage,dae))
|
||||||
$(eval $(call BuildPackage,dae))
|
$(eval $(call BuildPackage,dae))
|
||||||
$(eval $(call BuildPackage,dae-geoip))
|
|
||||||
$(eval $(call BuildPackage,dae-geosite))
|
|
||||||
@@ -27,6 +27,7 @@ start_service() {
|
|||||||
config_get log_maxsize "config" "log_maxsize" "1"
|
config_get log_maxsize "config" "log_maxsize" "1"
|
||||||
|
|
||||||
procd_open_instance "$CONF"
|
procd_open_instance "$CONF"
|
||||||
|
procd_set_param env DAE_LOCATION_ASSET="/usr/share/v2ray"
|
||||||
procd_set_param command "$PROG" run
|
procd_set_param command "$PROG" run
|
||||||
procd_append_param command --config "$config_file"
|
procd_append_param command --config "$config_file"
|
||||||
procd_append_param command --disable-timestamp
|
procd_append_param command --disable-timestamp
|
||||||
|
|||||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,24 @@
|
|||||||
|
--- a/trace/kern/trace.c
|
||||||
|
+++ b/trace/kern/trace.c
|
||||||
|
@@ -228,7 +228,7 @@ KPROBE_SKB_AT(1)
|
||||||
|
KPROBE_SKB_AT(2)
|
||||||
|
KPROBE_SKB_AT(3)
|
||||||
|
KPROBE_SKB_AT(4)
|
||||||
|
-KPROBE_SKB_AT(5)
|
||||||
|
+//KPROBE_SKB_AT(5)
|
||||||
|
|
||||||
|
SEC("kprobe/skb_lifetime_termination")
|
||||||
|
int kprobe_skb_lifetime_termination(struct pt_regs *ctx)
|
||||||
|
--- a/trace/trace.go
|
||||||
|
+++ b/trace/trace.go
|
||||||
|
@@ -212,8 +212,8 @@ func attachBpfToTargets(objs *bpfObjects
|
||||||
|
kp, err = link.Kprobe(fn, objs.KprobeSkb3, nil)
|
||||||
|
case 4:
|
||||||
|
kp, err = link.Kprobe(fn, objs.KprobeSkb4, nil)
|
||||||
|
- case 5:
|
||||||
|
- kp, err = link.Kprobe(fn, objs.KprobeSkb5, nil)
|
||||||
|
+ //case 5:
|
||||||
|
+ // kp, err = link.Kprobe(fn, objs.KprobeSkb5, nil)
|
||||||
|
}
|
||||||
|
if err != nil {
|
||||||
|
logrus.Debugf("failed to attach kprobe to %s: %+v\n", fn, err)
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
"dae")
|
|
||||||
dae --version | grep "$PKG_VERSION"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
+48
-69
@@ -1,31 +1,41 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-only
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
#
|
|
||||||
# Copyright (C) 2023 ImmortalWrt.org
|
|
||||||
|
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=daed
|
PKG_NAME:=daed
|
||||||
PKG_VERSION:=1.27.0
|
PKG_VERSION:=2026.06.08
|
||||||
PKG_RELEASE:=6
|
PKG_RELEASE:=7
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE:=daed-src-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://github.com/daeuniverse/daed.git
|
PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/daed-src
|
||||||
PKG_SOURCE_VERSION:=v$(PKG_VERSION)
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_MIRROR_HASH:=skip
|
PKG_HASH:=skip
|
||||||
|
|
||||||
PKG_LICENSE:=AGPL-3.0-only MIT
|
PKG_LICENSE:=AGPL-3.0-only MIT
|
||||||
PKG_LICENSE_FILES:=LICENSE wing/LICENSE
|
PKG_LICENSE_FILES:=LICENSE wing/LICENSE
|
||||||
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
|
PKG_MAINTAINER:=kenzok8
|
||||||
|
|
||||||
|
DAED_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_BUILD_DIR:=$(DAED_BUILD_DIR)/wing
|
||||||
|
|
||||||
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/wing
|
|
||||||
PKG_BUILD_DEPENDS:=golang/host bpf-headers
|
PKG_BUILD_DEPENDS:=golang/host bpf-headers
|
||||||
PKG_BUILD_PARALLEL:=1
|
PKG_BUILD_PARALLEL:=1
|
||||||
PKG_BUILD_FLAGS:=no-mips16
|
PKG_BUILD_FLAGS:=no-mips16
|
||||||
|
|
||||||
|
# armv7 lacks a CO-RE vmlinux.h for the trace eBPF (under wing/dae-core), so
|
||||||
|
# trace's bpf2go fails there. Apply sbwml/openwrt_helloworld's arm patches
|
||||||
|
# (add vmlinux-arm.h + drop the kprobe that doesn't work) to build on arm.
|
||||||
|
ifeq ($(ARCH),arm)
|
||||||
|
PATCH_DIR:=$(CURDIR)/patches_arm
|
||||||
|
endif
|
||||||
|
|
||||||
GO_PKG:=github.com/daeuniverse/dae-wing
|
GO_PKG:=github.com/daeuniverse/dae-wing
|
||||||
|
|
||||||
GO_PKG_LDFLAGS:= \
|
GO_PKG_LDFLAGS:= \
|
||||||
|
-s -w -buildid= \
|
||||||
|
-linkmode external -extldflags '-static -Wl,-s' \
|
||||||
-X '$(GO_PKG)/db.AppDescription=$(PKG_NAME) is a integration solution of dae, API and UI.'
|
-X '$(GO_PKG)/db.AppDescription=$(PKG_NAME) is a integration solution of dae, API and UI.'
|
||||||
GO_PKG_LDFLAGS_X= \
|
GO_PKG_LDFLAGS_X:= \
|
||||||
$(GO_PKG)/db.AppName=$(PKG_NAME) \
|
$(GO_PKG)/db.AppName=$(PKG_NAME) \
|
||||||
$(GO_PKG)/db.AppVersion=$(PKG_VERSION)
|
$(GO_PKG)/db.AppVersion=$(PKG_VERSION)
|
||||||
GO_PKG_TAGS:=embedallowed,trace
|
GO_PKG_TAGS:=embedallowed,trace
|
||||||
@@ -34,7 +44,10 @@ include $(INCLUDE_DIR)/package.mk
|
|||||||
include $(INCLUDE_DIR)/bpf.mk
|
include $(INCLUDE_DIR)/bpf.mk
|
||||||
include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk
|
include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk
|
||||||
|
|
||||||
TAR_CMD=$(HOST_TAR) -C $(BUILD_DIR)/ $(TAR_OPTIONS)
|
GO_PKG_BUILD_VARS+= GOFLAGS="-trimpath -buildvcs=false -pgo=auto"
|
||||||
|
GO_PKG_TARGET_VARS+= \
|
||||||
|
CGO_LDFLAGS="$(TARGET_LDFLAGS) -static -Wl,-s" \
|
||||||
|
GOEXPERIMENT=newinliner,simd
|
||||||
|
|
||||||
define Package/daed/Default
|
define Package/daed/Default
|
||||||
SECTION:=net
|
SECTION:=net
|
||||||
@@ -46,24 +59,26 @@ endef
|
|||||||
define Package/daed
|
define Package/daed
|
||||||
$(call Package/daed/Default)
|
$(call Package/daed/Default)
|
||||||
TITLE:=A Modern Dashboard For dae
|
TITLE:=A Modern Dashboard For dae
|
||||||
# You need enable KERNEL_DEBUG_INFO_BTF and KERNEL_BPF_EVENTS
|
DEPENDS:=$(GO_ARCH_DEPENDS) \
|
||||||
DEPENDS:=$(GO_ARCH_DEPENDS) $(BPF_DEPENDS) \
|
+ca-bundle +kmod-sched-core +kmod-sched-bpf \
|
||||||
+ca-bundle +kmod-sched-core +kmod-sched-bpf +kmod-xdp-sockets-diag \
|
+kmod-veth +v2ray-geoip +v2ray-geosite \
|
||||||
+kmod-veth
|
+@KERNEL_XDP_SOCKETS \
|
||||||
|
+DAED_USE_VMLINUX_BTF:vmlinux-btf
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/daed-geoip
|
define Package/daed/config
|
||||||
$(call Package/daed/Default)
|
choice
|
||||||
TITLE:=geoip for daed
|
prompt "BTF source for CO-RE"
|
||||||
DEPENDS:=+daed +v2ray-geoip
|
default DAED_USE_KERNEL_BTF
|
||||||
PKGARCH:=all
|
depends on PACKAGE_daed
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/daed-geosite
|
config DAED_USE_KERNEL_BTF
|
||||||
$(call Package/daed/Default)
|
bool "Use kernel BTF (integrated)"
|
||||||
TITLE:=geosite for daed
|
depends on KERNEL_DEBUG_INFO_BTF
|
||||||
DEPENDS:=+daed +v2ray-geosite
|
|
||||||
PKGARCH:=all
|
config DAED_USE_VMLINUX_BTF
|
||||||
|
bool "Use vmlinux-btf package"
|
||||||
|
endchoice
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/daed/description
|
define Package/daed/description
|
||||||
@@ -76,29 +91,10 @@ define Package/daed/conffiles
|
|||||||
/etc/config/daed
|
/etc/config/daed
|
||||||
endef
|
endef
|
||||||
|
|
||||||
WEB_FILE:=$(PKG_NAME)-web-$(PKG_VERSION).zip
|
|
||||||
define Download/daed-web
|
|
||||||
URL:=https://github.com/daeuniverse/daed/releases/download/v$(PKG_VERSION)
|
|
||||||
URL_FILE:=web.zip
|
|
||||||
FILE:=$(WEB_FILE)
|
|
||||||
HASH:=skip
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Build/Prepare
|
define Build/Prepare
|
||||||
$(call Build/Prepare/Default)
|
mkdir -p $(DAED_BUILD_DIR)
|
||||||
|
$(TAR) --strip-components=1 -C $(DAED_BUILD_DIR) -xzf $(DL_DIR)/$(PKG_SOURCE)
|
||||||
( \
|
$(if $(wildcard $(PATCH_DIR)/*.patch),$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR),))
|
||||||
mkdir -p $(PKG_BUILD_DIR)/webrender ; \
|
|
||||||
unzip -q -d $(PKG_BUILD_DIR)/webrender/ $(DL_DIR)/$(WEB_FILE) ; \
|
|
||||||
find $(PKG_BUILD_DIR)/webrender/web -type f -size +4k ! -name "*.gz" ! -name "*.woff" ! -name "*.woff2" -exec sh -c '\
|
|
||||||
gzip -9 -k "{}"; \
|
|
||||||
if [ "$$$$(stat -c %s "{}")" -lt "$$$$(stat -c %s "{}.gz")" ]; then \
|
|
||||||
rm "{}.gz"; \
|
|
||||||
else \
|
|
||||||
rm "{}"; \
|
|
||||||
fi' \
|
|
||||||
";" ; \
|
|
||||||
)
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
DAE_CFLAGS:= \
|
DAE_CFLAGS:= \
|
||||||
@@ -107,10 +103,6 @@ DAE_CFLAGS:= \
|
|||||||
-I$(BPF_HEADERS_DIR)/tools/lib \
|
-I$(BPF_HEADERS_DIR)/tools/lib \
|
||||||
-I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include/asm/mach-generic
|
-I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include/asm/mach-generic
|
||||||
|
|
||||||
ifneq ($(CONFIG_USE_MUSL),)
|
|
||||||
TARGET_CFLAGS += -D_LARGEFILE64_SOURCE
|
|
||||||
endif
|
|
||||||
|
|
||||||
define Build/Compile
|
define Build/Compile
|
||||||
( \
|
( \
|
||||||
pushd $(PKG_BUILD_DIR) ; \
|
pushd $(PKG_BUILD_DIR) ; \
|
||||||
@@ -126,11 +118,11 @@ define Build/Compile
|
|||||||
BPF_CFLAGS="$(DAE_CFLAGS)" \
|
BPF_CFLAGS="$(DAE_CFLAGS)" \
|
||||||
BPF_TARGET="bpfel,bpfeb" \
|
BPF_TARGET="bpfel,bpfeb" \
|
||||||
BPF_TRACE_TARGET="$(GO_ARCH)" ; \
|
BPF_TRACE_TARGET="$(GO_ARCH)" ; \
|
||||||
go generate control/control.go ; \
|
go generate ./control/control.go ; \
|
||||||
go generate trace/trace.go ; \
|
go generate ./trace/trace.go ; \
|
||||||
popd ; \
|
popd ; \
|
||||||
$(call GoPackage/Build/Compile) ; \
|
|
||||||
)
|
)
|
||||||
|
$(call GoPackage/Build/Compile)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/daed/install
|
define Package/daed/install
|
||||||
@@ -145,18 +137,5 @@ define Package/daed/install
|
|||||||
$(INSTALL_BIN) $(CURDIR)/files/daed.init $(1)/etc/init.d/daed
|
$(INSTALL_BIN) $(CURDIR)/files/daed.init $(1)/etc/init.d/daed
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/daed-geoip/install
|
|
||||||
$(INSTALL_DIR) $(1)/usr/share/daed
|
|
||||||
$(LN) ../v2ray/geoip.dat $(1)/usr/share/daed/geoip.dat
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/daed-geosite/install
|
|
||||||
$(INSTALL_DIR) $(1)/usr/share/daed
|
|
||||||
$(LN) ../v2ray/geosite.dat $(1)/usr/share/daed/geosite.dat
|
|
||||||
endef
|
|
||||||
|
|
||||||
$(eval $(call Download,daed-web))
|
|
||||||
$(eval $(call GoBinPackage,daed))
|
$(eval $(call GoBinPackage,daed))
|
||||||
$(eval $(call BuildPackage,daed))
|
$(eval $(call BuildPackage,daed))
|
||||||
$(eval $(call BuildPackage,daed-geoip))
|
|
||||||
$(eval $(call BuildPackage,daed-geosite))
|
|
||||||
@@ -21,6 +21,7 @@ start_service() {
|
|||||||
config_get log_maxsize "config" "log_maxsize" "5"
|
config_get log_maxsize "config" "log_maxsize" "5"
|
||||||
|
|
||||||
procd_open_instance "$CONF"
|
procd_open_instance "$CONF"
|
||||||
|
procd_set_param env DAE_LOCATION_ASSET="/usr/share/v2ray"
|
||||||
procd_set_param command "$PROG" run
|
procd_set_param command "$PROG" run
|
||||||
procd_append_param command --config "/etc/daed/"
|
procd_append_param command --config "/etc/daed/"
|
||||||
procd_append_param command --listen "$listen_addr"
|
procd_append_param command --listen "$listen_addr"
|
||||||
@@ -39,6 +40,9 @@ start_service() {
|
|||||||
|
|
||||||
stop_service() {
|
stop_service() {
|
||||||
rm -f "$LOG"
|
rm -f "$LOG"
|
||||||
|
# daed creates /run/netns/daens on start; a stale entry makes the next
|
||||||
|
# start fail with "failed to create netns: ... file exists". Clean it here.
|
||||||
|
ip netns del daens 2>/dev/null || true
|
||||||
}
|
}
|
||||||
|
|
||||||
service_triggers() {
|
service_triggers() {
|
||||||
|
|||||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,24 @@
|
|||||||
|
--- a/dae-core/trace/kern/trace.c
|
||||||
|
+++ b/dae-core/trace/kern/trace.c
|
||||||
|
@@ -228,7 +228,7 @@ KPROBE_SKB_AT(1)
|
||||||
|
KPROBE_SKB_AT(2)
|
||||||
|
KPROBE_SKB_AT(3)
|
||||||
|
KPROBE_SKB_AT(4)
|
||||||
|
-KPROBE_SKB_AT(5)
|
||||||
|
+//KPROBE_SKB_AT(5)
|
||||||
|
|
||||||
|
SEC("kprobe/skb_lifetime_termination")
|
||||||
|
int kprobe_skb_lifetime_termination(struct pt_regs *ctx)
|
||||||
|
--- a/dae-core/trace/trace.go
|
||||||
|
+++ b/dae-core/trace/trace.go
|
||||||
|
@@ -206,8 +206,8 @@ func attachBpfToTargets(objs *bpfObjects
|
||||||
|
kp, err = link.Kprobe(fn, objs.KprobeSkb3, nil)
|
||||||
|
case 4:
|
||||||
|
kp, err = link.Kprobe(fn, objs.KprobeSkb4, nil)
|
||||||
|
- case 5:
|
||||||
|
- kp, err = link.Kprobe(fn, objs.KprobeSkb5, nil)
|
||||||
|
+ //case 5:
|
||||||
|
+ // kp, err = link.Kprobe(fn, objs.KprobeSkb5, nil)
|
||||||
|
}
|
||||||
|
if err != nil {
|
||||||
|
logrus.Debugf("failed to attach kprobe to %s: %+v\n", fn, err)
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
"daed")
|
|
||||||
daed --version | grep "$PKG_VERSION"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
Reference in new issue
Block a user