Merge commit 'origin/opendreambox-1.6' into test
[vuplus_openembedded] / recipes / base-files / base-files_3.0.14.bb
1 DESCRIPTION = "Miscellaneous files for the base system."
2 SECTION = "base"
3 PRIORITY = "required"
4 PR = "r91"
5 PR_vuplus = "r58"
6
7 LICENSE = "GPL"
8
9 SRC_URI = " \
10            file://nsswitch.conf \
11            file://motd \
12            file://inputrc \
13            file://host.conf \
14            file://profile \
15            file://fstab \
16            file://filesystems \
17            file://issue.net \
18            file://issue \
19            file://usbd \
20            file://share/dot.bashrc \
21            file://share/dot.profile \
22            file://licenses/BSD \
23            file://licenses/GPL-2 \
24            file://licenses/GPL-3 \
25            file://licenses/LGPL-2 \
26            file://licenses/LGPL-2.1 \
27            file://licenses/LGPL-3 \
28            file://licenses/GFDL-1.2 \
29            file://licenses/Artistic "
30 SRC_URI_vuplus = " \
31            file://nsswitch.conf \
32            file://motd \
33            file://inputrc \
34            file://host.conf \
35            file://profile \
36            file://fstab \
37            file://filesystems \
38            file://issue.net \
39            file://issue \
40            file://usbd \
41            file://share/dot.bashrc \
42            file://share/dot.profile \
43            file://licenses/BSD \
44            file://licenses/GPL-2 \
45            file://licenses/LGPL-2 \
46            file://licenses/LGPL-2.1 \
47            file://licenses/Artistic "
48 S = "${WORKDIR}"
49
50 docdir_append = "/${P}"
51 dirs1777 = "/tmp ${localstatedir}/volatile/lock ${localstatedir}/volatile/tmp"
52 dirs1777_vuplus = "/tmp ${localstatedir}/lock ${localstatedir}/tmp"
53 dirs2775 = "/home ${prefix}/src ${localstatedir}/local"
54 dirs755 = "/bin /boot /dev ${sysconfdir} ${sysconfdir}/default \
55            ${sysconfdir}/skel /lib /mnt /proc /home/root /sbin \
56            ${prefix} ${bindir} ${docdir} /usr/games ${includedir} \
57            ${libdir} ${sbindir} ${datadir} \
58            ${datadir}/common-licenses ${datadir}/dict ${infodir} \
59            ${mandir} ${datadir}/misc ${localstatedir} \
60            ${localstatedir}/backups ${localstatedir}/lib \
61            /sys ${localstatedir}/lib/misc ${localstatedir}/spool \
62            ${localstatedir}/volatile ${localstatedir}/volatile/cache \
63            ${localstatedir}/volatile/lock/subsys \
64            ${localstatedir}/volatile/log \
65            ${localstatedir}/volatile/run \
66            /mnt /media /media/card /media/cf /media/net /media/ram \
67            /media/union /media/realroot /media/hdd \
68            /media/mmc1"
69 dirs755_vuplus = "/bin /boot /dev ${sysconfdir} ${sysconfdir}/default \
70            ${sysconfdir}/skel /lib /mnt /proc /home/root /sbin \
71            ${prefix} ${bindir} ${docdir} /usr/games ${includedir} \
72            ${libdir} ${sbindir} ${datadir} \
73            ${datadir}/common-licenses ${datadir}/dict ${infodir} \
74            ${mandir} ${datadir}/misc ${localstatedir} \
75            ${localstatedir}/backups ${localstatedir}/cache \
76            ${localstatedir}/lib /sys ${localstatedir}/lib/misc \
77            ${localstatedir}/lock/subsys ${localstatedir}/log \
78            ${localstatedir}/run ${localstatedir}/spool \
79            /mnt /media /media/card /media/cf /media/net /media/ram \
80            /media/union /media/realroot /media/hdd \
81            /media/mmc1"
82 dirs755_micro = "/dev /proc /sys ${sysconfdir}"
83 dirs2775_micro = ""
84 dirs1777_micro = "/tmp"
85
86 media = "card cf net ram"
87 media_micro = ""
88
89 volatiles = "cache run log lock tmp"
90 conffiles = "${sysconfdir}/debian_version ${sysconfdir}/host.conf \
91              ${sysconfdir}/inputrc ${sysconfdir}/issue /${sysconfdir}/issue.net \
92              ${sysconfdir}/nsswitch.conf ${sysconfdir}/profile \
93              ${sysconfdir}/default"
94
95 #
96 # set standard hostname, might be a candidate for a DISTRO variable? :M:
97 #
98 hostname = "openembedded"
99 hostname_slugos = "nslu2"
100 hostname_mnci = "MNCI"
101 hostname_rt3000 = "MNRT"
102 hostname_jlime = "JLime"
103
104 do_install () {
105         for d in ${dirs755}; do
106                 install -m 0755 -d ${D}$d
107         done
108         for d in ${dirs1777}; do
109                 install -m 1777 -d ${D}$d
110         done
111         for d in ${dirs2775}; do
112                 install -m 2755 -d ${D}$d
113         done
114         for d in ${volatiles}; do
115                 if [ -d ${D}${localstatedir}/volatile/$d ]; then
116                         ln -sf volatile/$d ${D}/${localstatedir}/$d
117                 fi
118         done
119         for d in ${media}; do
120                 ln -sf /media/$d ${D}/mnt/$d
121         done
122
123         if [ -n "${MACHINE}" -a "${hostname}" = "openembedded" ]; then
124                 echo ${MACHINE} > ${D}${sysconfdir}/hostname
125         else
126                 echo ${hostname} > ${D}${sysconfdir}/hostname
127         fi
128
129         if [ "${DISTRO}" != "micro" -a "${DISTRO}" != "micro-uclibc" ]; then
130                 install -m 644 ${WORKDIR}/issue*  ${D}${sysconfdir}  
131
132                 if [ -n "${DISTRO_NAME}" ]; then
133                         echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
134                         echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
135                         if [ -n "${DISTRO_VERSION}" ]; then
136                                 echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue
137                                 echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue.net
138                         fi
139                         echo "\n \l" >> ${D}${sysconfdir}/issue
140                         echo >> ${D}${sysconfdir}/issue
141                         echo "%h"    >> ${D}${sysconfdir}/issue.net
142                         echo >> ${D}${sysconfdir}/issue.net
143                 else
144                         install -m 0644 ${WORKDIR}/issue ${D}${sysconfdir}/issue
145                         install -m 0644 ${WORKDIR}/issue.net ${D}${sysconfdir}/issue.net
146                 fi
147
148                 install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab
149                 install -m 0644 ${WORKDIR}/filesystems ${D}${sysconfdir}/filesystems
150                 install -m 0644 ${WORKDIR}/usbd ${D}${sysconfdir}/default/usbd
151                 install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile
152                 install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile
153                 install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
154                 install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
155                 install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
156                 for license in BSD GPL-2 LGPL-2 LGPL-2.1 Artistic GPL-3 LGPL-3 GFDL-1.2; do
157                         install -m 0644 ${WORKDIR}/licenses/$license ${D}${datadir}/common-licenses/
158                 done
159
160                 ln -sf /proc/mounts ${D}${sysconfdir}/mtab
161                 install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf
162         fi
163
164         install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
165 }
166
167 do_install_vuplus () {
168         for d in ${dirs755}; do
169                 install -m 0755 -d ${D}$d
170         done
171         for d in ${dirs1777}; do
172                 install -m 1777 -d ${D}$d
173         done
174         for d in ${dirs2775}; do
175                 install -m 2755 -d ${D}$d
176         done
177         for d in card cf net ram; do
178                 ln -sf /media/$d ${D}/mnt/$d
179         done
180
181         if [ -n "${MACHINE}" -a "${hostname}" = "openembedded" ]; then
182                 echo ${MACHINE} > ${D}${sysconfdir}/hostname
183         else
184                 echo ${hostname} > ${D}${sysconfdir}/hostname
185         fi
186
187         if [ -n "${DISTRO_NAME}" ]; then
188                 echo -n "${DISTRO_NAME} " > ${D}${sysconfdir}/issue
189                 echo -n "${DISTRO_NAME} " > ${D}${sysconfdir}/issue.net
190                 if [ -n "${DISTRO_VERSION}" ]; then
191                         echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue
192                         echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue.net
193                 fi
194                 echo "\n \l" >> ${D}${sysconfdir}/issue
195                 echo >> ${D}${sysconfdir}/issue
196                 echo "%h"    >> ${D}${sysconfdir}/issue.net
197                 echo >> ${D}${sysconfdir}/issue.net
198         else
199                install -m 0644 ${WORKDIR}/issue ${D}${sysconfdir}/issue
200                install -m 0644 ${WORKDIR}/issue.net ${D}${sysconfdir}/issue.net
201         fi
202
203         install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab
204         install -m 0644 ${WORKDIR}/filesystems ${D}${sysconfdir}/filesystems
205         install -m 0644 ${WORKDIR}/usbd ${D}${sysconfdir}/default/usbd
206         install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile
207         install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile
208         install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
209         install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
210         install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
211         install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf
212         install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
213
214         for license in BSD GPL-2 LGPL-2 LGPL-2.1 Artistic; do
215                 install -m 0644 ${WORKDIR}/licenses/$license ${D}${datadir}/common-licenses/
216         done
217
218         ln -sf /proc/mounts ${D}${sysconfdir}/mtab
219 }
220
221 do_install_append_mnci () {
222         rmdir ${D}/tmp
223         ln -s var/tmp ${D}/tmp
224 }
225
226 do_install_append_nylon() {
227         printf "" "" >${D}${sysconfdir}/resolv.conf
228         rm -r ${D}/mnt/*
229         rm -r ${D}/media
230         rm -rf ${D}/tmp
231         ln -sf /var/tmp ${D}/tmp
232 }
233
234 do_install_append_slugos() {
235         printf "" "" >${D}${sysconfdir}/resolv.conf
236         rm -r ${D}/mnt/*
237         rmdir ${D}/home/root
238         install -m 0755 -d ${D}/root
239         ln -s ../root ${D}/home/root
240 }
241
242 do_install_append_netbook-pro () {
243         mkdir -p ${D}/initrd
244 }
245
246 do_install_append_opendreambox() {
247         rm -rf ${D}/mnt
248         rm -rf ${D}/hdd
249         ln -sf media/hdd ${D}/hdd
250         ln -sf media ${D}/mnt
251 }
252
253 do_install_append_vuplus() {
254         rm -rf ${D}/mnt
255         rm -rf ${D}/hdd
256         ln -sf media/hdd ${D}/hdd
257         ln -sf media ${D}/mnt
258 }
259
260 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}"
261 FILES_${PN} = "/*"
262 PACKAGES_vuplus = "${PN}-doc ${PN}"
263 FILES_${PN}_vuplus = "/"
264 FILES_${PN}-doc = "${docdir} ${datadir}/common-licenses"
265
266 # M&N specific packaging
267 PACKAGE_ARCH_mnci = "mnci"
268 PACKAGE_ARCH_rt3000 = "rt3000"
269
270 PACKAGE_ARCH = "${MACHINE_ARCH}"
271
272 CONFFILES_${PN} = "${sysconfdir}/fstab ${sysconfdir}/hostname"
273 CONFFILES_${PN}_micro = ""
274 CONFFILES_${PN}_nylon = "${sysconfdir}/resolv.conf ${sysconfdir}/fstab ${sysconfdir}/hostname"
275 CONFFILES_${PN}_slugos = "${sysconfdir}/resolv.conf ${sysconfdir}/fstab ${sysconfdir}/hostname"
276