colcon / colcon-bundle

A colcon extension to create portable application bundles
Apache License 2.0
38 stars 24 forks source link

broken symlinks in dependencies #232

Open shu-agrointelli opened 2 years ago

shu-agrointelli commented 2 years ago

Discovered that there's alot of broken symlinks when referencing outside of it's own folder Upon further inspection the problmatic ones seems to be that an extra "../" was prefixed, such the symlinks references 1 level futher than needed

The bundle is made by version 0.1.1 runing in docker for ubuntu 18.04 and ROS melodic

Below is the list of broken symlinks after extraction

$ find . -xtype l -exec ls -l {} + ./dependencies/lib/systemd/system/sudo.service -> ../../../../dev/null ./dependencies/sbin/ip -> ../../bin/ip ./dependencies/sbin/udevadm -> ../../bin/udevadm ./dependencies/usr/bin/oshcc -> mpicc ./dependencies/usr/bin/oshfort -> mpifort ./dependencies/usr/bin/oshrun -> mpirun ./dependencies/usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc_s.so -> ../../../../../../lib/x86_64-linux-gnu/libgcc_s.so.1 ./dependencies/usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.so -> ../../../x86_64-linux-gnu/libstdc++.so.6 ./dependencies/usr/lib/python2.7/dist-packages/wx.pth -> ../../wx/python/wx.pth ./dependencies/usr/lib/python2.7/sitecustomize.py -> ../../../../etc/python2.7/sitecustomize.py ./dependencies/usr/lib/python3.6/sitecustomize.py -> ../../../../etc/python3.6/sitecustomize.py ./dependencies/usr/lib/ssl/certs -> ../../../../etc/ssl/certs ./dependencies/usr/lib/ssl/openssl.cnf -> ../../../../etc/ssl/openssl.cnf ./dependencies/usr/lib/ssl/private -> ../../../../etc/ssl/private ./dependencies/usr/lib/x86_64-linux-gnu/libbz2.so -> ../../../../lib/x86_64-linux-gnu/libbz2.so.1.0 ./dependencies/usr/lib/x86_64-linux-gnu/libcidn.so -> /lib/x86_64-linux-gnu/libcidn.so.1 ./dependencies/usr/lib/x86_64-linux-gnu/libexpat.so -> ../../../../lib/x86_64-linux-gnu/libexpat.so.1.6.7 ./dependencies/usr/lib/x86_64-linux-gnu/libgpg-error.so -> ../../../../lib/x86_64-linux-gnu/libgpg-error.so.0 ./dependencies/usr/lib/x86_64-linux-gnu/libjson-c.so -> ../../../../lib/x86_64-linux-gnu/libjson-c.so.3 ./dependencies/usr/lib/x86_64-linux-gnu/liblz4.so -> liblz4.so.1.7.1 ./dependencies/usr/lib/x86_64-linux-gnu/liblzma.so -> ../../../../lib/x86_64-linux-gnu/liblzma.so.5.2.2 ./dependencies/usr/lib/x86_64-linux-gnu/libpcreposix.so -> libpcreposix.so.3.13.3 ./dependencies/usr/lib/x86_64-linux-gnu/libpcre.so -> ../../../../lib/x86_64-linux-gnu/libpcre.so.3 ./dependencies/usr/lib/x86_64-linux-gnu/libuuid.so -> ../../../../lib/x86_64-linux-gnu/libuuid.so.1.3.0 ./dependencies/usr/lib/x86_64-linux-gnu/libz.so -> ../../../../lib/x86_64-linux-gnu/libz.so.1.2.11 ./dependencies/usr/share/doc/bzip2/changelog.Debian.gz -> ../libbz2-1.0/changelog.Debian.gz ./dependencies/usr/share/doc/dpkg-dev/AUTHORS -> ../libdpkg-perl/AUTHORS ./dependencies/usr/share/doc/dpkg-dev/changelog.Debian.gz -> ../libdpkg-perl/changelog.Debian.gz ./dependencies/usr/share/doc/dpkg-dev/README.feature-removal-schedule.gz -> ../libdpkg-perl/README.feature-removal-schedule.gz ./dependencies/usr/share/doc/dpkg-dev/THANKS.gz -> ../libdpkg-perl/THANKS.gz ./dependencies/usr/share/doc/dpkg-dev/usertags.gz -> ../libdpkg-perl/usertags.gz ./dependencies/usr/share/doc/fdisk/changelog.Debian.gz -> ../libfdisk1/changelog.Debian.gz ./dependencies/usr/share/doc/hdf5-helpers/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/libbz2-dev -> libbz2-1.0 ./dependencies/usr/share/doc/libc6-dev/changelog.Debian.gz -> ../libc6/changelog.Debian.gz ./dependencies/usr/share/doc/libc-dev-bin/changelog.Debian.gz -> ../libc6/changelog.Debian.gz ./dependencies/usr/share/doc/libdpkg-perl/AUTHORS -> ../dpkg/AUTHORS ./dependencies/usr/share/doc/libdpkg-perl/changelog.Debian.gz -> ../dpkg/changelog.Debian.gz ./dependencies/usr/share/doc/libdpkg-perl/README.feature-removal-schedule.gz -> ../dpkg/README.feature-removal-schedule.gz ./dependencies/usr/share/doc/libdpkg-perl/THANKS.gz -> ../dpkg/THANKS.gz ./dependencies/usr/share/doc/libdpkg-perl/usertags.gz -> ../dpkg/usertags.gz ./dependencies/usr/share/doc/libgpg-error-dev/changelog.Debian.gz -> ../libgpg-error0/changelog.Debian.gz ./dependencies/usr/share/doc/libgpg-error-dev/README.gz -> ../libgpg-error0/README.gz ./dependencies/usr/share/doc/libhdf5-100/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/libhdf5-cpp-100/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/libhdf5-dev/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/libhdf5-mpi-dev/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/libhdf5-openmpi-100/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/libhdf5-openmpi-dev/RELEASE.txt.gz -> changelog.gz ./dependencies/usr/share/doc/liblz4-dev/changelog.Debian.gz -> ../liblz4-1/changelog.Debian.gz ./dependencies/usr/share/doc/liblzma-dev/AUTHORS -> ../liblzma5/AUTHORS ./dependencies/usr/share/doc/liblzma-dev/changelog.Debian.gz -> ../liblzma5/changelog.Debian.gz ./dependencies/usr/share/doc/liblzma-dev/NEWS.gz -> ../liblzma5/NEWS.gz ./dependencies/usr/share/doc/liblzma-dev/THANKS -> ../liblzma5/THANKS ./dependencies/usr/share/doc/libmpfr-dev/changelog.gz -> ../libmpfr6/changelog.gz ./dependencies/usr/share/doc/libpam-systemd/changelog.Debian.gz -> ../libsystemd0/changelog.Debian.gz ./dependencies/usr/share/doc/libpcl-apps1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-dev/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-features1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-filters1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-io1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-kdtree1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-keypoints1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-octree1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-outofcore1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-people1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-recognition1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-registration1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-sample-consensus1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-search1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-segmentation1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-stereo1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-surface1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-tracking1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcl-visualization1.8/changelog.gz -> ../libpcl-common1.8/changelog.gz ./dependencies/usr/share/doc/libpcre3-dev/changelog.Debian.gz -> ../libpcre3/changelog.Debian.gz ./dependencies/usr/share/doc/libpcrecpp0v5/AUTHORS -> ../libpcre3/AUTHORS ./dependencies/usr/share/doc/libpcrecpp0v5/changelog.Debian.gz -> ../libpcre3/changelog.Debian.gz ./dependencies/usr/share/doc/libpcrecpp0v5/NEWS.gz -> ../libpcre3/NEWS.gz ./dependencies/usr/share/doc/libpcrecpp0v5/README.gz -> ../libpcre3/README.gz ./dependencies/usr/share/doc/libssl-dev/changelog.gz -> ../libssl1.1/changelog.gz ./dependencies/usr/share/doc/libxml2-dev/NEWS.gz -> changelog.gz ./dependencies/usr/share/doc/libxml2/NEWS.gz -> changelog.gz ./dependencies/usr/share/doc/openssl/changelog.gz -> ../libssl1.1/changelog.gz ./dependencies/usr/share/doc/udev/changelog.Debian.gz -> ../libudev1/changelog.Debian.gz ./dependencies/usr/share/doc/uuid-dev/changelog.Debian.gz -> ../libuuid1/changelog.Debian.gz ./dependencies/usr/share/doc/xz-utils/AUTHORS -> ../liblzma5/AUTHORS ./dependencies/usr/share/doc/xz-utils/changelog.Debian.gz -> ../liblzma5/changelog.Debian.gz ./dependencies/usr/share/doc/xz-utils/NEWS.gz -> ../liblzma5/NEWS.gz ./dependencies/usr/share/doc/xz-utils/THANKS -> ../liblzma5/THANKS ./dependencies/usr/share/doc/zlib1g-dev/changelog.Debian.gz -> ../zlib1g/changelog.Debian.gz ./dependencies/usr/share/icons/Humanity/apps/24/catfish.svg -> xfce4-appfinder.svg ./dependencies/usr/share/icons/Humanity/apps/24/edit-urpm-sources.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/24/gnome-searchtool.svg -> ../../actions/24/edit-find.svg ./dependencies/usr/share/icons/Humanity/apps/24/gpk-repo.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/24/panel-searchtool.svg -> ../../actions/24/edit-find.svg ./dependencies/usr/share/icons/Humanity/apps/24/pk-package-sources.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/24/xfce4-appfinder.svg -> gnome-searchtool.svg ./dependencies/usr/share/icons/Humanity/apps/24/x-system-software-sources.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/48/catfish.svg -> xfce4-appfinder.svg ./dependencies/usr/share/icons/Humanity/apps/48/edit-urpm-sources.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/48/gnome-searchtool.svg -> ../../actions/48/edit-find.svg ./dependencies/usr/share/icons/Humanity/apps/48/gpk-repo.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/48/panel-searchtool.svg -> ../../actions/48/edit-find.svg ./dependencies/usr/share/icons/Humanity/apps/48/pk-package-sources.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/apps/48/xfce4-appfinder.svg -> gnome-searchtool.svg ./dependencies/usr/share/icons/Humanity/apps/48/x-system-software-sources.svg -> software-properties.svg ./dependencies/usr/share/icons/Humanity/status/48/aptdaemon-update-cache.svg -> ../../apps/48/software-properties.svg ./dependencies/usr/share/icons/Humanity/stock/22/stock_zoom-page.svg -> ../../actions/22/zoom-best-fit.svg ./dependencies/usr/share/icons/Humanity/stock/24/stock_zoom-page.svg -> ../../actions/24/zoom-best-fit.svg ./dependencies/usr/share/icons/Humanity/stock/48/stock_zoom-page.svg -> ../../actions/48/zoom-best-fit.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-000-charging.svg -> gpm-battery-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-020-charging.svg -> gpm-battery-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-020.svg -> gpm-battery-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-040-charging.svg -> gpm-battery-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-040.svg -> gpm-battery-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-060-charging.svg -> gpm-battery-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-060.svg -> gpm-battery-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-080-charging.svg -> gpm-battery-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-080.svg -> gpm-battery-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-100-charging.svg -> gpm-battery-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-100.svg -> gpm-battery-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-primary-charged.svg -> gpm-battery-charged.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-000-charging.svg -> gpm-battery-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-020-charging.svg -> gpm-battery-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-020.svg -> gpm-battery-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-040-charging.svg -> gpm-battery-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-040.svg -> gpm-battery-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-060-charging.svg -> gpm-battery-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-060.svg -> gpm-battery-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-080-charging.svg -> gpm-battery-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-080.svg -> gpm-battery-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-100-charging.svg -> gpm-battery-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-100.svg -> gpm-battery-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/gpm-ups-missing.svg -> gpm-battery-missing.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/unity-battery-low.svg -> unity-gpm-primary-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/unity-battery_plugged.svg -> unity-gpm-ac-adapter.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ac-adapter.svg -> ac-adapter-symbolic.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-000-charging.svg -> gpm-primary-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-020-charging.svg -> gpm-primary-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-020.svg -> gpm-primary-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-040-charging.svg -> gpm-primary-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-040.svg -> gpm-primary-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-060-charging.svg -> gpm-primary-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-060.svg -> gpm-primary-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-080-charging.svg -> gpm-primary-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-080.svg -> gpm-primary-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-100-charging.svg -> gpm-primary-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-100.svg -> gpm-primary-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-charged.svg -> gpm-battery-charged.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-primary-missing.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-000-charging.svg -> gpm-battery-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-020-charging.svg -> gpm-battery-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-020.svg -> gpm-battery-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-040-charging.svg -> gpm-battery-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-040.svg -> gpm-battery-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-060-charging.svg -> gpm-battery-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-060.svg -> gpm-battery-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-080-charging.svg -> gpm-battery-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-080.svg -> gpm-battery-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-100-charging.svg -> gpm-battery-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-100.svg -> gpm-battery-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-charged.svg -> gpm-battery-charged.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/22/xfpm-ups-missing.svg -> gpm-battery-missing.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-000-charging.svg -> gpm-battery-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-020-charging.svg -> gpm-battery-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-020.svg -> gpm-battery-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-040-charging.svg -> gpm-battery-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-040.svg -> gpm-battery-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-060-charging.svg -> gpm-battery-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-060.svg -> gpm-battery-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-080-charging.svg -> gpm-battery-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-080.svg -> gpm-battery-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-100-charging.svg -> gpm-battery-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-100.svg -> gpm-battery-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-primary-charged.svg -> gpm-battery-charged.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-000-charging.svg -> gpm-battery-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-020-charging.svg -> gpm-battery-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-020.svg -> gpm-battery-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-040-charging.svg -> gpm-battery-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-040.svg -> gpm-battery-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-060-charging.svg -> gpm-battery-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-060.svg -> gpm-battery-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-080-charging.svg -> gpm-battery-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-080.svg -> gpm-battery-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-100-charging.svg -> gpm-battery-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-100.svg -> gpm-battery-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/gpm-ups-missing.svg -> gpm-battery-missing.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/unity-battery-low.svg -> unity-gpm-primary-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ac-adapter.svg -> ac-adapter-symbolic.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-000-charging.svg -> gpm-primary-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-020-charging.svg -> gpm-primary-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-020.svg -> gpm-primary-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-040-charging.svg -> gpm-primary-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-040.svg -> gpm-primary-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-060-charging.svg -> gpm-primary-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-060.svg -> gpm-primary-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-080-charging.svg -> gpm-primary-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-080.svg -> gpm-primary-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-100-charging.svg -> gpm-primary-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-100.svg -> gpm-primary-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-charged.svg -> gpm-battery-charged.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-primary-missing.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-000-charging.svg -> gpm-battery-000-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-000.svg -> gpm-battery-000.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-020-charging.svg -> gpm-battery-020-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-020.svg -> gpm-battery-020.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-040-charging.svg -> gpm-battery-040-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-040.svg -> gpm-battery-040.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-060-charging.svg -> gpm-battery-060-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-060.svg -> gpm-battery-060.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-080-charging.svg -> gpm-battery-080-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-080.svg -> gpm-battery-080.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-100-charging.svg -> gpm-battery-100-charging.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-100.svg -> gpm-battery-100.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-charged.svg -> gpm-battery-charged.svg ./dependencies/usr/share/icons/ubuntu-mono-dark/status/24/xfpm-ups-missing.svg -> gpm-battery-missing.svg ./dependencies/usr/share/X11/rgb.txt -> ../../../../etc/X11/rgb.txt ./dependencies/usr/share/zoneinfo/localtime -> ../../../../etc/localtime

mr337 commented 2 years ago

Just a wild guess, have you ensured that all of the directories are setup and colcon bundle is done in the proper place. This looks like something related to the environment of how things are bundled.

shu-agrointelli commented 2 years ago

Just a wild guess, have you ensured that all of the directories are setup and colcon bundle is done in the proper place. This looks like something related to the environment of how things are bundled.

I've setup my workspace to be directly below root in the docker container, such the folder structure after running colcon bundle looks like this /workspace/ ---- build/ ---- bundle/ ---- src/

Once extracted, it looks like following ../runtime/ ----- dependencies ----- workspace

and such that extra "../" prefix will lookup outside the dependencies folder.

Unless I've misunderstood how it supposed to be extracted or it's documented somewhere, it kinda suggest that dependencies are supposed to be extracted directly below root.

mr337 commented 2 years ago

Hmm something still doesn't feel right. I am shooting in the dark so feel free to tell me I'm crazy :)

After running colcon bundle I get a bundle directory. Inside that directory I have a cache dir that shows the different parts of the main bundle. When I dig around there I see all the deps as expected to ensure that the staging did pull in all my deps as expected.

$ tree -d -L 2
.
└── cache
    ├── bundle_staging
    ├── installer_cache
    └── workspace_staging

When I tar out the bundle file I get this, no mention of runtime so I am unclear where that is coming from.

$ tar xvf output.tar 
version
metadata.tar.gz
pad
dependencies.tar.gz
workspace.tar.gz

I started digging around in my bundle as well and ran the same find command as you, I too am missing a few things.

lrwxrwxrwx 1 mr337 mr337 20 Feb  4 15:59 ./lib/systemd/system/sudo.service -> ../../../../dev/null
lrwxrwxrwx 1 mr337 mr337 40 Mar 26  2020 ./usr/lib/gcc/x86_64-linux-gnu/7/libstdc++.so -> ../../../x86_64-linux-gnu/libstdc++.so.6
lrwxrwxrwx 1 mr337 mr337 42 Feb  4 15:59 ./usr/lib/python3.8/sitecustomize.py -> ../../../../etc/python3.8/sitecustomize.py
lrwxrwxrwx 1 mr337 mr337 25 Feb  4 15:59 ./usr/lib/ssl/certs -> ../../../../etc/ssl/certs
lrwxrwxrwx 1 mr337 mr337 31 Feb  4 15:59 ./usr/lib/ssl/openssl.cnf -> ../../../../etc/ssl/openssl.cnf
lrwxrwxrwx 1 mr337 mr337 27 Feb  4 15:59 ./usr/lib/ssl/private -> ../../../../etc/ssl/private
lrwxrwxrwx 1 mr337 mr337 46 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libbz2.so -> ../../../../lib/x86_64-linux-gnu/libbz2.so.1.0
lrwxrwxrwx 1 mr337 mr337 50 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libcrypt.so -> ../../../../lib/x86_64-linux-gnu/libcrypt.so.1.1.0
lrwxrwxrwx 1 mr337 mr337 51 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libexpat.so -> ../../../../lib/x86_64-linux-gnu/libexpat.so.1.6.11
lrwxrwxrwx 1 mr337 mr337 50 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libgpg-error.so -> ../../../../lib/x86_64-linux-gnu/libgpg-error.so.0
lrwxrwxrwx 1 mr337 mr337 15 May 20  2021 ./usr/lib/x86_64-linux-gnu/liblz4.so -> liblz4.so.1.9.2
lrwxrwxrwx 1 mr337 mr337 22 Mar 21  2020 ./usr/lib/x86_64-linux-gnu/libpcreposix.so -> libpcreposix.so.3.13.3
lrwxrwxrwx 1 mr337 mr337 45 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libpcre.so -> ../../../../lib/x86_64-linux-gnu/libpcre.so.3
lrwxrwxrwx 1 mr337 mr337 49 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libuuid.so -> ../../../../lib/x86_64-linux-gnu/libuuid.so.1.3.0
lrwxrwxrwx 1 mr337 mr337 47 Feb  4 15:59 ./usr/lib/x86_64-linux-gnu/libz.so -> ../../../../lib/x86_64-linux-gnu/libz.so.1.2.11
lrwxrwxrwx 1 mr337 mr337 10 Sep  5  2019 ./usr/share/doc/libbz2-dev -> libbz2-1.0
lrwxrwxrwx 1 mr337 mr337 28 Dec 16  2020 ./usr/share/doc/libc6-dev/changelog.Debian.gz -> ../libc6/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 28 Dec 16  2020 ./usr/share/doc/libc-dev-bin/changelog.Debian.gz -> ../libc6/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 15 Mar 23  2020 ./usr/share/doc/libdpkg-perl/AUTHORS -> ../dpkg/AUTHORS
lrwxrwxrwx 1 mr337 mr337 27 Mar 23  2020 ./usr/share/doc/libdpkg-perl/changelog.Debian.gz -> ../dpkg/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 42 Mar 23  2020 ./usr/share/doc/libdpkg-perl/README.feature-removal-schedule.gz -> ../dpkg/README.feature-removal-schedule.gz
lrwxrwxrwx 1 mr337 mr337 17 Mar 23  2020 ./usr/share/doc/libdpkg-perl/THANKS.gz -> ../dpkg/THANKS.gz
lrwxrwxrwx 1 mr337 mr337 19 Mar 23  2020 ./usr/share/doc/libdpkg-perl/usertags.gz -> ../dpkg/usertags.gz
lrwxrwxrwx 1 mr337 mr337 36 Feb 12  2020 ./usr/share/doc/libgpg-error-dev/changelog.Debian.gz -> ../libgpg-error0/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 26 Feb 12  2020 ./usr/share/doc/libgpg-error-dev/README.gz -> ../libgpg-error0/README.gz
lrwxrwxrwx 1 mr337 mr337 31 May 20  2021 ./usr/share/doc/liblz4-dev/changelog.Debian.gz -> ../liblz4-1/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 31 Mar 21  2020 ./usr/share/doc/libpcre3-dev/changelog.Debian.gz -> ../libpcre3/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 19 Mar 21  2020 ./usr/share/doc/libpcrecpp0v5/AUTHORS -> ../libpcre3/AUTHORS
lrwxrwxrwx 1 mr337 mr337 31 Mar 21  2020 ./usr/share/doc/libpcrecpp0v5/changelog.Debian.gz -> ../libpcre3/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 19 Mar 21  2020 ./usr/share/doc/libpcrecpp0v5/NEWS.gz -> ../libpcre3/NEWS.gz
lrwxrwxrwx 1 mr337 mr337 21 Mar 21  2020 ./usr/share/doc/libpcrecpp0v5/README.gz -> ../libpcre3/README.gz
lrwxrwxrwx 1 mr337 mr337 25 Nov 24 07:20 ./usr/share/doc/libssl-dev/changelog.gz -> ../libssl1.1/changelog.gz
lrwxrwxrwx 1 mr337 mr337 12 May 26  2021 ./usr/share/doc/libxml2/NEWS.gz -> changelog.gz
lrwxrwxrwx 1 mr337 mr337 25 Nov 24 07:20 ./usr/share/doc/openssl/changelog.gz -> ../libssl1.1/changelog.gz
lrwxrwxrwx 1 mr337 mr337 32 Oct 19  2020 ./usr/share/doc/perl/changelog.Debian.gz -> ../perl-base/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 12 Oct 19  2020 ./usr/share/doc/perl/Changes.gz -> changelog.gz
lrwxrwxrwx 1 mr337 mr337 32 Oct 19  2020 ./usr/share/doc/perl-modules-5.30/changelog.Debian.gz -> ../perl-base/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 31 Jul 21  2020 ./usr/share/doc/uuid-dev/changelog.Debian.gz -> ../libuuid1/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 29 Oct 15  2020 ./usr/share/doc/zlib1g-dev/changelog.Debian.gz -> ../zlib1g/changelog.Debian.gz
lrwxrwxrwx 1 mr337 mr337 27 Feb  4 15:59 ./usr/share/X11/rgb.txt -> ../../../../etc/X11/rgb.txt
lrwxrwxrwx 1 mr337 mr337 25 Feb  4 15:59 ./usr/share/zoneinfo/localtime -> ../../../../etc/localtime

With this new finding I have another question, have you attempted to use the bundle? We have our stuff running in production without an issues using the bundle files, even with the above findings.

shu-agrointelli commented 2 years ago

Hmm something still doesn't feel right. I am shooting in the dark so feel free to tell me I'm crazy :)

After running colcon bundle I get a bundle directory. Inside that directory I have a cache dir that shows the different parts of the main bundle. When I dig around there I see all the deps as expected to ensure that the staging did pull in all my deps as expected.

Have you tried the find command inside the cache? I'm getting the same symlink error when running it inside the cache folder.

When I tar out the bundle file I get this, no mention of runtime so I am unclear where that is coming from.

That runtime is a folder where we've extracted content of dependencies.tar.gz and workspace.tar.gz

With this new finding I have another question, have you attempted to use the bundle? We have our stuff running in production without an issues using the bundle files, even with the above findings.

We are also running fine in production using the bundle, only have discovered this issue with symlinks after we've added an integrity check in our pipeline that calculates a MD5 sum over the files inside the bundle, which this issue causes our pipeline to fail that step by "file not found".

I don't know if it's related, but after I've sourced the setup.bash inside dependencies, I'll lose the sudo acess in that shell.

mr337 commented 2 years ago

Hmm that is pretty interesting. To be honest we haven't been doing the same integrity check as you as we do further testing before pushing to the PROD/devices. I do wonder if some of that is how the dependencies are pulled in for my situation. Colcon does have the ability to ignore some packages that possibly other packages depends on to slim down the bundles. I do not know if that is part of the building the dependencies or post download it then deletes things. I have yet to experiment with it.

I wish I can help you more, I'm at a loss as well.