Browse Source

Support optware

Nick Peng 7 năm trước cách đây
mục cha
commit
bde19aa6eb

+ 34 - 0
package/openwrt/Makefile

@@ -0,0 +1,34 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=smarttdns
+PKG_VERSION:=2018.7.1.1607
+PKG_RELEASE:=$(PKG_SOURCE_VERSION)
+
+PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/smartdns
+	SECTION:=net
+	CATEGORY:=Network
+	TITLE:=smartdns
+	URL:=https://github.com/pymumu/smartdns
+	MAINTAINER:=Nick Peng <[email protected]>
+	DEPENDS:=
+endef
+
+define Package/smartdns/description
+	smartdns server, find fastest ip.
+endef
+
+define Build/Prepare
+	mkdir -p $(PKG_BUILD_DIR)
+	cp -r ../* $(PKG_BUILD_DIR)
+endef
+
+define Package/smartdns/install
+	$(INSTALL_DIR) $(1)/usr/sbin
+	$(INSTALL_BIN) $(PKG_BUILD_DIR)/smartdns $(1)/usr/sbin
+endef
+
+$(eval $(call BuildPackage, smartdns))

+ 63 - 0
package/optware/S50smartdns

@@ -0,0 +1,63 @@
+#! /bin/sh
+
+SMARTDNS_BIN=/opt/usr/sbin/smartdns
+SMARTDNS_CONF=/opt/etc/smartdns/smartdns.conf
+SMARTDNS_PID="/var/run/smartdns.pid"
+SMARTDNS_PORT=535
+
+set_iptable()
+{
+	iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports $SMARTDNS_PORT
+}
+
+clear_iptable()
+{
+	iptables -t nat -D PREROUTING -p udp --dport 53 -j REDIRECT --to-ports $SMARTDNS_PORT
+}
+
+case "$1" in
+	start)
+	set_iptable
+	if [ $? -ne 0 ]; then
+		exit 1
+	fi
+
+	$SMARTDNS_BIN -c $SMARTDNS_CONF -p $SMARTDNS_PID
+	if [ $? -ne 0 ]; then
+		clear_iptable
+	fi
+	;;
+	status)
+	pid="`cat $SMARTDNS_PID 2>/dev/null`"
+	if [ -z "$pid" ]; then
+		echo "smartdns not running."
+		return 0
+	fi
+
+	if [ -d "/proc/$pid" ]; then
+		echo "smartdns running"
+		return 0;
+	fi
+	echo "smartdns not running."
+	return 0;
+	;;
+	stop)
+	clear_iptable
+	pid="`cat $SMARTDNS_PID 2>/dev/null`"
+	kill -TERM $pid 2>/dev/null
+	;;
+	force-reload|restart)
+	$0 stop
+	$0 start
+	;;
+	enable)
+	nvram set apps_state_enable=2
+	nvram set apps_state_error=0
+	nvram set apps_state_install=5
+	nvram set apps_state_action=install
+	nvram set apps_u2ec_ex=2
+	;;
+	*)
+	;;
+esac
+

+ 1 - 0
package/optware/control/conffiles

@@ -0,0 +1 @@
+/opt/etc/smartdns/smartdns.conf

+ 11 - 0
package/optware/control/control

@@ -0,0 +1,11 @@
+Package: smartdns
+Architecture: mipsbig
+Priority: optional
+Section: net
+Version: 2018.7.6-1921
+Maintainer: pymumu
+Source: http://127.0.0.1/
+Description: A smart dns server
+Suggests: 
+Conflicts: 
+Enabled: yes

+ 10 - 0
package/optware/control/postinst

@@ -0,0 +1,10 @@
+#! /bin/sh
+
+chmod +x /opt/usr/sbin/smartdns
+chmod +x /opt/etc/init.d/S50smartdns
+
+
+
+
+
+

+ 3 - 0
package/optware/control/prerm

@@ -0,0 +1,3 @@
+#! /bin/sh
+
+/opt/etc/init.d/S50smartdns stop

+ 1 - 0
package/optware/debian-binary

@@ -0,0 +1 @@
+2.0

+ 28 - 0
package/optware/make.sh

@@ -0,0 +1,28 @@
+#/bin/sh
+
+CURR_DIR=`pwd`
+
+SMARTDNS_BIN=$CURR_DIR/../../src/smartdns
+SMARTDNS_CONF=$CURR_DIR/../../etc/smartdns/smartdns.conf
+ROOT=/tmp/smartdns-optware
+rm -fr $ROOT
+
+mkdir -p $ROOT
+cp * $ROOT/ -af
+cd $ROOT/
+mkdir $ROOT/opt/usr/sbin -p
+mkdir $ROOT/opt/etc/init.d -p
+mkdir $ROOT/opt/etc/smartdns/ -p
+
+cp $SMARTDNS_CONF  $ROOT/opt/etc/smartdns/
+cp S50smartdns $ROOT/opt/etc/init.d/
+cp $SMARTDNS_BIN $ROOT/opt/usr/sbin
+
+cd $ROOT/control
+chmod +x *
+tar zcf ../control.tar.gz ./
+cd $ROOT
+
+tar zcf data.tar.gz opt
+tar zcf $CURR_DIR/smartdns.2018.7.6-1933.mipsbig.ipk control.tar.gz data.tar.gz debian-binary
+rm -fr $ROOT/