ROOTFS_POSTPROCESS_COMMAND += '${@base_contains("IMAGE_FEATURES", "debug-tweaks", "ssh_allow_empty_password; ", "",d)}'
# Enable postinst logging if debug-tweaks is enabled
ROOTFS_POSTPROCESS_COMMAND += '${@base_contains("IMAGE_FEATURES", "debug-tweaks", "postinst_enable_logging; ", "",d)}'
+# Write manifest
+IMAGE_MANIFEST = "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.manifest"
+ROOTFS_POSTPROCESS_COMMAND =+ "write_image_manifest ; "
# Set default postinst log file
POSTINST_LOGFILE ?= "${localstatedir}/log/postinstall.log"
${IMAGE_POSTPROCESS_COMMAND}
${MACHINE_POSTPROCESS_COMMAND}
+
+ if [ -n "${IMAGE_LINK_NAME}" -a -f "${IMAGE_MANIFEST}" ]; then
+ rm -f ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.manifest
+ ln -s ${IMAGE_NAME}.rootfs.manifest ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.manifest
+ fi
}
insert_feed_uris () {
}
write_image_manifest () {
- rootfs_${IMAGE_PKGTYPE}_write_manifest
-
- if [ -n "${IMAGE_LINK_NAME}" ]; then
- rm -f ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.manifest
- ln -s ${IMAGE_NAME}.rootfs.manifest ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.manifest
- fi
+ list_installed_packages ver | sort > ${IMAGE_MANIFEST}
}
# Make login manager(s) enable automatic login.
echo "$pkg $fullpath $pkgarch"
fi
done
+ elif [ "$1" = "ver" ] ; then
+ ${DPKG_QUERY_COMMAND} -W -f='${Package} ${PackageArch} ${Version}\n'
else
${DPKG_QUERY_COMMAND} -W -f='${Package}\n'
fi
echo "$pkg $fullpath $pkgarch"
fi
done
+ elif [ "$1" = "ver" ] ; then
+ opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py -v
else
opkg-cl ${OPKG_ARGS} list_installed | awk '{ print $1 }'
fi
${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH}\n]" | translate_smart_to_oe arch
elif [ "$1" = "file" ]; then
${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH} %{PACKAGEORIGIN}\n]" | translate_smart_to_oe file
+ elif [ "$1" = "ver" ]; then
+ ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH} %{VERSION}\n]" | translate_smart_to_oe arch
else
${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH}\n]" | translate_smart_to_oe
fi
done
}
-rootfs_ipk_write_manifest() {
- manifest=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.manifest
- cp ${IMAGE_ROOTFS}${OPKGLIBDIR}/opkg/status $manifest
-
- sed '/Depends/d' -i $manifest
- sed '/Status/d' -i $manifest
- sed '/Architecture/d' -i $manifest
- sed '/Installed-Time/d' -i $manifest
- sed '/Auto-Installed/d' -i $manifest
- sed '/Recommends/d' -i $manifest
- sed '/Provides/d' -i $manifest
- sed '/Conflicts/d' -i $manifest
-}
-
remove_packaging_data_files() {
rm -rf ${IMAGE_ROOTFS}${OPKGLIBDIR}/opkg
# We need the directory for the package manager lock
archmode = False
filemode = False
+vermode = False
args = []
for arg in sys.argv[1:]:
archmode = True
elif arg == '-f':
filemode = True
+ elif arg == '-v':
+ vermode = True
else:
args.append(arg)
elif line.startswith("Architecture:"):
arch = line.split(": ")[1]
print("%s %s_%s_%s.ipk %s" % (pkg,pkg,ver,arch,arch))
+ elif vermode:
+ if line.startswith("Version:"):
+ ver = line.split(": ")[1]
+ elif line.startswith("Architecture:"):
+ arch = line.split(": ")[1]
+ print("%s %s %s" % (pkg,arch,ver))
else:
if line.startswith("Depends:"):
depval = line.split(": ")[1]