4 . /usr/share/debconf/confmodule
6 # Guess default hostname
7 HOST=$( hostname -f || true )
8 if [ -z "$HOST" ]; then
12 db_get bacula-cn/hostname || true
13 if [ -z "$RET" ]; then
14 db_set bacula-cn/hostname "$HOST"
18 db_get bacula-cn/ip || true
19 if [ -z "$RET" ]; then
20 # default via 161.53.55.1 dev eth0
21 DEV=$( ip route show to exact 0/0 \
22 | awk '$1 == "default" && $4 == "dev" { print $5; nextfile }' )
24 # inet 161.53.55.202/24 brd 161.53.55.255 scope global eth0
25 IP=$( ip address show dev $DEV scope global \
26 | awk '$1 == "inet" { sub("/[^ ]+", ""); print $2; nextfile }' )
28 db_set bacula-cn/ip "$IP"
34 db_get bacula-cn/contact || true
35 if [ -z "$RET" ]; then
36 db_set bacula-cn/contact "Ime Prezime <korisnik@$HOST>"
41 ! db_input high bacula-cn/hostname && [ $? -eq 30 ] && break
44 db_get bacula-cn/hostname
45 [ -z "$RET" ] && continue
46 echo "$RET" | grep -Eqi '^[a-z0-9-]+(\.[a-z0-9.-]+)+$' || continue
53 ! db_input high bacula-cn/ip && [ $? -eq 30 ] && break
57 [ -z "$RET" ] && continue
58 echo "$RET" | grep -Eqi '^[0-9]{1,3}(\.[0-9]{1,3}){3}$' || continue
65 ! db_input high bacula-cn/contact && [ $? -eq 30 ] && break
68 db_get bacula-cn/contact
69 [ -z "$RET" ] && continue
70 echo "$RET" | grep -Eqi '^([^@]*<)?[a-z0-9.+-]+@[a-z0-9-]+(\.[a-z0-9.-]+)+>?$' || continue