Gentoo Archives: gentoo-commits

From: Aaron Swenson <titanofold@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/ddclient/files/, net-dns/ddclient/
Date: Sun, 02 Sep 2018 10:25:02
Message-Id: 1535883822.07bcf259bce767f0cad640468a9efba700e246ba.titanofold@gentoo
1 commit: 07bcf259bce767f0cad640468a9efba700e246ba
2 Author: Conrad Kostecki <conrad <AT> kostecki <DOT> com>
3 AuthorDate: Sat Sep 1 21:24:57 2018 +0000
4 Commit: Aaron Swenson <titanofold <AT> gentoo <DOT> org>
5 CommitDate: Sun Sep 2 10:23:42 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07bcf259
7
8 net-dns/ddclient: bump to version 3.9.0
9
10 Closes: https://bugs.gentoo.org/665070
11 Package-Manager: Portage-2.3.48, Repoman-2.3.10
12 Closes: https://github.com/gentoo/gentoo/pull/9762
13
14 net-dns/ddclient/Manifest | 1 +
15 net-dns/ddclient/ddclient-3.9.0.ebuild | 65 ++++++++++++++++++++++
16 .../files/ddclient-3.9.0-use_iproute2.patch | 29 ++++++++++
17 net-dns/ddclient/files/ddclient.initd-r5 | 21 +++++++
18 net-dns/ddclient/files/ddclient.service-r1 | 13 +++++
19 net-dns/ddclient/metadata.xml | 39 +++++++++----
20 6 files changed, 157 insertions(+), 11 deletions(-)
21
22 diff --git a/net-dns/ddclient/Manifest b/net-dns/ddclient/Manifest
23 index 03aaf5c5581..54506bc1f80 100644
24 --- a/net-dns/ddclient/Manifest
25 +++ b/net-dns/ddclient/Manifest
26 @@ -1,3 +1,4 @@
27 DIST ddclient-3.8.1.tar.gz 48600 BLAKE2B a945adcb42bd298422c71c0eea6bea36c6b266ce39e97ebfd833b29819a2f30f2651d7f7b17dbfc0720b6209d0c0ed94bf2673624777f07e6de83a7081471995 SHA512 d6722582dffe0c5a806176f24bd3d9117bc1210ea0137aa92138390be16e67d47b746777dc431282a664849c91626969a5e267777126bac03304c7aa34a9dad7
28 DIST ddclient-3.8.2.tar.gz 46059 BLAKE2B 95dc19f26fe4a14d67154ad86723882ef371545156d88119d000366d97e045f37e9d6af229a24950740b915404cb35250baf05aa7cf1268f756ce7b1e776c6cb SHA512 8f74ce90ce4a31b8d53887b99556661343b96734ae630403434689459eaeb1354159ae26f0404b9db21a0ff4151816d1650746a13c547064748656a8c6e3f13b
29 DIST ddclient-3.8.3.tar.gz 54516 BLAKE2B a472c84c05b6eccdef3ead0abfa6e38d5ef04fdc0df3327dad2181088102f1b40ac7986492c8d964589e3994cace9103ba56664809174f99d14d9c86c377c46a SHA512 055b6edf91a3b72d9ba80c9dedfbc1d60f62d6879bc722735488a5a1a37fafeb2e97567da98939ccc62fd39b0846438dfad1c022635d602c67bafda178574a76
30 +DIST ddclient-3.9.0.tar.gz 59018 BLAKE2B b9b58108d9f124fcd5a72cc57bfb0e6a5bc2e115edc27a1d5950a929670d67d5c703b09f51e7e82e977ccfb544d115da177b0ac8dc06a76a800aa207cde5a42d SHA512 ae314c96a37dd90256d6acf62f4a4523b72f540194131e351a032239b00b4520351f6549d3b20a9209fe49ccc6de7ce158ffa8635d341066ea71b789dc667438
31
32 diff --git a/net-dns/ddclient/ddclient-3.9.0.ebuild b/net-dns/ddclient/ddclient-3.9.0.ebuild
33 new file mode 100644
34 index 00000000000..850df0d4444
35 --- /dev/null
36 +++ b/net-dns/ddclient/ddclient-3.9.0.ebuild
37 @@ -0,0 +1,65 @@
38 +# Copyright 1999-2018 Gentoo Foundation
39 +# Distributed under the terms of the GNU General Public License v2
40 +
41 +EAPI="6"
42 +
43 +inherit systemd user
44 +
45 +DESCRIPTION="Perl client used to update dynamic DNS entries"
46 +HOMEPAGE="https://sourceforge.net/projects/ddclient/"
47 +SRC_URI="mirror://sourceforge/ddclient/${P}.tar.gz"
48 +
49 +KEYWORDS="~amd64 ~mips ~x86 ~x86-fbsd"
50 +LICENSE="GPL-2+"
51 +SLOT="0"
52 +IUSE="examples iproute2"
53 +
54 +RDEPEND="dev-lang/perl
55 + dev-perl/Data-Validate-IP
56 + dev-perl/Digest-SHA1
57 + dev-perl/IO-Socket-INET6
58 + dev-perl/IO-Socket-SSL
59 + virtual/perl-Digest-SHA
60 + virtual/perl-JSON-PP
61 + iproute2? ( sys-apps/iproute2 )"
62 +
63 +pkg_setup() {
64 + enewgroup ddclient
65 + enewuser ddclient -1 -1 -1 ddclient
66 +}
67 +
68 +src_prepare() {
69 + # Remove PID setting, to reliably setup the environment for the init script
70 + sed -e '/^pid/d' -i sample-etc_ddclient.conf || die
71 +
72 + # Remove windows executable
73 + if use examples; then
74 + rm sample-etc_dhcpc_dhcpcd-eth0.exe || die
75 + fi
76 +
77 + # Use sys-apps/iproute2 instead of sys-apps/net-tools
78 + use iproute2 && eapply "${FILESDIR}"/${P}-use_iproute2.patch
79 +
80 + default
81 +}
82 +
83 +src_install() {
84 + dobin ddclient
85 +
86 + newinitd "${FILESDIR}"/ddclient.initd-r5 ddclient
87 + systemd_newunit "${FILESDIR}"/ddclient.service-r1 ddclient
88 +
89 + insinto /etc/ddclient
90 + insopts -m 0600 -o ddclient -g ddclient
91 + newins sample-etc_ddclient.conf ddclient.conf
92 +
93 + newinitd "${FILESDIR}"/ddclient.initd-r5 ddclient
94 + systemd_dounit "${FILESDIR}"/ddclient.service
95 +
96 + dodoc Change* README* RELEASENOTE TODO UPGRADE
97 +
98 + if use examples; then
99 + docinto examples
100 + dodoc sample-*
101 + fi
102 +}
103
104 diff --git a/net-dns/ddclient/files/ddclient-3.9.0-use_iproute2.patch b/net-dns/ddclient/files/ddclient-3.9.0-use_iproute2.patch
105 new file mode 100644
106 index 00000000000..b57f78ba14e
107 --- /dev/null
108 +++ b/net-dns/ddclient/files/ddclient-3.9.0-use_iproute2.patch
109 @@ -0,0 +1,29 @@
110 +--- a/ddclient 2018-08-09 17:58:16.000000000 +0200
111 ++++ b/ddclient 2018-09-01 22:35:43.000000000 +0200
112 +@@ -710,7 +710,7 @@
113 + [ "ip", "=s", "-ip address : set the IP address to 'address'" ],
114 + "",
115 + [ "if", "=s", "-if interface : obtain IP address from 'interface'" ],
116 +- [ "if-skip", "=s", "-if-skip pattern : skip any IP addresses before 'pattern' in the output of ifconfig {if}" ],
117 ++ [ "if-skip", "=s", "-if-skip pattern : skip any IP addresses before 'pattern' in the output of ip addr show {if}" ],
118 + "",
119 + [ "web", "=s", "-web provider|url : obtain IP address from provider's IP checking page" ],
120 + [ "web-skip", "=s", "-web-skip pattern : skip any IP addresses before 'pattern' on the web provider|url" ],
121 +@@ -1448,7 +1448,7 @@
122 +
123 + {
124 + local $opt{'use'} = 'if';
125 +- foreach my $if (grep {/^[a-zA-Z]/} `ifconfig -a`) {
126 ++ foreach my $if (grep {/^[a-zA-Z]/} `ip addr show`) {
127 + $if =~ s/:?\s.*//is;
128 + local $opt{'if'} = $if;
129 + printf "use=if, if=%s address is %s\n", opt('if'), define(get_ip('if'), 'NOT FOUND');
130 +@@ -2165,7 +2165,7 @@
131 +
132 + } elsif ($use eq 'if') {
133 + $skip = opt('if-skip', $h) || '';
134 +- $reply = `ifconfig $arg 2> /dev/null`;
135 ++ $reply = `ip addr show $arg 2> /dev/null`;
136 + $reply = `ip addr list dev $arg 2> /dev/null` if $?;
137 + $reply = '' if $?;
138 +
139
140 diff --git a/net-dns/ddclient/files/ddclient.initd-r5 b/net-dns/ddclient/files/ddclient.initd-r5
141 new file mode 100644
142 index 00000000000..a2284a27c1f
143 --- /dev/null
144 +++ b/net-dns/ddclient/files/ddclient.initd-r5
145 @@ -0,0 +1,21 @@
146 +#!/sbin/openrc-run
147 +# Copyright 1999-2018 Gentoo Foundation
148 +# Distributed under the terms of the GNU General Public License v2
149 +
150 +name="DDclient"
151 +pidfile="/run/ddclient/${RC_SVCNAME}.pid"
152 +
153 +command="/usr/bin/ddclient"
154 +command_args="-pid ${pidfile}"
155 +command_group="ddclient"
156 +command_user="ddclient"
157 +
158 +depend() {
159 + use dns logger
160 +}
161 +
162 +start_pre() {
163 + checkpath -f -m 0600 -o ${command_user}:${command_group} /etc/ddclient/ddclient.conf
164 + checkpath -d -m 0700 -o ${command_user}:${command_group} /run/ddclient
165 + checkpath -d -m 0700 -o ${command_user}:${command_group} /var/cache/ddclient
166 +}
167
168 diff --git a/net-dns/ddclient/files/ddclient.service-r1 b/net-dns/ddclient/files/ddclient.service-r1
169 new file mode 100644
170 index 00000000000..77cc3f7aa5e
171 --- /dev/null
172 +++ b/net-dns/ddclient/files/ddclient.service-r1
173 @@ -0,0 +1,13 @@
174 +[Unit]
175 +After=network-online.target
176 +ConditionPathExists=/etc/ddclient/ddclient.conf
177 +Description=DDclient
178 +
179 +[Service]
180 +ExecStart=/usr/sbin/ddclient --foreground
181 +Group=ddclient
182 +Type=simple
183 +User=ddclient
184 +
185 +[Install]
186 +WantedBy=multi-user.target
187
188 diff --git a/net-dns/ddclient/metadata.xml b/net-dns/ddclient/metadata.xml
189 index e4faff9063a..4e40c4923a7 100644
190 --- a/net-dns/ddclient/metadata.xml
191 +++ b/net-dns/ddclient/metadata.xml
192 @@ -1,15 +1,32 @@
193 <?xml version="1.0" encoding="UTF-8"?>
194 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
195 <pkgmetadata>
196 - <maintainer type="person">
197 - <email>titanofold@g.o</email>
198 - <name>Aaron W. Swenson</name>
199 - </maintainer>
200 - <use>
201 - <flag name="cloudflare">Enable support for updating IP address via CloudFlare</flag>
202 - <flag name="hardened">Use iproute2 instead of ifconfig to grab an IP address</flag>
203 - </use>
204 - <upstream>
205 - <remote-id type="sourceforge">ddclient</remote-id>
206 - </upstream>
207 + <maintainer type="person">
208 + <email>titanofold@g.o</email>
209 + <name>Aaron W. Swenson</name>
210 + </maintainer>
211 + <maintainer type="person">
212 + <email>ck+gentoo@××××××××.de</email>
213 + <name>Conrad Kostecki</name>
214 + </maintainer>
215 + <maintainer type="project">
216 + <email>proxy-maint@g.o</email>
217 + <name>Proxy Maintainers</name>
218 + </maintainer>
219 + <use>
220 + <flag name="cloudflare">Enable support for updating IP address via CloudFlare</flag>
221 + <flag name="examples">Install various example files, like for cron.</flag>
222 + <flag name="hardened">Use iproute2 instead of ifconfig to grab an IP address</flag>
223 + <flag name="iproute2">Use <pkg>sys-apps/iproute2</pkg> instead of <pkg>sys-apps/net-tools</pkg> for interaction.</flag>
224 + </use>
225 + <longdescription>
226 + DDclient is a perl client used to update dynamic DNS entries
227 + for accounts on dynamic DNS network service providers.
228 + It has the capability to update more than just dynamic DNS
229 + and it can fetch WAN-IP-addresses in a few different ways.
230 + </longdescription>
231 + <upstream>
232 + <bugs-to>https://sourceforge.net/p/ddclient/bugs/</bugs-to>
233 + <remote-id type="sourceforge">ddclient</remote-id>
234 + </upstream>
235 </pkgmetadata>