aboutsummaryrefslogtreecommitdiff
path: root/rcynic/installation-scripts/linux/install.sh.in
diff options
context:
space:
mode:
Diffstat (limited to 'rcynic/installation-scripts/linux/install.sh.in')
-rw-r--r--rcynic/installation-scripts/linux/install.sh.in19
1 files changed, 15 insertions, 4 deletions
diff --git a/rcynic/installation-scripts/linux/install.sh.in b/rcynic/installation-scripts/linux/install.sh.in
index 14cdbc4a..37b4af0a 100644
--- a/rcynic/installation-scripts/linux/install.sh.in
+++ b/rcynic/installation-scripts/linux/install.sh.in
@@ -145,12 +145,23 @@ fi
echo "Copying required shared libraries"
-shared_libraries="${jaildir}/bin/rcynic ${jaildir}/bin/rsync"
+shared_libraries="${jaildir}/bin/rcynic ${jaildir}/bin/rsync $(/usr/bin/find ${libdir} -name 'libnss*.so*' -print)"
while true
do
closure="$(/usr/bin/ldd ${shared_libraries} |
- ${AWK} -v "rcynic=${jaildir}/bin/rcynic" -v "rsync=${jaildir}/bin/rsync" \
- '{sub(/:$/, "")} $0 == rcynic || $0 == rsync {next} {for (i = 1; i <= NF; i++) if ($i ~ /^\//) print $i}' |
+ ${AWK} -v "rcynic=${jaildir}/bin/rcynic" -v "rsync=${jaildir}/bin/rsync" '
+ {
+ sub(/:$/, "");
+ }
+ $0 == rcynic || $0 == rsync || $1 ~ /\/ld-linux\.so/ {
+ next;
+ }
+ {
+ for (i = 1; i <= NF; i++)
+ if ($i ~ /^\//)
+ print $i;
+ }
+ ' |
${SORT} -u)"
if test "x$shared_libraries" = "x$closure"
then
@@ -166,7 +177,7 @@ if test -f ${libdir}/libresolv.so.2; then
shared_libraries="${shared_libraries} ${libdir}/libresolv.so.2"
fi
-for shared in ${libdir}/*ld*.so* $shared_libraries ${libdir}/libnss*.so.*
+for shared in ${libdir}/*ld*.so* $shared_libraries
do
if test -r "${jaildir}/${shared}"
then