diff --git a/README.md b/README.md
index 165bbac..a5fef0b 100644
--- a/README.md
+++ b/README.md
@@ -23,5 +23,4 @@ src-git bgme https://git.bgme.bid/bgme/openwrt-bgme-feed.git
 
 - einat-ebpf: https://github.com/muink/openwrt-einat-ebpf
 - luci-app-einat: https://github.com/muink/luci-app-einat.git
-- naiveproxy: https://github.com/immortalwrt/packages/tree/master/net/naiveproxy
 - smartdns: https://github.com/openwrt/packages/tree/master/net/smartdns
diff --git a/naiveproxy/Makefile b/naiveproxy/Makefile
deleted file mode 100644
index 467334d..0000000
--- a/naiveproxy/Makefile
+++ /dev/null
@@ -1,122 +0,0 @@
-# SPDX-License-Identifier: GPL-3.0-only
-#
-# Copyright (C) 2021 ImmortalWrt.org
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=naiveproxy
-PKG_REAL_VERSION:=135.0.7049.38-2
-PKG_VERSION:=$(subst -,.,$(PKG_REAL_VERSION))
-PKG_RELEASE:=1
-
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_REAL_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/klzgrad/naiveproxy/tar.gz/v$(PKG_REAL_VERSION)?
-PKG_HASH:=c06fc41ec61f444a9e12da6dee07b22eec0a848de1f7d580a39d0095e5286342
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_REAL_VERSION)
-
-PKG_LICENSE:=BSD 3-Clause
-PKG_LICENSE_FILES:=LICENSE
-PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
-
-PKG_BUILD_DEPENDS:=gn/host
-PKG_BUILD_PARALLEL:=1
-PKG_BUILD_FLAGS:=no-mips16
-
-ifneq ($(CONFIG_CPU_TYPE)," ")
-  CPU_TYPE:=$(word 1, $(subst +," ,$(CONFIG_CPU_TYPE)))
-  CPU_SUBTYPE:=$(word 2, $(subst +, ",$(CONFIG_CPU_TYPE)))
-  ifeq ($(CPU_SUBTYPE),)
-    CPU_SUBTYPE:=""
-  endif
-else
-  CPU_TYPE:=""
-  CPU_SUBTYPE:=""
-endif
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/naiveproxy
-  SECTION:=net
-  CATEGORY:=Network
-  SUBMENU:=Web Servers/Proxies
-  TITLE:=Make a fortune quietly
-  URL:=https://github.com/klzgrad/naiveproxy
-  DEPENDS:=@!(arc||armeb||loongarch64||mips||mips64||powerpc||TARGET_gemini) +libatomic
-endef
-
-define Package/naiveproxy/description
-  NaïveProxy uses Chrome's network stack to camouflage traffic with strong
-  censorship resistance and low detectability. Reusing Chrome's stack also
-  ensures best practices in performance and security.
-endef
-
-ifneq ($(CONFIG_CCACHE),)
-  export CCACHE_SLOPPINESS=time_macros
-  export CCACHE_BASEDIR=$(PKG_BUILD_DIR)/src
-  export CCACHE_CPP2=yes
-  export naive_ccache_flags=cc_wrapper="$(CCACHE)"
-endif
-
-CLANG_VER:=21-init-1655-g7b473dfe-1
-CLANG_FILE:=clang-llvmorg-$(CLANG_VER).tar.xz
-define Download/CLANG
-	URL:=https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64
-	URL_FILE:=$(CLANG_FILE)
-	FILE:=$(CLANG_FILE)
-	HASH:=5d94230fdb20386df002b32046139c05a1f0f9f98451b202abacdaf918fb3fe8
-endef
-
-PGO_VER:=7049-1742902334-660df08dc89b79c863466eae026b99254081ab9d-96ef988d106b9eef4526027fbfdd54a082b5d5e2
-PGO_FILE:=chrome-linux-$(PGO_VER).profdata
-define Download/PGO_PROF
-	URL:=https://storage.googleapis.com/chromium-optimization-profiles/pgo_profiles
-	URL_FILE:=$(PGO_FILE)
-	FILE:=$(PGO_FILE)
-	HASH:=b974d2e68a55b7b952253233d00a5f543f9f053ec567ff0ee6e98eec403afbc0
-endef
-
-define Build/Prepare
-	$(call Build/Prepare/Default)
-
-	( \
-		pushd $(PKG_BUILD_DIR)/src ; \
-		mkdir -p "chrome/build/pgo_profiles" ; \
-		$(CP) "$(DL_DIR)/$(PGO_FILE)" "chrome/build/pgo_profiles" ; \
-		mkdir -p "third_party/llvm-build/Release+Asserts" ; \
-		$(TAR) -xJf "$(DL_DIR)/$(CLANG_FILE)" -C "third_party/llvm-build/Release+Asserts" ; \
-		echo -e "llvmorg-$(CLANG_VER)" > "third_party/llvm-build/Release+Asserts/cr_build_revision" ; \
-		popd ; \
-	)
-endef
-
-define Build/Configure
-	( \
-		pushd "$(PKG_BUILD_DIR)/src" ; \
-		. ../init_env.sh "$(ARCH)" $(CPU_TYPE) $(CPU_SUBTYPE) "$(TOOLCHAIN_ROOT_DIR)" ; \
-		export naive_flags+=" $$$${naive_ccache_flags}" ; \
-		mkdir -p "out" ; \
-		gn gen "out/Release" --args="$$$${naive_flags}" --script-executable="$(PYTHON)" ; \
-		popd ; \
-	)
-endef
-
-define Build/Compile
-	+$(NINJA) -C "$(PKG_BUILD_DIR)/src/out/Release" naive
-endef
-
-define Package/naiveproxy/conffiles
-/etc/config/naiveproxy
-endef
-
-define Package/naiveproxy/install
-	$(INSTALL_DIR) $(1)/usr/bin
-	$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/out/Release/naive $(1)/usr/bin/naive
-	$(INSTALL_DIR) $(1)/etc/config $(1)/etc/init.d
-	$(INSTALL_CONF) $(CURDIR)/files/naiveproxy.config $(1)/etc/config/naiveproxy
-	$(INSTALL_BIN) $(CURDIR)/files/naiveproxy.init $(1)/etc/init.d/naiveproxy
-endef
-
-$(eval $(call Download,CLANG))
-$(eval $(call Download,PGO_PROF))
-
-$(eval $(call BuildPackage,naiveproxy))
diff --git a/naiveproxy/files/naiveproxy.config b/naiveproxy/files/naiveproxy.config
deleted file mode 100644
index 439e30b..0000000
--- a/naiveproxy/files/naiveproxy.config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-config naiveproxy 'config'
-	option enable '0'
-	option listen_addr ''
-	option server_addr ''
-	option extra_argument ''
diff --git a/naiveproxy/files/naiveproxy.init b/naiveproxy/files/naiveproxy.init
deleted file mode 100644
index e483b48..0000000
--- a/naiveproxy/files/naiveproxy.init
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2021 ImmortalWrt
-
-. /lib/functions.sh
-. /lib/functions/procd.sh
-
-USE_PROCD=1
-
-START=99
-STOP=10
-
-init_conf() {
-	config_load "naiveproxy"
-	config_get "enable" "config" "enable" "0"
-	config_get "listen_addr" "config" "listen_addr"
-	config_get "server_addr" "config" "server_addr"
-	config_get "extra_argument" "config" "extra_argument"
-}
-
-start_service() {
-	init_conf
-	[ "${enable}" == "1" ] || return 0
-
-	procd_open_instance naiveproxy
-
-	procd_set_param command naive
-	procd_append_param command --listen="${listen_addr}"
-	procd_append_param command --proxy="${server_addr}"
-	[ -n "${extra_argument}" ] && procd_append_param command "${extra_argument}"
-
-	procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}
-	procd_set_param limits core="unlimited"
-	procd_set_param stdout 1
-	procd_set_param stderr 1
-
-	procd_close_instance
-}
-
-reload_service()
-{
-	stop
-	start
-}
-
-service_triggers() {
-        procd_add_reload_trigger "naiveproxy"
-}
diff --git a/naiveproxy/src/init_env.sh b/naiveproxy/src/init_env.sh
deleted file mode 100644
index f174b1d..0000000
--- a/naiveproxy/src/init_env.sh
+++ /dev/null
@@ -1,128 +0,0 @@
-#!/bin/bash
-# SPDX-License-Identifier: GPL-3.0-only
-#
-# Copyright (C) 2021 ImmortalWrt.org
-# --------------------------------------------------------
-# Init build dependencies for naiveproxy
-
-# Read args from shell
-target_arch="$1"
-cpu_type="$2"
-cpu_subtype="$3"
-toolchain_dir="$4"
-
-# Set arch info
-case "${target_arch}" in
-"aarch64")
-	naive_arch="arm64"
-	;;
-"i386")
-	naive_arch="x86"
-	;;
-"loongarch64")
-	naive_arch="loong64"
-	;;
-"x86_64")
-	naive_arch="x64"
-	;;
-*)
-	naive_arch="${target_arch}"
-	;;
-esac
-
-# OS detection
-[ "$(uname)" != "Linux" -o "$(uname -m)" != "x86_64" ] && { echo -e "Support Linux AMD64 only."; exit 1; }
-
-# Create TMP dir
-mkdir -p "$PWD/tmp"
-export TMPDIR="$PWD/tmp"
-
-# Set ENV
-export DEPOT_TOOLS_WIN_TOOLCHAIN=0
-export naive_flags="
-is_official_build=true
-exclude_unwind_tables=true
-enable_resource_allowlist_generation=false
-symbol_level=0
-
-is_clang=true
-use_sysroot=false
-
-fatal_linker_warnings=false
-treat_warnings_as_errors=false
-
-is_cronet_build=true
-chrome_pgo_phase=2
-
-enable_base_tracing=false
-use_udev=false
-use_aura=false
-use_ozone=false
-use_gio=false
-use_platform_icu_alternatives=true
-use_glib=false
-
-disable_file_support=true
-enable_websockets=false
-use_kerberos=false
-disable_file_support=true
-disable_zstd_filter=false
-enable_mdns=false
-enable_reporting=false
-include_transport_security_state_preload_list=false
-enable_device_bound_sessions=false
-enable_bracketed_proxy_uris=true
-enable_quic_proxy_support=true
-
-use_nss_certs=false
-
-enable_backup_ref_ptr_support=false
-enable_dangling_raw_ptr_checks=false
-enable_shadow_metadata=false
-
-target_os=\"openwrt\"
-target_cpu=\"${naive_arch}\"
-target_sysroot=\"${toolchain_dir}\""
-
-case "${target_arch}" in
-"arm")
-	naive_flags+=" arm_version=0 arm_cpu=\"${cpu_type}\""
-	case "${cpu_type}" in "arm1176jzf-s"|"arm926ej-s"|"mpcore"|"xscale") naive_flags+=" arm_use_thumb=false" ;; esac
-	if [ -n "${cpu_subtype}" ]; then
-		if grep -q "neon" <<< "${cpu_subtype}"; then
-			neon_flag="arm_use_neon=true"
-		else
-			neon_flag="arm_use_neon=false"
-		fi
-		naive_flags+=" arm_fpu=\"${cpu_subtype}\" arm_float_abi=\"hard\" ${neon_flag}"
-	else
-		naive_flags+=" arm_float_abi=\"soft\" arm_use_neon=false"
-	fi
-
-	# LLVM does not accept muslgnueabi as the target triple environment
-	if [ -d "$toolchain_dir/lib/gcc/arm-openwrt-linux-muslgnueabi" ] && [ ! -d "$toolchain_dir/lib/gcc/arm-openwrt-linux-musleabi" ]; then
-		ln -sf "$toolchain_dir/lib/gcc/arm-openwrt-linux-muslgnueabi" "$toolchain_dir/lib/gcc/arm-openwrt-linux-musleabi"
-	fi
-	;;
-"arm64")
-	[ -n "${cpu_type}" ] && naive_flags+=" arm_cpu=\"${cpu_type}\""
-	;;
-"mipsel"|"mips64el")
-	naive_flags+=" use_thin_lto=false chrome_pgo_phase=0"
-	if [ -z "${cpu_type}" ] || [ "${cpu_type}" == "mips32" ]; then
-		naive_flags+=" mips_arch_variant=\"r1\""
-	else
-		naive_flags+=" mips_arch_variant=\"r2\""
-	fi
-	if [ "${target_arch}" == "mipsel" ]; then
-		if [ "${cpu_subtype}" == "24kf" ]; then
-			naive_flags+=" mips_float_abi=\"hard\""
-		else
-			naive_flags+=" mips_float_abi=\"soft\""
-		fi
-	fi
-	;;
-"x86_64")
-	naive_flags+=" use_cfi_icall=false"
-	;;
-esac