upload tizen1.0 source
[pkgs/n/native-installer.git] / backend / scripts / extract_manifest.sh.in
1 #!/bin/sh
2 # extract metainfo/manifest to /var/pkgmgr/packagename/metainfo/manifest
3
4 E_WRONG_ARGS=5
5 E_FILE_NOT_FOUND=6
6 E_NO_MANIFEST=7
7 E_NOT_VALID_ARCHIVE=8
8 echo "package path is "$1"" > /tmp/nativescriptlog
9
10 CURDIR=`pwd`
11 echo "current dir is $CURDIR" >> /tmp/nativescriptlog
12
13 debug () {
14         echo ">>$DEBUG" >> /tmp/nativescriptlog
15 }
16
17 if [ $# -ne 1 ];then
18         DEBUG="Usage: extract_manifest.sh PKG_FILE";debug
19         exit $E_WRONG_ARGS
20 fi
21
22 if [ ! -f "$1" ];then
23         DEBUG="File not found";debug
24         exit $E_FILE_NOT_FOUND
25 fi
26
27 PKGFILEPATH="$1"
28 PKGFILENAME="${PKGFILEPATH##*/}"
29 CURDIR=`pwd`
30
31 TEMPDIR=/opt/ums/nativeinstaller/"$PKGFILENAME"-temp
32 echo "$TEMPDIR" >> /tmp/nativescriptlog
33
34 mkdir -p "$TEMPDIR"
35 echo "pkg file path = "$PKGFILEPATH"" >> /tmp/nativescriptlog
36 cp "$PKGFILEPATH" "$TEMPDIR"/
37 cd "$TEMPDIR"
38
39 filename=`ls`
40 echo "filename = "$filename"" >> /tmp/nativescriptlog
41
42 dpkg -e "$filename"
43 retval=$?
44 echo "retval = $retval" >> /tmp/nativescriptlog
45
46 if [ $retval -ne 0 ];then
47         DEBUG="archive Not correct";debug
48         cd $CURDIR
49         exit $E_NOT_VALID_ARCHIVE
50 fi
51
52 CHECK_MANIFEST=`ls ./DEBIAN | grep control/*`
53 echo $CHECK_MANIFEST >> /tmp/nativescriptlog
54 if [ "$CHECK_MANIFEST" != "control" ];then
55         DEBUG="No manifest";debug
56         cd $CURDIR
57         rm -rf "$TEMPDIR"
58         exit $E_NO_MANIFEST
59 fi
60
61 mkdir -p /var/pkgmgr/"$PKGFILENAME"/metainfo
62 mv ./DEBIAN/"$CHECK_MANIFEST" /var/pkgmgr/"$PKGFILENAME"/metainfo
63 cd $CURDIR
64 rm -rf "$TEMPDIR"