Now I'm going to be honest. Previous patch 'Add usb-modeswitch-data package'
break things - 'ptxdist images' fails as ':' is used as delimiter in perms file.
Patch bellow escapes semicolon on producer side, anyone cares about consumer?

        ladis

diff --git a/scripts/lib/ptxd_make_xpkg_pkg.sh 
b/scripts/lib/ptxd_make_xpkg_pkg.sh
index 5ba404e..8e6664b 100644
--- a/scripts/lib/ptxd_make_xpkg_pkg.sh
+++ b/scripts/lib/ptxd_make_xpkg_pkg.sh
@@ -209,6 +209,7 @@ install directory:
 
     install -m "${mod_nfs}" -d "${ndirs[@]/%/${dir}}" &&
     install -m "${mod}" -o "${usr}" -g "${grp}" -d "${pdirs[@]/%/${dir}}" &&
+    dir="$(echo ${dir} | sed -e 's/[:]/\\:/g')" &&
 
     echo "f:${dir}:${usr}:${grp}:${mod}" >> "${pkg_xpkg_perms}" ||
     ptxd_install_error "install_dir failed!"
@@ -343,6 +344,9 @@ Usually, just remove the 6th parameter and everything works 
fine.
     # now change to requested user and group
     chown "${usr}:${grp}" "${pdirs[@]/%/${dst}}" &&
 
+    # escape semicolon
+    dst="$(echo ${dst} | sed -e 's/[:]/\\:/g')" &&
+
     echo "f:${dst}:${usr}:${grp}:${mod}" >> "${pkg_xpkg_perms}"
 }
 export -f ptxd_install_file_impl
@@ -413,6 +417,7 @@ install device node:
        mknod -m "${mod}" "${d}" "${type}" ${major} ${minor} || return
     done &&
     chown "${usr}:${grp}" "${pdirs[@]/%/${dst}}" &&
+    dst="$(echo ${dst} | sed -e 's/[:]/\\:/g')" &&
 
     echo "n:${dst}:${usr}:${grp}:${mod}:${type}:${major}:${minor}" >> 
"${pkg_xpkg_perms}"
 }

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to