diff options
Diffstat (limited to 'debian/config')
-rwxr-xr-x | debian/config | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/debian/config b/debian/config index 3a04813d..9bb78237 100755 --- a/debian/config +++ b/debian/config @@ -1,17 +1,23 @@ #!/bin/sh -e . /usr/share/debconf/confmodule +[ -f /etc/default/bitlbee ] && . /etc/default/bitlbee db_title BitlBee -db_get bitlbee/serveport -if [ "$RET" = "stillhavetoask" ]; then - if netstat -ltn | grep ':6667' 2> /dev/null > /dev/null; then - port=6668; - else - port=6667; +if [ -n "$BITLBEE_PORT" ]; then + db_set bitlbee/serveport "$BITLBEE_PORT" +else + db_get bitlbee/serveport + if [ "$RET" = "stillhavetoask" ]; then + listens=$(netstat -ltn | awk '{print $4}') + for port in 6667 6666 6668 6669; do + if [ $(expr "$listens " : ".*:$port\s") = "0" ]; then + break + fi + done + db_set bitlbee/serveport $port; fi - db_set bitlbee/serveport $port; fi if db_input medium bitlbee/serveport; then |