let ipkg fail when a package file to be installed is not found
[openwrt.git] / openwrt / package / quagga / ipkg / quagga.postinst
1 #!/bin/sh
2
3 name=quagga
4 id=51
5 dir=/var/run/quagga
6
7 # do not change below
8 # check if we are on real system
9 if [ -z "${IPKG_INSTROOT}" ]; then
10         # create copies of passwd and group, if we use squashfs
11         rootfs=`mount |awk '/root/ { print $5 }'`
12         if [ "$rootfs" = "squashfs" ]; then
13                 if [ -h /etc/group ]; then
14                         rm /etc/group
15                         cp /rom/etc/group /etc/group
16                 fi
17                 if [ -h /etc/passwd ]; then
18                         rm /etc/passwd
19                         cp /rom/etc/passwd /etc/passwd
20                 fi
21         fi
22 fi
23
24 echo ""
25 if [ -z "$(grep ^\\${name}: ${IPKG_INSTROOT}/etc/group)" ]; then 
26         echo "adding group $name to /etc/group"
27         echo "${name}:x:${id}:" >> ${IPKG_INSTROOT}/etc/group  
28 fi
29
30 if [ -z "$(grep ^\\${name}: ${IPKG_INSTROOT}/etc/passwd)" ]; then 
31         echo "adding user $name to /etc/passwd"
32         echo "${name}:x:${id}:${id}:${name}:/tmp/.${name}:/bin/false" >> ${IPKG_INSTROOT}/etc/passwd
33 fi
34
35 grep -q '^zebra[[:space:]]*2601/tcp' ${IPKG_INSTROOT}/etc/services 2>/dev/null
36 if [ $? -ne 0 ]; then  
37 echo "zebrasrv      2600/tcp" >>${IPKG_INSTROOT}/etc/services
38 echo "zebra         2601/tcp" >>${IPKG_INSTROOT}/etc/services
39 echo "ripd          2602/tcp" >>${IPKG_INSTROOT}/etc/services
40 echo "ripngd        2603/tcp" >>${IPKG_INSTROOT}/etc/services
41 echo "ospfd         2604/tcp" >>${IPKG_INSTROOT}/etc/services
42 echo "bgpd          2605/tcp" >>${IPKG_INSTROOT}/etc/services
43 echo "ospf6d        2606/tcp" >>${IPKG_INSTROOT}/etc/services
44 echo "ospfapi       2607/tcp" >>${IPKG_INSTROOT}/etc/services
45 echo "isisd         2608/tcp" >>${IPKG_INSTROOT}/etc/services
46 fi
47
48 chown -R $name:$name $dir