Merge bk://openembedded@openembedded.bkbits.net/packages
authorPhil Blundell <philb@gnu.org>
Sun, 4 Jul 2004 12:57:47 +0000 (12:57 +0000)
committerPhil Blundell <philb@gnu.org>
Sun, 4 Jul 2004 12:57:47 +0000 (12:57 +0000)
into dixie.nexus.co.uk:/home/pb/oe/oe-packages

2004/07/04 13:57:37+01:00 nexus.co.uk!pb
disable root logins initially in gpe-image

BKrev: 40e7fecb8nt2kHw6tyKoOOmLgxDSZw

classes/image_ipk.oeclass
meta/gpe-image.oe

index e69de29..7821aa6 100644 (file)
@@ -0,0 +1,72 @@
+# TODO:
+#      - now that there is a rootfs_ipk one should re-use it here
+#      - also, the makedev-stuff should be configurable, there are devices
+#        out that use devfs and don't need no /dev-directory population
+#        We probably could do this with some gentoo-like "use devfs || ..."
+#        feature
+
+DEPENDS_prepend="ipkg-native ipkg-utils-native makedevs fakeroot-native mtd-native makedevs-native "
+DEPENDS_append=" ${EXTRA_IMAGEDEPENDS}"
+
+PACKAGES = ""
+
+IMAGE_DEVICE_TABLE = "${@oe.which(oe.data.getVar('OEPATH', d, 1), 'files/device_table-minimal.txt')}"
+
+do_images[nostamp] = 1
+do_images[dirs] = ${TOPDIR}
+
+IPKG_ARGS = "-f ${DEPLOY_DIR_IMAGE}/ipkg.conf -o ${IMAGE_ROOTFS}"
+
+IMAGE_POSTPROCESS_COMMAND ?= ""
+
+fakeroot do_images () {
+       set -x
+       rm -rf ${IMAGE_ROOTFS}
+
+       mkdir -p ${IMAGE_ROOTFS}/dev
+       makedevs -r ${IMAGE_ROOTFS} -D ${IMAGE_DEVICE_TABLE}
+
+       touch ${DEPLOY_DIR_IPK}/Packages
+       ipkg-make-index -r ${DEPLOY_DIR_IPK}/Packages -p ${DEPLOY_DIR_IPK}/Packages -l ${DEPLOY_DIR_IPK}/Packages.filelist -m ${DEPLOY_DIR_IPK}
+       mkdir -p ${DEPLOY_DIR_IMAGE}
+       echo "src oe file:${DEPLOY_DIR_IPK}" > ${DEPLOY_DIR_IMAGE}/ipkg.conf
+       cat <<EOF >>${DEPLOY_DIR_IMAGE}/ipkg.conf
+arch all 1
+arch any 1
+arch noarch 1
+arch ${TARGET_ARCH} 10
+EOF
+       for i in ${IPKG_ARCHS}; do
+               if [ $i != "all" ] && [ $i != "${TARGET_ARCH}" ]; then
+                       echo "arch $i 5" >> ${DEPLOY_DIR_IMAGE}/ipkg.conf
+               fi
+       done
+       ipkg-cl ${IPKG_ARGS} update
+       ipkg-cl ${IPKG_ARGS} install ${IPKG_INSTALL}
+
+       export D=${IMAGE_ROOTFS}
+       export IPKG_OFFLINE_ROOT=${IMAGE_ROOTFS}
+
+       for i in ${IMAGE_ROOTFS}/usr/lib/ipkg/info/*.preinst; do
+               if [ -f $i ] && ! sh $i; then
+                       ipkg-cl ${IPKG_ARGS} flag unpacked `basename $i .preinst`
+               fi
+       done
+       for i in ${IMAGE_ROOTFS}/usr/lib/ipkg/info/*.postinst; do
+               if [ -f $i ] && ! sh $i; then
+                       ipkg-cl ${IPKG_ARGS} flag unpacked `basename $i .postinst`
+               fi
+       done
+
+       install -d ${IMAGE_ROOTFS}/${sysconfdir}
+       echo ${BUILDNAME} > ${IMAGE_ROOTFS}/${sysconfdir}/version
+
+       ${IMAGE_POSTPROCESS_COMMAND}
+
+       if test -z "$FAKEROOTKEY"; then
+               fakeroot -i ${TMPDIR}/fakedb.image oeimage -t ${IMAGE_FSTYPE} -e ${FILE}
+       else
+               oeimage -t ${IMAGE_FSTYPE} -e ${FILE}
+       fi
+}
+addtask images before do_build after do_install
index 6998873..04d830c 100644 (file)
@@ -8,4 +8,11 @@ export IPKG_INSTALL = 'task-bootstrap xserver-kdrive-fbdev \
                      gpe ttf-bitstream-vera pango-module-basic-x pango-module-basic-fc \
                      glibc-gconv glibc-gconv-iso8859-1 gdk-pixbuf-loader-png'
 
+zap_root_password () {
+       sed 's%^root:[^:]*:%root:*:%' < ${IMAGE_ROOTFS}/etc/passwd >${IMAGE_ROOTFS}/etc/passwd.new
+       mv ${IMAGE_ROOTFS}/etc/passwd.new ${IMAGE_ROOTFS}/etc/passwd    
+}
+
+IMAGE_POSTPROCESS_COMMAND = "zap_root_password"
+
 inherit image_ipk