You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

403 lines
10 KiB

ddns-scripts: Update to Version 2.0.1-1 Squashed commit of the following: commit fc1d42f069ff930180c5f067c2eb88c9e9df7003 Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 18:01:43 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 commit 731f9b4df00a8f29df2c17f102356c4d6980918a Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:59:25 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 personal helper script to create hashes for CA-Certificates for Wget and cURL using https protocol without errors. Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit df8f6c9d5d31fde24fe1d673949d272d887505e1 Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:56:05 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 rewritten Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit 50cdf5acb9caecfd9b65ab79696c40fb2bc7037b Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:54:40 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 rewritten Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit b1d650a345fb06402c1eac01138cbafcca123a8c Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:52:52 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 not needed in this version Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit 9532114b03d428a3162b16e06706d3aa50e601bb Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:51:39 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 same function as existing services file but used for IPv6 Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit a636bc25c62e23694c009886c13253c9cecc548c Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:46:56 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 New file explaining availible parameters. Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit 52332354fc245861e17c898aa6b806f6c174e9a5 Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:44:45 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
10 years ago
ddns-scripts: Update to Version 2.0.1-1 Squashed commit of the following: commit fc1d42f069ff930180c5f067c2eb88c9e9df7003 Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 18:01:43 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 commit 731f9b4df00a8f29df2c17f102356c4d6980918a Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:59:25 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 personal helper script to create hashes for CA-Certificates for Wget and cURL using https protocol without errors. Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit df8f6c9d5d31fde24fe1d673949d272d887505e1 Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:56:05 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 rewritten Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit 50cdf5acb9caecfd9b65ab79696c40fb2bc7037b Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:54:40 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 rewritten Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit b1d650a345fb06402c1eac01138cbafcca123a8c Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:52:52 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 not needed in this version Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit 9532114b03d428a3162b16e06706d3aa50e601bb Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:51:39 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 same function as existing services file but used for IPv6 Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit a636bc25c62e23694c009886c13253c9cecc548c Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:46:56 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 New file explaining availible parameters. Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com> commit 52332354fc245861e17c898aa6b806f6c174e9a5 Author: Christian Schoenebeck <christian.schoenebeck@gmail.com> Date: Sun Sep 21 17:44:45 2014 +0200 [ddns-scripts] Update to Version 2.0.1-1 Sorry GitHub web interface only supports single commits that will be summarized into one pull request. Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
10 years ago
  1. #
  2. # Copyright (C) 2008-2018 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. #
  6. include $(TOPDIR)/rules.mk
  7. PKG_NAME:=ddns-scripts
  8. PKG_VERSION:=2.8.2
  9. PKG_RELEASE:=1
  10. PKG_LICENSE:=GPL-2.0
  11. include $(INCLUDE_DIR)/package.mk
  12. define Package/ddns-scripts/Default
  13. SECTION:=net
  14. CATEGORY:=Network
  15. SUBMENU:=IP Addresses and Names
  16. PKGARCH:=all
  17. endef
  18. define Package/ddns-scripts
  19. $(call Package/ddns-scripts/Default)
  20. TITLE:=Dynamic DNS Client scripts (with IPv6 support)
  21. DEPENDS:=+ddns-scripts-services
  22. endef
  23. define Package/ddns-scripts/description
  24. Dynamic DNS Client scripts (with IPv6 support)
  25. A highly configurable set of scripts for doing dynamic dns updates.
  26. - IPv6 support
  27. - DNS server support
  28. - Glue Record support (require BIND host or KNOT host)
  29. - DNS requests via TCP
  30. - Proxy server support
  31. - log file support
  32. - support to run once
  33. Version: $(PKG_VERSION)-$(PKG_RELEASE)
  34. Info : https://openwrt.org/docs/guide-user/services/ddns/client
  35. endef
  36. define Package/ddns-scripts/conffiles
  37. /etc/config/ddns
  38. endef
  39. define Package/ddns-scripts-services
  40. $(call Package/ddns-scripts/Default)
  41. TITLE:=Common ddns providers
  42. endef
  43. define Package/ddns-scripts-services/description
  44. Dynamic DNS Client definitions for supported services
  45. endef
  46. define Package/ddns-scripts-cloudflare
  47. $(call Package/ddns-scripts/Default)
  48. TITLE:=Extension for cloudflare.com API v4
  49. DEPENDS:=ddns-scripts +curl
  50. endef
  51. define Package/ddns-scripts-cloudflare/description
  52. Dynamic DNS Client scripts extension for cloudflare.com API v4 (require curl)
  53. endef
  54. define Package/ddns-scripts-freedns
  55. $(call Package/ddns-scripts/Default)
  56. TITLE:=Extension for freedns.42.pl
  57. DEPENDS:=ddns-scripts +curl
  58. endef
  59. define Package/ddns-scripts-freedns/description
  60. Dynamic DNS Client scripts extension for "freedns.42.pl".
  61. endef
  62. define Package/ddns-scripts-godaddy
  63. $(call Package/ddns-scripts/Default)
  64. TITLE:=Extension for godaddy.com API v1
  65. DEPENDS:=ddns-scripts +curl
  66. endef
  67. define Package/ddns-scripts-godaddy/description
  68. Dynamic DNS Client scripts extension for "godaddy.com API v1".
  69. endef
  70. define Package/ddns-scripts-digitalocean
  71. $(call Package/ddns-scripts/Default)
  72. TITLE:=Extention for digitalocean.com API v2
  73. DEPENDS:=ddns-scripts +curl
  74. endef
  75. define Package/ddns-scripts-digitalocean/description
  76. Dynamic DNS Client scripts extension for "digitalocean.com API v2".
  77. The script directly updates a DNS record using the DO API.
  78. It requires:
  79. "option dns_server" to be set to the server to be used by nsupdate.
  80. "option domain" the dns domain to update the record for (eg. A-record: home.<example.com>)
  81. "option username" the dns record name to update (eg. A-record: <home>.example.com)
  82. "option param_opt" the id of the dns record to update (check using chrome inspector in the DO dns tab)
  83. "option password" the api token generated in the DO panel
  84. endef
  85. define Package/ddns-scripts-noip
  86. $(call Package/ddns-scripts/Default)
  87. TITLE:=Extension for no-ip.com
  88. DEPENDS:=ddns-scripts
  89. endef
  90. define Package/ddns-scripts-noip/description
  91. Dynamic DNS Client scripts extension for "no-ip.com".
  92. endef
  93. define Package/ddns-scripts-nsupdate
  94. $(call Package/ddns-scripts/Default)
  95. TITLE:=Extension for using bind nsupdate.
  96. DEPENDS:=ddns-scripts +bind-client
  97. endef
  98. define Package/ddns-scripts-nsupdate/description
  99. Dynamic DNS Client scripts extension for direct updates using bind nsupdate
  100. The script directly updates a PowerDNS (or maybe bind server) via nsupdate
  101. from bind-client package.
  102. It requires:
  103. "option dns_server" to be set to the server to be used by nsupdate.
  104. "option username" should be set to the key name and
  105. "option password" to the base64 encoded shared secret.
  106. endef
  107. define Package/ddns-scripts-route53
  108. $(call Package/ddns-scripts/Default)
  109. TITLE:=Extension for route53 API v1
  110. DEPENDS:=ddns-scripts +curl +openssl-util
  111. endef
  112. define Package/ddns-scripts-route53/description
  113. Dynamic DNS Client scripts extension for Amazon AWS "route53 API v1".
  114. Note: You must also install ca-certificate or ca-bundle.
  115. It requires:
  116. "option username" to be a valid AWS access key id
  117. "option password" to be the matching AWS secret key id
  118. "option domain" to contain the hosted zone ID
  119. endef
  120. define Package/ddns-scripts-cnkuai
  121. $(call Package/ddns-scripts/Default)
  122. TITLE:=CnKuai API
  123. DEPENDS:=ddns-scripts +curl +giflib-utils
  124. endef
  125. define Package/ddns-scripts-cnkuai/description
  126. Dynamic DNS Client scripts extension for "cnkuai.cn".
  127. It requires:
  128. "option username" to be a valid CnKuai control panel id
  129. "option password" to be the matching CnKuai control panel password
  130. "option domain" to contain the domain
  131. endef
  132. define Build/Configure
  133. endef
  134. define Build/Compile
  135. endef
  136. define Package/ddns-scripts/install
  137. $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
  138. $(INSTALL_DATA) ./files/etc/hotplug.d/iface/ddns \
  139. $(1)/etc/hotplug.d/iface/95-ddns
  140. $(INSTALL_DIR) $(1)/etc/init.d
  141. $(INSTALL_BIN) ./files/etc/init.d/ddns \
  142. $(1)/etc/init.d/ddns
  143. $(INSTALL_DIR) $(1)/etc/config
  144. $(INSTALL_CONF) ./files/etc/config/ddns \
  145. $(1)/etc/config/ddns
  146. $(INSTALL_DIR) $(1)/usr/share/ddns
  147. echo "$(PKG_VERSION)-$(PKG_RELEASE)" > $(1)/usr/share/ddns/version
  148. $(INSTALL_DIR) $(1)/usr/lib/ddns
  149. $(INSTALL_DATA) ./files/usr/lib/ddns/dynamic_dns_functions.sh \
  150. $(1)/usr/lib/ddns
  151. $(INSTALL_BIN) ./files/usr/lib/ddns/dynamic_dns_lucihelper.sh \
  152. $(1)/usr/lib/ddns
  153. $(INSTALL_BIN) ./files/usr/lib/ddns/dynamic_dns_updater.sh \
  154. $(1)/usr/lib/ddns
  155. $(INSTALL_DIR) $(1)/usr/bin
  156. $(INSTALL_BIN) ./files/usr/bin/ddns.sh \
  157. $(1)/usr/bin/ddns
  158. endef
  159. define Package/ddns-scripts/postinst
  160. #!/bin/sh
  161. if [ -z "$${IPKG_INSTROOT}" ]; then
  162. /etc/init.d/ddns enabled
  163. /etc/init.d/ddns start
  164. fi
  165. exit 0
  166. endef
  167. define Package/ddns-scripts/prerm
  168. #!/bin/sh
  169. if [ -n "$${IPKG_INSTROOT}" ]; then
  170. /etc/init.d/ddns stop
  171. /etc/init.d/ddns disable
  172. fi
  173. exit 0
  174. endef
  175. define Package/ddns-scripts-services/install
  176. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  177. $(INSTALL_DATA) ./files/usr/share/ddns/default/* \
  178. $(1)/usr/share/ddns/default
  179. # Remove special services
  180. rm $(1)/usr/share/ddns/default/cloudflare.com-v4.json
  181. rm $(1)/usr/share/ddns/default/freedns.42.pl.json
  182. rm $(1)/usr/share/ddns/default/godaddy.com-v1.json
  183. rm $(1)/usr/share/ddns/default/digitalocean.com-v2.json
  184. rm $(1)/usr/share/ddns/default/no-ip.com.json
  185. rm $(1)/usr/share/ddns/default/bind-nsupdate.json
  186. rm $(1)/usr/share/ddns/default/route53-v1.json
  187. rm $(1)/usr/share/ddns/default/cnkuai.cn.json
  188. endef
  189. define Package/ddns-scripts-cloudflare/install
  190. $(INSTALL_DIR) $(1)/usr/lib/ddns
  191. $(INSTALL_BIN) ./files/usr/lib/ddns/update_cloudflare_com_v4.sh \
  192. $(1)/usr/lib/ddns
  193. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  194. $(INSTALL_DATA) ./files/usr/share/ddns/default/cloudflare.com-v4.json \
  195. $(1)/usr/share/ddns/default/
  196. endef
  197. define Package/ddns-scripts-cloudflare/prerm
  198. #!/bin/sh
  199. if [ -z "$${IPKG_INSTROOT}" ]; then
  200. /etc/init.d/ddns stop
  201. fi
  202. exit 0
  203. endef
  204. define Package/ddns-scripts-freedns/install
  205. $(INSTALL_DIR) $(1)/usr/lib/ddns
  206. $(INSTALL_BIN) ./files/usr/lib/ddns/update_freedns_42_pl.sh \
  207. $(1)/usr/lib/ddns
  208. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  209. $(INSTALL_DATA) ./files/usr/share/ddns/default/freedns.42.pl.json \
  210. $(1)/usr/share/ddns/default
  211. endef
  212. define Package/ddns-scripts-freedns/prerm
  213. #!/bin/sh
  214. if [ -z "$${IPKG_INSTROOT}" ]; then
  215. /etc/init.d/ddns stop
  216. fi
  217. exit 0
  218. endef
  219. define Package/ddns-scripts-godaddy/install
  220. $(INSTALL_DIR) $(1)/usr/lib/ddns
  221. $(INSTALL_BIN) ./files/usr/lib/ddns/update_godaddy_com_v1.sh \
  222. $(1)/usr/lib/ddns
  223. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  224. $(INSTALL_DATA) ./files/usr/share/ddns/default/godaddy.com-v1.json \
  225. $(1)/usr/share/ddns/default
  226. endef
  227. define Package/ddns-scripts-godaddy/prerm
  228. #!/bin/sh
  229. if [ -z "$${IPKG_INSTROOT}" ]; then
  230. /etc/init.d/ddns stop
  231. fi
  232. exit 0
  233. endef
  234. define Package/ddns-scripts-digitalocean/install
  235. $(INSTALL_DIR) $(1)/usr/lib/ddns
  236. $(INSTALL_BIN) ./files/usr/lib/ddns/update_digitalocean_com_v2.sh \
  237. $(1)/usr/lib/ddns
  238. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  239. $(INSTALL_DATA) ./files/usr/share/ddns/default/digitalocean.com-v2.json \
  240. $(1)/usr/share/ddns/default
  241. endef
  242. define Package/ddns-scripts-digitalocean/prerm
  243. #!/bin/sh
  244. if [ -z "$${IPKG_INSTROOT}" ]; then
  245. /etc/init.d/ddns stop
  246. fi
  247. exit 0
  248. endef
  249. define Package/ddns-scripts-noip/install
  250. $(INSTALL_DIR) $(1)/usr/lib/ddns
  251. $(INSTALL_BIN) ./files/usr/lib/ddns/update_no-ip_com.sh \
  252. $(1)/usr/lib/ddns
  253. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  254. $(INSTALL_DATA) ./files/usr/share/ddns/default/no-ip.com.json \
  255. $(1)/usr/share/ddns/default
  256. endef
  257. define Package/ddns-scripts-noip/prerm
  258. #!/bin/sh
  259. if [ -z "$${IPKG_INSTROOT}" ]; then
  260. /etc/init.d/ddns stop
  261. fi
  262. exit 0
  263. endef
  264. define Package/ddns-scripts-nsupdate/install
  265. $(INSTALL_DIR) $(1)/usr/lib/ddns
  266. $(INSTALL_BIN) ./files/usr/lib/ddns/update_nsupdate.sh \
  267. $(1)/usr/lib/ddns
  268. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  269. $(INSTALL_DATA) ./files/usr/share/ddns/default/bind-nsupdate.json \
  270. $(1)/usr/share/ddns/default
  271. endef
  272. define Package/ddns-scripts-nsupdate/prerm
  273. #!/bin/sh
  274. if [ -z "$${IPKG_INSTROOT}" ]; then
  275. /etc/init.d/ddns stop
  276. fi
  277. exit 0
  278. endef
  279. define Package/ddns-scripts-route53/install
  280. $(INSTALL_DIR) $(1)/usr/lib/ddns
  281. $(INSTALL_BIN) ./files/usr/lib/ddns/update_route53_v1.sh \
  282. $(1)/usr/lib/ddns
  283. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  284. $(INSTALL_DATA) ./files/usr/share/ddns/default/route53-v1.json \
  285. $(1)/usr/share/ddns/default
  286. endef
  287. define Package/ddns-scripts-route53/prerm
  288. #!/bin/sh
  289. if [ -z "$${IPKG_INSTROOT}" ]; then
  290. /etc/init.d/ddns stop
  291. fi
  292. exit 0
  293. endef
  294. define Package/ddns-scripts-cnkuai/install
  295. $(INSTALL_DIR) $(1)/usr/lib/ddns
  296. $(INSTALL_BIN) ./files/usr/lib/ddns/update_cnkuai_cn.sh \
  297. $(1)/usr/lib/ddns
  298. $(INSTALL_DIR) $(1)/usr/share/ddns/default
  299. $(INSTALL_DATA) ./files/usr/share/ddns/default/cnkuai.cn.json \
  300. $(1)/usr/share/ddns/default
  301. endef
  302. define Package/ddns-scripts-cnkuai/prerm
  303. #!/bin/sh
  304. if [ -z "$${IPKG_INSTROOT}" ]; then
  305. /etc/init.d/ddns stop
  306. fi
  307. exit 0
  308. endef
  309. $(eval $(call BuildPackage,ddns-scripts))
  310. $(eval $(call BuildPackage,ddns-scripts-services))
  311. $(eval $(call BuildPackage,ddns-scripts-cloudflare))
  312. $(eval $(call BuildPackage,ddns-scripts-freedns))
  313. $(eval $(call BuildPackage,ddns-scripts-godaddy))
  314. $(eval $(call BuildPackage,ddns-scripts-digitalocean))
  315. $(eval $(call BuildPackage,ddns-scripts-noip))
  316. $(eval $(call BuildPackage,ddns-scripts-nsupdate))
  317. $(eval $(call BuildPackage,ddns-scripts-route53))
  318. $(eval $(call BuildPackage,ddns-scripts-cnkuai))