Merge branch 'org.openembedded.dreambox' of git://git.opendreambox.org/git/fraxinas...
[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 twisted-web2 aio-grab"
20 OPENDREAMBOX_EXPERIMENTAL_R = "enigma2-plugin-systemplugins-frontprocessorupgrade \
21         enigma2-plugin-systemplugins-softwareupdate \
22         enigma2-plugin-systemplugins-positionersetup \
23         enigma2-plugin-extensions-cutlisteditor \
24         enigma2-plugin-systemplugins-configurationbackup \
25         enigma2-plugin-systemplugins-satfinder \
26         enigma2-plugin-systemplugins-videotune \
27         enigma2-plugin-extensions-mediascanner \
28         enigma2-plugin-extensions-webinterface \
29         enigma2-plugin-extensions-graphmultiepg \
30         enigma2-plugin-systemplugins-skinselector \
31         enigma2-plugin-extensions-pictureplayer \
32         enigma2-plugin-extensions-mediaplayer \
33         enigma2-plugin-systemplugins-hotplug \
34         enigma2-plugin-systemplugins-networkwizard \
35         enigma2-streamproxy ethtool \
36         enigma2-defaultservices \
37         twisted-web2 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"
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}"
105 OPENDREAMBOX_COMMON_MACHINE_R_dm600pvr += "${OPENDREAMBOX_TUXBOX_R} ${MODEM_SUPPORT_R} dreambox-blindscan-utils"
106 OPENDREAMBOX_COMMON_MACHINE_D_dm600pvr += "${OPENDREAMBOX_TUXBOX_D}"
107
108 OPENDREAMBOX_COMMON_MACHINE_dm500plus += "${OPENDREAMBOX_V2_ONLY} ${OPENDREAMBOX_TUXBOX} ${MODEM_SUPPORT}"
109 OPENDREAMBOX_COMMON_MACHINE_R_dm500plus += "${OPENDREAMBOX_TUXBOX_R} ${MODEM_SUPPORT_R} dreambox-blindscan-utils"
110 OPENDREAMBOX_COMMON_MACHINE_D_dm500plus += "${OPENDREAMBOX_TUXBOX_D}"
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 OPENDREAMBOX_COMMON_MACHINE_D_dm800 += ""
123
124 OPENDREAMBOX_COMMON_MACHINE_dm8000 += "${OPENDREAMBOX_V3_ONLY} ${OPENDREAMBOX_EXPERIMENTAL} ${WLAN_SUPPORT} ${WLAN_MADWIFI}"
125 OPENDREAMBOX_COMMON_MACHINE_R_dm8000 += "${OPENDREAMBOX_EXPERIMENTAL_R} \
126         ${WLAN_SUPPORT_R} ${WLAN_MADWIFI_R} ${DVDPLAYER_SUPPORT_R} \
127         ${DVDBURN_SUPPORT_R}  enigma2-plugin-systemplugins-videomode \
128         ${CDPLAYER_SUPPORT_R}"
129 OPENDREAMBOX_COMMON_MACHINE_D_dm8000 += ""
130
131 # collect the stuff into OPENDREAMBOX_COMMON
132 OPENDREAMBOX_COMMON += " ${OPENDREAMBOX_COMMON_MACHINE}"
133 OPENDREAMBOX_COMMON_R += " ${OPENDREAMBOX_COMMON_MACHINE_R}"
134 OPENDREAMBOX_COMMON_D += " ${OPENDREAMBOX_COMMON_MACHINE_D}"
135
136 # add bootstrap stuff
137 DEPENDS = "${OPENDREAMBOX_COMMON} ${BOOTSTRAP_EXTRA_DEPENDS} ${OPENDREAMBOX_COMMON_D}"
138 RDEPENDS = "${OPENDREAMBOX_COMMON} ${BOOTSTRAP_EXTRA_RDEPENDS} ${OPENDREAMBOX_COMMON_R}"
139
140 # we don't want any locales, at least not in the common way.
141 IMAGE_LINGUAS = " "
142
143 export IPKG_INSTALL = '${RDEPENDS}'
144
145 inherit image_ipk
146
147 export NFO = '${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.nfo'
148
149 do_rootfs_append() {
150         VER=`grep Version: "${IMAGE_ROOTFS}/usr/lib/ipkg/info/enigma2.control" | cut -b 10-12`
151         printf "Enigma2: Experimental ${VER}\n" > ${NFO}
152         printf "Machine: Dreambox ${MACHINE}\n" >> ${NFO}
153         DATE=`date +%Y-%m-%d' '%H':'%M`
154         printf "Date: ${DATE}\n" >> ${NFO}
155         printf "Issuer: Dream Multimedia TV\n" >> ${NFO}
156         VER=`echo ${DISTRO_VERSION} | cut -b 1-3`
157         printf "Link: http://dreamboxupdate.com/${DISTRO}/${VER}/${MACHINE}/experimental\n" >> ${NFO}
158         if [ "${DESC}" != "" ]; then
159                 printf "Description: ${DESC}\n" >> ${NFO}
160                 printf "${DESC}\n" >> ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.desc
161         fi
162         MD5SUM=`md5sum ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.nfi | cut -b 1-32`
163         printf "MD5: ${MD5SUM}\n" >> ${NFO}
164 }