@ -1,64 +1,112 @@
i n c l u d e $( TOPDIR ) / r u l e s . m k
PKG_NAME := ddns-scripts
PKG_VERSION := 2.1.0
PKG_RELEASE := 5
# Version == major.minor.patch
# increase on new functionality (minor) or patches (patch)
PKG_VERSION := 2.2.0
# Release == build
# increase on changes of services files or tld_names.dat
PKG_RELEASE := 1
PKG_LICENSE := GPL-2.0
PKG_MAINTAINER := Christian Schoenebeck <christian.schoenebeck@gmail.com>
PKG_BUILD_DIR := $( BUILD_DIR) /$( PKG_NAME)
i n c l u d e $( INCLUDE_DIR ) / p a c k a g e . m k
d e f i n e P a c k a g e / d d n s - s c r i p t s
d e f i n e P a c k a g e / $( PKG_NAME ) / D e f a u l t
SECTION:= net
CATEGORY:= Network
SUBMENU:= IP Addresses and Names
TITLE:= Dynamic DNS Scripts ( with IPv6 support)
PKGARCH:= all
e n d e f
d e f i n e P a c k a g e / d d n s - s c r i p t s / d e s c r i p t i o n
A h i g h l y c o n f i g u r a b l e s e t o f s c r i p t s f o r d o i n g d y n a m i c d n s u p d a t e s .
- IPv6 support
- force communication to IPv4 or IPv6 only
- DNS server support
- using BIND host if installed
- DNS requests via TCP
- Proxy server support
- log file support
- support to run once
d e f i n e P a c k a g e / $( PKG_NAME )
$( call Package/$( PKG_NAME) /Default)
TITLE:= Dynamic DNS Client scripts ( with IPv6 support)
e n d e f
# shown in LuCI package description
d e f i n e P a c k a g e / $( PKG_NAME ) / d e s c r i p t i o n
Dynamic DNS Client scripts ( with IPv6 support) - Info: http://wiki.openwrt.org/doc/howto/ddns.client
e n d e f
# shown in menuconfig <Help>
d e f i n e P a c k a g e / $( PKG_NAME ) / c o n f i g
help
A highly configurable set of scripts for doing dynamic dns updates.
- IPv6 support
- force communication to IPv4 or IPv6 only
- DNS server support
- using BIND host if installed
- DNS requests via TCP
- Proxy server support
- log file support
- support to run once
Version: $( PKG_VERSION) -$( PKG_RELEASE)
Info : http://wiki.openwrt.org/doc/howto/ddns.client
$( PKG_MAINTAINER)
e n d e f
d e f i n e B u i l d / P r e p a r e
d e f i n e P a c k a g e / $( PKG_NAME ) _ C l o u d F l a r e
$( call Package/$( PKG_NAME) /Default)
TITLE:= DDNS extension for CloudFlare
DEPENDS:= +$( PKG_NAME)
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ C l o u d F l a r e / d e s c r i p t i o n
Dynamic DNS Client scripts extension for CloudFlare
e n d e f
d e f i n e B u i l d / C o n f i g u r e
d e f i n e P a c k a g e / $( PKG_NAME ) _ N o - I P _ c o m
$( call Package/$( PKG_NAME) /Default)
TITLE:= DDNS extension for No-IP.com
DEPENDS:= +$( PKG_NAME)
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ N o - I P _ c o m / d e s c r i p t i o n
Dynamic DNS Client scripts extension for No-IP.com
e n d e f
d e f i n e B u i l d / C o n f i g u r e
e n d e f
d e f i n e B u i l d / C o m p i l e
$( CP) ./files $( PKG_BUILD_DIR)
for FILE in ` find $( PKG_BUILD_DIR) /files -type f` ; do \
$( SED) 's/^\s*#/#/' \
-e '/^#\s\|^#$$$$/d' \
-e 's/\s#\s.*$$$$//' \
-e 's/\s*$$$$//' \
-e '/^\/\/\s/d' \
-e '/^\s*$$$$/d' $$ $$ FILE; \
done
e n d e f
d e f i n e P a c k a g e / d d n s - s c r i p t s / c o n f f i l e s
d e f i n e P a c k a g e / $( PKG_NAME ) / c o n f f i l e s
/ e t c / c o n f i g / d d n s
e n d e f
d e f i n e P a c k a g e / d d n s - s c r i p t s / i n s t a l l
$( INSTALL_DIR) $( 1) /etc/config
$( INSTALL_CONF) ./files/etc/config/* $( 1) /etc/config
d e f i n e P a c k a g e / $( PKG_NAME ) / i n s t a l l
$( INSTALL_DIR) $( 1) /etc/hotplug.d/iface
$( INSTALL_BIN) ./files/etc/hotplug.d/iface/* $( 1) /etc/hotplug.d/iface
$( INSTALL_BIN) $( PKG_BUILD_DIR) /files/ddns.hotplug $( 1) /etc/hotplug.d/iface/95-ddns
$( INSTALL_DIR) $( 1) /etc/init.d
$( INSTALL_BIN) ./files/etc/init.d/* $( 1) /etc/init.d/
$( INSTALL_BIN) $( PKG_BUILD_DIR) /files/ddns.init $( 1) /etc/init.d/ddns
$( INSTALL_DIR) $( 1) /etc/config
$( INSTALL_CONF) $( PKG_BUILD_DIR) /files/ddns.config $( 1) /etc/config/ddns
$( INSTALL_DIR) $( 1) /usr/lib/ddns
$( INSTALL_DATA) ./files/usr/lib/ddns/* $( 1) /usr/lib/ddns
$( INSTALL_BIN) ./files/usr/lib/ddns/*.sh $( 1) /usr/lib/ddns
$( INSTALL_DATA) $( PKG_BUILD_DIR) /files/services* $( 1) /usr/lib/ddns
$( INSTALL_BIN) $( PKG_BUILD_DIR) /files/dynamic_*.sh $( 1) /usr/lib/ddns
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ C l o u d F l a r e / i n s t a l l
$( INSTALL_DIR) $( 1) /usr/lib/ddns
$( INSTALL_BIN) $( PKG_BUILD_DIR) /files/update_CloudFlare.sh $( 1) /usr/lib/ddns
$( INSTALL_DATA) $( PKG_BUILD_DIR) /files/tld_names.dat $( 1) /usr/lib/ddns
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ N o - I P _ c o m / i n s t a l l
$( INSTALL_DIR) $( 1) /usr/lib/ddns
$( INSTALL_BIN) $( PKG_BUILD_DIR) /files/update_No-IP.com.sh $( 1) /usr/lib/ddns
e n d e f
d e f i n e P a c k a g e / d d n s - s c r i p t s / p o s t i n s t
d e f i n e P a c k a g e / $( PKG_NAME ) / p o s t i n s t
#!/bin/sh
# if run within buildroot exit
[ -n " $$ {IPKG_INSTROOT} " ] && exit 0
@ -75,8 +123,18 @@ define Package/ddns-scripts/postinst
exit 0
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ C l o u d F l a r e / p o s t i n s t
#!/bin/sh
echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $$ { IPKG_INSTROOT} /usr/lib/ddns/services
echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $$ { IPKG_INSTROOT} /usr/lib/ddns/services_ipv6
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ N o - I P _ c o m / p o s t i n s t
#!/bin/sh
echo -e '"No-IP.com"\t"update_No-IP.com.sh"' >> $$ { IPKG_INSTROOT} /usr/lib/ddns/services
echo -e '"NoIP.com"\t"update_No-IP.com.sh"' >> $$ { IPKG_INSTROOT} /usr/lib/ddns/services
e n d e f
d e f i n e P a c k a g e / d d n s - s c r i p t s / p r e r m
d e f i n e P a c k a g e / $( PKG_NAME ) / p r e r m
#!/bin/sh
# if run within buildroot exit
[ -n " $$ {IPKG_INSTROOT} " ] && exit 0
@ -90,5 +148,16 @@ define Package/ddns-scripts/prerm
exit 0
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ C l o u d F l a r e / p r e r m
#!/bin/sh
/bin/sed -i '/update_CloudFlare\.sh/ d' $$ { IPKG_INSTROOT} /usr/lib/ddns/services
/bin/sed -i '/update_CloudFlare\.sh/ d' $$ { IPKG_INSTROOT} /usr/lib/ddns/services_ipv6
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) _ N o - I P _ c o m / p r e r m
#!/bin/sh
/bin/sed -i '/update_No-IP\.com\.sh/ d' $$ { IPKG_INSTROOT} /usr/lib/ddns/services
e n d e f
$( eval $ ( call BuildPackage ,ddns -scripts ) )
$( eval $ ( call BuildPackage ,$ ( PKG_NAME ) ) )
$( eval $ ( call BuildPackage ,$ ( PKG_NAME ) _CloudFlare ) )
$( eval $ ( call BuildPackage ,$ ( PKG_NAME ) _No -IP_com ) )