1205971d76ea43dff7c5caf5261374ec9cdee9c6
[vuplus_openembedded] / packages / images / dreambox-image.bb
1 export IMAGE_BASENAME = "dreambox-image"
2
3 OPENDREAMBOX_COMMON = "base-files busybox \
4         ipkg initscripts-opendreambox sysvinit netbase dropbear \
5         base-passwd ncurses joe mc vsftpd timezones-alternative \
6         netkit-base fakelocale less dreambox-bootlogo  \
7         dreambox-dccamd dreambox-keymaps tuxbox-image-info dvbsnoop \
8         dreambox-compat tuxbox-common mrouted smartmontools hddtemp \
9         hotplug-ng autofs"
10
11 OPENDREAMBOX_COMMON_D = "util-linux e2fsprogs \
12         ppp module-init-tools samba"
13
14 OPENDREAMBOX_COMMON_R = "util-linux-sfdisk util-linux-fdisk e2fsprogs-mke2fs \
15         e2fsprogs-e2fsck ppp module-init-tools-depmod \
16         base-files-doc sambaserver avahi-daemon"
17
18 # experimental packages
19 OPENDREAMBOX_EXPERIMENTAL = "enigma2 tuxbox-tuxtxt-32bpp twisted aio-grab enigma2-skins"
20 OPENDREAMBOX_EXPERIMENTAL_R = "enigma2-plugin-systemplugins-frontprocessorupgrade \
21         enigma2-plugin-systemplugins-cleanupwizard \
22         enigma2-plugin-systemplugins-crashlogautosubmit \
23         enigma2-plugin-systemplugins-softwaremanager \
24         enigma2-plugin-systemplugins-positionersetup \
25         enigma2-plugin-extensions-cutlisteditor \
26         enigma2-plugin-systemplugins-satfinder \
27         enigma2-plugin-systemplugins-videotune \
28         enigma2-plugin-extensions-mediascanner \
29         enigma2-plugin-extensions-webinterface \
30         enigma2-plugin-extensions-graphmultiepg \
31         enigma2-plugin-systemplugins-skinselector \
32         enigma2-plugin-extensions-pictureplayer \
33         enigma2-plugin-extensions-mediaplayer \
34         enigma2-plugin-systemplugins-hotplug \
35         enigma2-streamproxy ethtool \
36         enigma2-defaultservices \
37         twisted python-crypt python-crypto \
38         python-netserver python-pickle dreambox-blindscan-utils"
39
40 # legacy tuxbox stuff (enigma, plugins, ...)
41 OPENDREAMBOX_TUXBOX = "enigma ipkgpl"
42 OPENDREAMBOX_TUXBOX_D = "tuxbox-plugins tuxbox-plugins-enigma links-dream"
43 OPENDREAMBOX_TUXBOX_R = " \
44         tuxbox-plugin-snake     tuxbox-plugin-tuxmail \
45         tuxbox-plugin-lcdcirc   tuxbox-plugin-soko      tuxbox-plugin-tuxtxt \
46         tuxbox-plugin-sol       tuxbox-plugin-vierg     tuxbox-plugin-master \
47         tuxbox-plugin-solitair  tuxbox-plugin-yahtzee   tuxbox-plugin-mines  \
48         tuxbox-plugin-tank      tuxbox-plugin-pacman    tuxbox-plugin-tetris \
49         tuxbox-plugin-satfind   tuxbox-plugin-tuxcom    links-dream-plugin \
50         links-dream-plugin enigma-plugin-dreamdata"
51
52 OPENDREAMBOX_TUXBOX_R_dm600pvr = " \
53         tuxbox-plugin-snake     tuxbox-plugin-tuxmail \
54         tuxbox-plugin-soko      tuxbox-plugin-tuxtxt \
55         tuxbox-plugin-sol       tuxbox-plugin-vierg     tuxbox-plugin-master \
56         tuxbox-plugin-solitair  tuxbox-plugin-yahtzee   tuxbox-plugin-mines  \
57         tuxbox-plugin-tank      tuxbox-plugin-pacman    tuxbox-plugin-tetris \
58         tuxbox-plugin-tuxcom    links-dream-plugin      enigma-blindscan"
59
60 OPENDREAMBOX_TUXBOX_R_dm500plus = " \
61         tuxbox-plugin-snake     tuxbox-plugin-tuxmail \
62         tuxbox-plugin-soko      tuxbox-plugin-tuxtxt \
63         tuxbox-plugin-sol       tuxbox-plugin-vierg     tuxbox-plugin-master \
64         tuxbox-plugin-solitair  tuxbox-plugin-yahtzee   tuxbox-plugin-mines  \
65         tuxbox-plugin-tank      tuxbox-plugin-pacman    tuxbox-plugin-tetris \
66         tuxbox-plugin-tuxcom    links-dream-plugin      enigma-blindscan"
67
68 # dvb api specific stuff
69 OPENDREAMBOX_V2_ONLY = "dreambox-dvb-tools tuxbox-stream"
70 OPENDREAMBOX_V3_ONLY = "dreambox-dvb-tools-v3 sctzap dvbtraffic"
71
72 # enigma languages
73 # disabled: enigma-locale-ar enigma-locale-sr enigma-locale-ur
74 ENIGMA_LANGUAGE = "enigma-locale-cs enigma-locale-da \
75         enigma-locale-de enigma-locale-el enigma-locale-es enigma-locale-et \
76         enigma-locale-fi enigma-locale-fr enigma-locale-hr enigma-locale-hu \
77         enigma-locale-is enigma-locale-it enigma-locale-lt enigma-locale-nl \
78         enigma-locale-no enigma-locale-pl enigma-locale-pt enigma-locale-ro \
79         enigma-locale-ru enigma-locale-sk enigma-locale-sl \
80         enigma-locale-sv enigma-locale-tr"
81
82 OPENDREAMBOX_TUXBOX_R += " ${ENIGMA_LANGUAGE}"
83 OPENDREAMBOX_TUXBOX_R_dm600pvr += " ${ENIGMA_LANGUAGE}"
84 OPENDREAMBOX_TUXBOX_R_dm500plus += " ${ENIGMA_LANGUAGE}"
85
86 MODEM_SUPPORT = "enigma-modem"
87 MODEM_SUPPORT_R = "kernel-module-crc-ccitt kernel-module-ppp-async \
88         kernel-module-ppp-generic \
89         kernel-module-slhc update-modules"
90
91 WLAN_SUPPORT = "wireless-tools wlan-rt73 zd1211b wpa-supplicant"
92 WLAN_SUPPORT_R = "enigma2-plugin-systemplugins-wirelesslan      enigma2-plugin-systemplugins-networkwizard"
93
94 WLAN_MADWIFI = "madwifi-ng"
95 WLAN_MADWIFI_R = "madwifi-ng-modules madwifi-ng-tools"
96
97 DVDPLAYER_SUPPORT_R = "enigma2-plugin-extensions-dvdplayer"
98
99 DVDBURN_SUPPORT_R = "enigma2-plugin-extensions-dvdburn dvd+rw-tools dvdauthor mjpegtools cdrkit python-imaging projectx"
100
101 CDPLAYER_SUPPORT_R = "kernel-module-cdfs libcddb libcdio enigma2-plugin-extensions-cdinfo"
102
103 # now machine specific:
104 OPENDREAMBOX_COMMON_MACHINE_dm600pvr += "${OPENDREAMBOX_V2_ONLY} ${OPENDREAMBOX_TUXBOX} ${MODEM_SUPPORT} enigma-genuine-dreambox"
105 OPENDREAMBOX_COMMON_MACHINE_R_dm600pvr += "${OPENDREAMBOX_TUXBOX_R} ${MODEM_SUPPORT_R} dreambox-blindscan-utils"
106 OPENDREAMBOX_COMMON_MACHINE_D_dm600pvr += "${OPENDREAMBOX_TUXBOX_D} dreambox-tpmd"
107
108 OPENDREAMBOX_COMMON_MACHINE_dm500plus += "${OPENDREAMBOX_V2_ONLY} ${OPENDREAMBOX_TUXBOX} ${MODEM_SUPPORT} enigma-genuine-dreambox"
109 OPENDREAMBOX_COMMON_MACHINE_R_dm500plus += "${OPENDREAMBOX_TUXBOX_R} ${MODEM_SUPPORT_R} dreambox-blindscan-utils"
110 OPENDREAMBOX_COMMON_MACHINE_D_dm500plus += "${OPENDREAMBOX_TUXBOX_D} dreambox_tpmd"
111
112 OPENDREAMBOX_COMMON_MACHINE_dm7020 += "${OPENDREAMBOX_V2_ONLY} ${OPENDREAMBOX_TUXBOX} ${MODEM_SUPPORT}"
113 OPENDREAMBOX_COMMON_MACHINE_R_dm7020 += "${OPENDREAMBOX_TUXBOX_R} ${MODEM_SUPPORT_R}"
114 OPENDREAMBOX_COMMON_MACHINE_D_dm7020 += "${OPENDREAMBOX_TUXBOX_D}"
115
116 OPENDREAMBOX_COMMON_MACHINE_dm7025 += "${OPENDREAMBOX_V3_ONLY} ${OPENDREAMBOX_EXPERIMENTAL} ${WLAN_SUPPORT}"
117 OPENDREAMBOX_COMMON_MACHINE_R_dm7025 += "${OPENDREAMBOX_EXPERIMENTAL_R} ${WLAN_SUPPORT_R}"
118 OPENDREAMBOX_COMMON_MACHINE_D_dm7025 += ""
119
120 OPENDREAMBOX_COMMON_MACHINE_dm800 += "${OPENDREAMBOX_V3_ONLY} ${OPENDREAMBOX_EXPERIMENTAL} ${WLAN_SUPPORT}"
121 OPENDREAMBOX_COMMON_MACHINE_R_dm800 += "${OPENDREAMBOX_EXPERIMENTAL_R} ${WLAN_SUPPORT_R} enigma2-plugin-systemplugins-videomode \
122         enigma2-plugin-extensions-genuinedreambox"
123 OPENDREAMBOX_COMMON_MACHINE_D_dm800 += "dreambox-tpmd"
124
125 OPENDREAMBOX_COMMON_MACHINE_dm500hd += "${OPENDREAMBOX_V3_ONLY} ${OPENDREAMBOX_EXPERIMENTAL}"
126 OPENDREAMBOX_COMMON_MACHINE_R_dm500hd += "${OPENDREAMBOX_EXPERIMENTAL_R} enigma2-plugin-systemplugins-videomode \
127         enigma2-plugin-extensions-genuinedreambox"
128 OPENDREAMBOX_COMMON_MACHINE_D_dm500hd += "dreambox-tpmd"
129
130 OPENDREAMBOX_COMMON_MACHINE_dm8000 += "${OPENDREAMBOX_V3_ONLY} ${OPENDREAMBOX_EXPERIMENTAL} ${WLAN_SUPPORT} ${WLAN_MADWIFI}"
131 OPENDREAMBOX_COMMON_MACHINE_R_dm8000 += "${OPENDREAMBOX_EXPERIMENTAL_R} \
132         ${WLAN_SUPPORT_R} ${WLAN_MADWIFI_R} ${DVDPLAYER_SUPPORT_R} \
133         ${DVDBURN_SUPPORT_R} enigma2-plugin-systemplugins-videomode \
134         ${CDPLAYER_SUPPORT_R} enigma2-plugin-systemplugins-commoninterfaceassignment \
135         enigma2-plugin-extensions-genuinedreambox"
136 OPENDREAMBOX_COMMON_MACHINE_D_dm8000 += "dreambox-tpmd"
137
138 # collect the stuff into OPENDREAMBOX_COMMON
139 OPENDREAMBOX_COMMON += " ${OPENDREAMBOX_COMMON_MACHINE}"
140 OPENDREAMBOX_COMMON_R += " ${OPENDREAMBOX_COMMON_MACHINE_R}"
141 OPENDREAMBOX_COMMON_D += " ${OPENDREAMBOX_COMMON_MACHINE_D}"
142
143 # add bootstrap stuff
144 DEPENDS = "${OPENDREAMBOX_COMMON} ${BOOTSTRAP_EXTRA_DEPENDS} ${OPENDREAMBOX_COMMON_D}"
145 RDEPENDS = "${OPENDREAMBOX_COMMON} ${BOOTSTRAP_EXTRA_RDEPENDS} ${OPENDREAMBOX_COMMON_R}"
146
147 # we don't want any locales, at least not in the common way.
148 IMAGE_LINGUAS = " "
149
150 export IPKG_INSTALL = '${RDEPENDS}'
151
152 inherit image_ipk
153
154 export NFO = '${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.nfo'
155
156 do_rootfs_append() {
157         VER=`grep Version: "${IMAGE_ROOTFS}/usr/lib/ipkg/info/enigma2.control" | cut -b 10-12`
158         printf "Enigma2: Experimental ${VER}\n" > ${NFO}
159         printf "Machine: Dreambox ${MACHINE}\n" >> ${NFO}
160         DATE=`date +%Y-%m-%d' '%H':'%M`
161         printf "Date: ${DATE}\n" >> ${NFO}
162         printf "Issuer: Dream Multimedia TV\n" >> ${NFO}
163         VER=`echo ${DISTRO_VERSION} | cut -b 1-3`
164         printf "Link: http://dreamboxupdate.com/${DISTRO}/${VER}/${MACHINE}/experimental\n" >> ${NFO}
165         if [ "${DESC}" != "" ]; then
166                 printf "Description: ${DESC}\n" >> ${NFO}
167                 printf "${DESC}\n" >> ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.desc
168         fi
169         MD5SUM=`md5sum ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.nfi | cut -b 1-32`
170         printf "MD5: ${MD5SUM}\n" >> ${NFO}
171 }