9429ed28e39c4d3bde08a6e39ea028a0e9d1e068
[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 = "r96"
5 PR_dm7025 = "r92"
6 PR_vusolo = "r98"
7 LICENSE = "GPL"
8
9 FSTAB_dm7025 = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', 'fstab_old', 'fstab', d)}"
10 FSTAB ?= "${@base_contains('PREFERRED_VERSION_linux-${MACHINE}', '3.1.1', 'fstab_3.1', 'fstab', d)}"
11
12 SRC_URI = " \
13            file://nsswitch.conf \
14            file://motd \
15            file://inputrc \
16            file://host.conf \
17            file://profile \
18            file://${FSTAB} \
19            file://filesystems \
20            file://issue.net \
21            file://issue \
22            file://usbd \
23            file://share/dot.bashrc \
24            file://share/dot.profile \
25            file://licenses/BSD \
26            file://licenses/GPL-2 \
27            file://licenses/GPL-3 \
28            file://licenses/LGPL-2 \
29            file://licenses/LGPL-2.1 \
30            file://licenses/LGPL-3 \
31            file://licenses/GFDL-1.2 \
32            file://licenses/Artistic "
33 S = "${WORKDIR}"
34
35 docdir_append = "/${P}"
36 dirs1777 = "/tmp ${localstatedir}/volatile/lock ${localstatedir}/volatile/tmp"
37 dirs2775 = "/home ${prefix}/src ${localstatedir}/local"
38 dirs755 = "/bin /boot /dev ${sysconfdir} ${sysconfdir}/default \
39            ${sysconfdir}/skel /lib /mnt /proc /home/root /sbin \
40            ${prefix} ${bindir} ${docdir} /usr/games ${includedir} \
41            ${libdir} ${sbindir} ${datadir} \
42            ${datadir}/common-licenses ${datadir}/dict ${infodir} \
43            ${mandir} ${datadir}/misc ${localstatedir} \
44            ${localstatedir}/backups ${localstatedir}/lib \
45            /sys ${localstatedir}/lib/misc ${localstatedir}/spool \
46            ${localstatedir}/volatile ${localstatedir}/volatile/cache \
47            ${localstatedir}/volatile/lock/subsys \
48            ${localstatedir}/volatile/log \
49            ${localstatedir}/volatile/run \
50            /mnt /media /media/card /media/cf /media/net /media/ram \
51            /media/union /media/realroot /media/hdd \
52            /media/mmc1"
53 dirs755_micro = "/dev /proc /sys ${sysconfdir}"
54 dirs2775_micro = ""
55 dirs1777_micro = "/tmp"
56
57 media = "card cf net ram"
58 media_micro = ""
59
60 volatiles = "cache run log lock tmp"
61 conffiles = "${sysconfdir}/debian_version ${sysconfdir}/host.conf \
62              ${sysconfdir}/inputrc ${sysconfdir}/issue /${sysconfdir}/issue.net \
63              ${sysconfdir}/nsswitch.conf ${sysconfdir}/profile \
64              ${sysconfdir}/default"
65
66 #
67 # set standard hostname, might be a candidate for a DISTRO variable? :M:
68 #
69 hostname = "openembedded"
70 hostname_slugos = "nslu2"
71 hostname_mnci = "MNCI"
72 hostname_rt3000 = "MNRT"
73 hostname_jlime = "JLime"
74
75 do_install () {
76         for d in ${dirs755}; do
77                 install -m 0755 -d ${D}$d
78         done
79         for d in ${dirs1777}; do
80                 install -m 1777 -d ${D}$d
81         done
82         for d in ${dirs2775}; do
83                 install -m 2755 -d ${D}$d
84         done
85         for d in ${volatiles}; do
86                 if [ -d ${D}${localstatedir}/volatile/$d ]; then
87                         ln -sf volatile/$d ${D}/${localstatedir}/$d
88                 fi
89         done
90         for d in ${media}; do
91                 ln -sf /media/$d ${D}/mnt/$d
92         done
93
94         if [ -n "${MACHINE}" -a "${hostname}" = "openembedded" ]; then
95                 echo ${MACHINE} > ${D}${sysconfdir}/hostname
96         else
97                 echo ${hostname} > ${D}${sysconfdir}/hostname
98         fi
99
100         if [ "${DISTRO}" != "micro" -a "${DISTRO}" != "micro-uclibc" ]; then
101                 install -m 644 ${WORKDIR}/issue*  ${D}${sysconfdir}  
102
103                 if [ -n "${DISTRO_NAME}" ]; then
104                         echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
105                         echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
106                         if [ -n "${DISTRO_VERSION}" ]; then
107                                 echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue
108                                 echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue.net
109                         fi
110                         echo "\n \l" >> ${D}${sysconfdir}/issue
111                         echo >> ${D}${sysconfdir}/issue
112                         echo "%h"    >> ${D}${sysconfdir}/issue.net
113                         echo >> ${D}${sysconfdir}/issue.net
114                 else
115                         install -m 0644 ${WORKDIR}/issue ${D}${sysconfdir}/issue
116                         install -m 0644 ${WORKDIR}/issue.net ${D}${sysconfdir}/issue.net
117                 fi
118
119                 install -m 0644 ${WORKDIR}/${FSTAB} ${D}${sysconfdir}/fstab
120                 install -m 0644 ${WORKDIR}/filesystems ${D}${sysconfdir}/filesystems
121                 install -m 0644 ${WORKDIR}/usbd ${D}${sysconfdir}/default/usbd
122                 install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile
123                 install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile
124                 install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
125                 install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
126                 install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
127                 for license in BSD GPL-2 LGPL-2 LGPL-2.1 Artistic GPL-3 LGPL-3 GFDL-1.2; do
128                         install -m 0644 ${WORKDIR}/licenses/$license ${D}${datadir}/common-licenses/
129                 done
130
131                 ln -sf /proc/mounts ${D}${sysconfdir}/mtab
132                 install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf
133         fi
134
135         install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
136 }
137
138 do_install_append_mnci () {
139         rmdir ${D}/tmp
140         ln -s var/tmp ${D}/tmp
141 }
142
143 do_install_append_nylon() {
144         printf "" "" >${D}${sysconfdir}/resolv.conf
145         rm -r ${D}/mnt/*
146         rm -r ${D}/media
147         rm -rf ${D}/tmp
148         ln -sf /var/tmp ${D}/tmp
149 }
150
151 do_install_append_slugos() {
152         printf "" "" >${D}${sysconfdir}/resolv.conf
153         rm -r ${D}/mnt/*
154         rmdir ${D}/home/root
155         install -m 0755 -d ${D}/root
156         ln -s ../root ${D}/home/root
157 }
158
159 do_install_append_netbook-pro () {
160         mkdir -p ${D}/initrd
161 }
162
163 do_install_append_opendreambox() {
164         rm -rf ${D}/mnt
165         rm -rf ${D}/hdd
166         ln -sf media/hdd ${D}/hdd
167         ln -sf media ${D}/mnt
168 }
169
170 do_install_append_vuplus() {
171         rm -rf ${D}/mnt
172         rm -rf ${D}/hdd
173         ln -sf media/hdd ${D}/hdd
174         ln -sf media ${D}/mnt
175 }
176
177 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}"
178 FILES_${PN} = "/*"
179 FILES_${PN}-doc = "${docdir} ${datadir}/common-licenses"
180
181 # M&N specific packaging
182 PACKAGE_ARCH_mnci = "mnci"
183 PACKAGE_ARCH_rt3000 = "rt3000"
184
185 PACKAGE_ARCH = "${MACHINE_ARCH}"
186
187 CONFFILES_${PN} = "${sysconfdir}/fstab ${sysconfdir}/hostname"
188 CONFFILES_${PN}_micro = ""
189 CONFFILES_${PN}_nylon = "${sysconfdir}/resolv.conf ${sysconfdir}/fstab ${sysconfdir}/hostname"
190 CONFFILES_${PN}_slugos = "${sysconfdir}/resolv.conf ${sysconfdir}/fstab ${sysconfdir}/hostname"
191