[arch-releng] [DRAFT][PATCH 1/2] [archiso] mkarchiso: add new pkglist command.

Gerardo Exequiel Pozzi vmlinuz386 at yahoo.com.ar
Sun Apr 8 22:18:18 EDT 2012


This command makes a list of installed packages on root-image,
on <ISO>/$archisobasedir/pkglist.$arch.txt with the format
<repo>/<package>-<version>
---
 archiso/mkarchiso |   20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/archiso/mkarchiso b/archiso/mkarchiso
index 1d7b781..75eb9cb 100755
--- a/archiso/mkarchiso
+++ b/archiso/mkarchiso
@@ -169,6 +169,8 @@ _usage ()
     echo "      build all images"
     echo "   checksum"
     echo "      make a checksum.md5 for self-test"
+    echo "   pkglist"
+    echo "      make a pkglist.txt of packages installed on root-image"
     echo "   iso <image name>"
     echo "      build an iso image from the working dir"
     exit ${1}
@@ -199,6 +201,8 @@ _show_config () {
             ;;
         checksum)
             ;;
+        pkglist)
+            ;;
         iso)
             _msg_info "               Image name:   ${img_name}"
             _msg_info "               Disk label:   ${iso_label}"
@@ -378,6 +382,19 @@ command_checksum () {
     done
 }
 
+command_pkglist () {
+    _show_config pkglist
+
+    if _is_directory_changed "${work_dir}/root-image/var/lib/pacman/local" "${work_dir}/iso/${install_dir}/pkglist.${arch}.txt"; then
+        _msg_info "Creating a list of installed packages on live-enviroment"
+        pacman -Sl -r "${work_dir}/root-image" --config "${pacman_conf}" | \
+            awk '/\[installed\]$/ {print $1 "/" $2 "-" $3}' > \
+            "${work_dir}/iso/${install_dir}/pkglist.${arch}.txt"
+        _msg_info "Done!"
+    fi
+
+}
+
 # Create an ISO9660 filesystem from "iso" directory.
 command_iso () {
     local _iso_efi_boot_args=""
@@ -538,6 +555,9 @@ case "${command_name}" in
     checksum)
         command_checksum
         ;;
+    pkglist)
+        command_pkglist
+        ;;
     iso)
         if [[ $# -lt 2 ]]; then
             _msg_error "No image specified" 0
-- 
1.7.9.6



More information about the arch-releng mailing list