Commit | Line | Data |
---|---|---|
e96e0fec | 1 | #!/bin/bash |
0730b8e5 H |
2 | gtk-gnutella-listen-port() { |
3 | grep listen_port ~/.gtk-gnutella/config_gnet | grep -o [0-9]* | head -n 1; | |
4 | } | |
5 | ||
6 | gtk-gnutella-upnpc() { | |
7 | upnpc="$(which upnpc)"; | |
8 | test "$(echo $@ | grep -o [0-9]* | head -n 1)" -gt 1 || upnpc=true; | |
9 | "$upnpc" $@ > ~/.gtk-gnutella/upnpc.log; | |
10 | } | |
11 | ||
12 | gtk-gnutella-upnp-daemon() { | |
13 | sleep 1; | |
14 | echo ======= gtk-gnutella-upnp-daemon started ======== | |
15 | while pgrep -x gtk-gnutella -u "$UID" >/dev/null; do | |
16 | gnet_port="$(gtk-gnutella-listen-port)"; | |
17 | gtk-gnutella-upnpc -r "$gnet_port" TCP "$gnet_port" UDP; | |
18 | sleep 60; | |
19 | done; | |
20 | echo Shutting down gtk-gnutella-upnp-daemon... | |
21 | gnet_port="$(gtk-gnutella-listen-port)"; | |
22 | gtk-gnutella-upnpc -d "$gnet_port" TCP "$gnet_port" UDP; | |
23 | echo ======= gtk-gnutella-upnp-daemon exited ======== | |
24 | } | |
25 | ||
26 | gtk-gnutella-upnp-daemon & | |
27 | gtk-gnutella $@; echo; | |
28 | pkill -x sleep -P $!; | |
29 | wait $!; |