99 lines
3.1 KiB
Makefile
99 lines
3.1 KiB
Makefile
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=luci-app-xray-shared
|
|
PKG_VERSION:=2.1.2
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_LICENSE:=MPLv2
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_MAINTAINER:=yichya <mail@yichya.dev>
|
|
PKG_BUILD_PARALLEL:=1
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/$(PKG_NAME)
|
|
SECTION:=Custom
|
|
CATEGORY:=Extra packages
|
|
TITLE:=LuCI Support for Xray (Shared Components)
|
|
DEPENDS:=+luci-base +xray-core +dnsmasq +ca-bundle
|
|
PKGARCH:=all
|
|
endef
|
|
|
|
define Package/$(PKG_NAME)/description
|
|
LuCI Support for Xray (Client-side Rendered) (Shared Components).
|
|
endef
|
|
|
|
define Package/$(PKG_NAME)/config
|
|
menu "luci-app-xray Configuration"
|
|
depends on PACKAGE_$(PKG_NAME)
|
|
|
|
config PACKAGE_XRAY_INCLUDE_CLOUDFLARE_ORIGIN_ROOT_CA
|
|
bool "Include Cloudflare Origin Root CA"
|
|
default n
|
|
|
|
config PACKAGE_XRAY_INFINITE_RETRY_ON_STARTUP
|
|
bool "Retry infinitely on Xray startup (may solve some startup problems)"
|
|
default n
|
|
|
|
config PACKAGE_XRAY_RLIMIT_NOFILE_LARGE
|
|
bool "Increase Max Open Files Limit (recommended)"
|
|
default y
|
|
|
|
config PACKAGE_XRAY_RESTART_DNSMASQ_ON_IFACE_CHANGE
|
|
bool "Restart dnsmasq on interface change (select this if using dnsmasq v2.87)"
|
|
default n
|
|
|
|
config PACKAGE_XRAY_IGNORE_TP_SPEC_DEF_GW
|
|
bool "Ignore TP_SPEC_DEF_GW (select this if using private IPv4 address)"
|
|
default n
|
|
|
|
choice
|
|
prompt "Limit memory use by setting rlimit_data (experimental)"
|
|
default PACKAGE_XRAY_RLIMIT_DATA_UNLIMITED
|
|
config PACKAGE_XRAY_RLIMIT_DATA_UNLIMITED
|
|
bool "Not limited"
|
|
config PACKAGE_XRAY_RLIMIT_DATA_SMALL
|
|
bool "Small limit (about 50MB)"
|
|
config PACKAGE_XRAY_RLIMIT_DATA_LARGE
|
|
bool "Large limit (about 321MB)"
|
|
endchoice
|
|
|
|
endmenu
|
|
endef
|
|
|
|
define Build/Compile
|
|
endef
|
|
|
|
define Package/$(PKG_NAME)/install
|
|
$(INSTALL_DIR) $(1)/etc/luci-uploads/xray
|
|
$(INSTALL_DIR) $(1)/etc/ssl/certs
|
|
ifdef CONFIG_PACKAGE_XRAY_INCLUDE_CLOUDFLARE_ORIGIN_ROOT_CA
|
|
$(INSTALL_DATA) ./root/etc/ssl/certs/origin_ca_ecc_root.pem $(1)/etc/ssl/certs/origin_ca_ecc_root.pem
|
|
endif
|
|
$(INSTALL_DIR) $(1)/usr/share/xray
|
|
$(LN) /var/run/xray.pid $(1)/usr/share/xray/xray.pid
|
|
$(LN) /usr/bin/xray $(1)/usr/share/xray/xray
|
|
ifdef CONFIG_PACKAGE_XRAY_IGNORE_TP_SPEC_DEF_GW
|
|
$(INSTALL_DATA) ./root/usr/share/xray/ignore_tp_spec_def_gw $(1)/usr/share/xray/ignore_tp_spec_def_gw
|
|
endif
|
|
ifdef CONFIG_PACKAGE_XRAY_RESTART_DNSMASQ_ON_IFACE_CHANGE
|
|
$(INSTALL_DATA) ./root/usr/share/xray/restart_dnsmasq_on_iface_change $(1)/usr/share/xray/restart_dnsmasq_on_iface_change
|
|
endif
|
|
ifdef CONFIG_PACKAGE_XRAY_INFINITE_RETRY_ON_STARTUP
|
|
$(INSTALL_DATA) ./root/usr/share/xray/infinite_retry $(1)/usr/share/xray/infinite_retry
|
|
endif
|
|
ifdef CONFIG_PACKAGE_XRAY_RLIMIT_NOFILE_LARGE
|
|
$(INSTALL_DATA) ./root/usr/share/xray/rlimit_nofile_large $(1)/usr/share/xray/rlimit_nofile
|
|
endif
|
|
ifdef CONFIG_PACKAGE_XRAY_RLIMIT_DATA_SMALL
|
|
$(INSTALL_DATA) ./root/usr/share/xray/rlimit_data_small $(1)/usr/share/xray/rlimit_data
|
|
endif
|
|
ifdef CONFIG_PACKAGE_XRAY_RLIMIT_DATA_LARGE
|
|
$(INSTALL_DATA) ./root/usr/share/xray/rlimit_data_large $(1)/usr/share/xray/rlimit_data
|
|
endif
|
|
$(INSTALL_DIR) $(1)/usr/libexec/rpcd
|
|
$(INSTALL_BIN) ./root/usr/libexec/rpcd/xray $(1)/usr/libexec/rpcd/xray
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,$(PKG_NAME)))
|