Support optware

This commit is contained in:
Nick Peng
2018-07-07 01:03:48 +08:00
parent b33affdbd5
commit bde19aa6eb
8 changed files with 151 additions and 0 deletions

34
package/openwrt/Makefile Normal file
View File

@@ -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 <pymumu@gmail.com>
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))

View File

@@ -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

View File

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

View File

@@ -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

View File

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

View File

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

View File

@@ -0,0 +1 @@
2.0

28
package/optware/make.sh Normal file
View File

@@ -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/