Change FEED_URI handling to store feeds in /etc/ipkg/*-feed.conf. Allow distribution...
[vuplus_openembedded] / meta / opie-image.oe
1 export IMAGE_BASENAME = "opie-image"
2 export IMAGE_LINGUAS = ""
3
4 # The included feeds are choosen by ${DISTRO}
5 export FEED_URIS_openzaurus = "OZ-3.5.1##http://openzaurus.org/official/unstable/3.5.1/feed/ \
6                                OZ-Upgrades##http://openzaurus.org/official/unstable/3.5.1/upgrades/"
7
8 export FEED_URIS_familiar = "OZ-3.5.1##http://openzaurus.org/official/unstable/3.5.1/feed/ \
9                              OZ-Upgrades##http://openzaurus.org/official/unstable/3.5.1/upgrades/"
10
11 PR = "r2"
12
13 include opie-collections.oe
14
15 #
16 # Putting it altogether. Better state IPKG_INSTALL and DEPENDS twice, because library names != package names.
17 #
18
19 export IPKG_INSTALL = "task-bootstrap ${OPIE_LIBS_RDEPENDS} ${OPIE_BASE} ${OPIE_BASE_APPLETS} \
20                        ${OPIE_BASE_SETTINGS} ${OPIE_BASE_APPS} ${OPIE_BASE_RDEPENDS} \
21                        ${OPIE_PIM} ${OPIE_EXTRA_APPLETS} ${OPIE_EXTRA_SETTINGS} \
22                        ${OPIE_EXTRA_APPS} ${OPIE_BASE_STYLES} ${OPIE_BASE_DECOS} \
23                        ${OPIE_BASE_INPUTMETHODS}"
24  
25 DEPENDS = "task-bootstrap ${OPIE_LIBS_DEPENDS} ${OPIE_BASE} ${OPIE_BASE_APPLETS} \
26             ${OPIE_BASE_SETTINGS}  ${OPIE_BASE_APPS} ${OPIE_BASE_DEPENDS} ${OPIE_PIM} \
27             ${OPIE_EXTRA_APPLETS} ${OPIE_EXTRA_SETTINGS} ${OPIE_EXTRA_APPS} \
28             ${OPIE_BASE_STYLES} ${OPIE_BASE_DECOS} ${OPIE_BASE_INPUTMETHODS}"
29
30 # merge feed-sources into ipkg.conf for opie-aqpkg as it can't handle feed-sources outside of ipkg.conf.
31 merge_feeds() {
32
33         # comment out existing feed-sources inserted by ipkg-collateral
34         cat ${IMAGE_ROOTFS}/etc/ipkg.conf | sed "s/^src\ /#src\ /" > ${IMAGE_ROOTFS}/etc/ipkg.conf_
35         rm ${IMAGE_ROOTFS}/etc/ipkg.conf && mv ${IMAGE_ROOTFS}/etc/ipkg.conf_ ${IMAGE_ROOTFS}/etc/ipkg.conf
36         
37         # extract, then delete destinations
38         cat ${IMAGE_ROOTFS}/etc/ipkg.conf | egrep "^dest\ " > ${IMAGE_ROOTFS}/etc/ipkg.conf.dest
39         cat ${IMAGE_ROOTFS}/etc/ipkg.conf | egrep -v "^dest\ " > ${IMAGE_ROOTFS}/etc/ipkg.conf_
40         rm ${IMAGE_ROOTFS}/etc/ipkg.conf && mv ${IMAGE_ROOTFS}/etc/ipkg.conf_ ${IMAGE_ROOTFS}/etc/ipkg.conf
41
42
43         for line in ${FEED_URIS}
44         do
45                 # strip leading and trailing spaces/tabs, then split into name and uri
46                 line_clean="`echo "$line"|sed 's/^[ \t]*//;s/[ \t]*$//'`"
47                 feed_name="`echo "$line_clean" | sed -n 's/\(.*\)##\(.*\)/\1/p'`"
48                 feed_uri="`echo "$line_clean" | sed -n 's/\(.*\)##\(.*\)/\2/p'`"                
49
50                 # insert new feed-sources
51                 echo "src $feed_name $feed_uri" >> ${IMAGE_ROOTFS}/etc/ipkg.conf
52         done
53         
54         # remove temporary files and rebuild ipkg.conf
55         echo "" >> ${IMAGE_ROOTFS}/etc/ipkg.conf
56         cat ${IMAGE_ROOTFS}/etc/ipkg.conf.dest >> ${IMAGE_ROOTFS}/etc/ipkg.conf
57         rm ${IMAGE_ROOTFS}/etc/ipkg.conf.dest
58         
59         # remove -feed.conf files which are no longer needed
60         cd ${IMAGE_ROOTFS}/etc/ipkg/ && rm -- *-feed.conf                               
61 }
62
63
64 # zap the root password
65 #IMAGE_POSTPROCESS_COMMAND = "zap_root_password"
66
67 # merge feed-sources into ipkg.conf
68 IMAGE_PREPROCESS_COMMAND = "merge_feeds"
69
70 inherit image_ipk
71
72