Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[unitree/cross] Enable to share single docker image with multiple users #1868

Merged
merged 16 commits into from
Oct 26, 2023

Conversation

k-okada
Copy link
Member

@k-okada k-okada commented Oct 9, 2023

@k-okada k-okada changed the title patch to fix on mac [unitree/cross] patch to fix on mac Oct 9, 2023
@k-okada k-okada requested a review from iory October 9, 2023 03:55
@k-okada k-okada changed the title [unitree/cross] patch to fix on mac [unitree/cross] Enable to share single docker image with multiple users Oct 12, 2023
@k-okada k-okada force-pushed the fix_for_mac branch 2 times, most recently from b5e5576 to a7f2129 Compare October 12, 2023 11:22
@sktometometo
Copy link
Contributor

I will check this branch today.

@k-okada
Copy link
Member Author

k-okada commented Oct 13, 2023

Thanks for the confirmation. However, there should be a robot with the software that worked 6 months ago already installed on the main computer. You can use the robot as an embedded system, so do not work on the internal system, build your own environment on an external PC and prepare for SI first.

Unfortunately it is not working well at the moment, but the purpose of the 'cross' system is not to spend time building and debugging all the software for each use of the robot, but instead to add/copy programs to jsk_unitree_robot or unitree.repos and . /build_user.sh and . /install.sh so that we could concentrate on app development and demo creation.
If SI preparation is delayed due to 'cross' trouble, it is the creator's problem, so let's give priority to SI.

@k-okada k-okada force-pushed the fix_for_mac branch 4 times, most recently from ca23d42 to 2d6302a Compare October 15, 2023 07:34
@k-okada k-okada force-pushed the fix_for_mac branch 2 times, most recently from bb3e89f to 919766c Compare October 17, 2023 08:38
- catkin_virtualenv depends on python3-venv and virtualenv, so we added these packages on ros1_dependencies_build_scripts, because they are not found on actual robots.
- not sure why, but catkin_virtualenv (test_catkin_virutalenv_python2) depends on cython, But with 1049-cython, it fails to instal PyYAML, so we force add cython dep packages in Dockerfile_ros1
@tkmtnt7000
Copy link
Member

tkmtnt7000 commented Oct 17, 2023

Screenshot from 2023-10-17 19-06-55

I have confirmed that this PR works with k-okada.

a part of ./install.sh -t Pro -p xxx -d User log for debugging.

+ [[ User == \U\s\e\r ]]
+ rsync '--rsh=sshpass -p 123 ssh -o StrictHostKeyChecking=no -l unitree' -avz --delete --delete-excluded ../jsk_unitree_startup/autostart/ 192.168.123.14:Unitree/autostart/jsk_startup
sending incremental file list
./
bark.wav
jsk_startup.sh

sent 207 bytes  received 4,509 bytes  3,144.00 bytes/sec
total size is 539,534  speedup is 114.41
+ [[ Pro == \A\i\r ]]
+ sshpass -p 123 ssh -t unitree@192.168.123.14 'source /opt/jsk/User/user_setup.bash; sudo cp -f $(rospack find respeaker_ros)/config/60-respeaker.rules /etc/udev/rules.d/60-respeaker.rules'
ROS_IP=192.168.123.14
ROS_MASTER_URI=http://192.168.123.161:11311
[sudo] password for unitree: 
Connection to 192.168.123.14 closed.
+ sshpass -p 123 ssh -t unitree@192.168.123.14 'ls -al /etc/udev/rules.d/; sudo systemctl restart udev'
total 48
drwxr-xr-x 2 root root 4096 6月  24  2022 .
drwxr-xr-x 4 root root 4096 12月 10  2021 ..
-rw-r--r-- 1 root root   80 5月  22 15:16 60-respeaker.rules
-rw-r--r-- 1 root root  616 1月  16  2021 90-alsa-asound-tegra.rules
-rw-r--r-- 1 root root  175 1月  16  2021 91-xorg-conf-tegra.rules
-rw-r--r-- 1 root root  962 1月  16  2021 92-hdmi-audio-tegra.rules
-rw-r--r-- 1 root root  208 1月  16  2021 99-nv-l4t-usb-device-mode.rules
-rw-r--r-- 1 root root 1326 1月  16  2021 99-nv-l4t-usb-host-config.rules
-rw-r--r-- 1 root root  427 1月  16  2021 99-nv-ufs-mount.rules
-rw-r--r-- 1 root root  634 1月  16  2021 99-nv-wifibt.rules
-rw-r--r-- 1 root root 2036 1月  16  2021 99-tegra-devices.rules
-rw-r--r-- 1 root root  130 1月  16  2021 99-tegra-mmc-ra.rules
[sudo] password for unitree: 
Connection to 192.168.123.14 closed.
+ [[ 192.168.123.14 == \1\9\2\.\1\6\8\.\1\2\3\.\1\6\1 ]]
+ set +x
# Host 192.168.123.15 found: line 28
/home/tsukamoto/.ssh/known_hosts updated.
Original contents retained as /home/tsukamoto/.ssh/known_hosts.old
Warning: Permanently added '192.168.123.15' (ECDSA) to the list of known hosts.
Backups			camera_image_publisher.py  Documents  examples.desktop	    jsk		   mic.wav  Music     Public	  sitepkg  startNode.sh  udpsrc.py  UnitreecameraSDK
camera_check_script.py	Desktop			   Downloads  get-people-number.py  jsk_catkin_ws  mqsnn    Pictures  sample.wav  start    Templates	 Unitree    Videos
patching file /home/unitree/Unitree/autostart/imageai/mLComSystemFrame/pyScripts/live_human_pose.py
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file /home/unitree/Unitree/autostart/imageai/mLComSystemFrame/pyScripts/live_human_pose.py.rej
Connection to 192.168.123.15 closed.
===
Congratulations! Please reset robot and enjoy!!
===

@tkmtnt7000
Copy link
Member

新しい環境(phobos)でmake systemして放置していましたが以下のエラーが出ていました.
僕の環境の問題?かもしれませんがmake distcleanしてやり直しましたが2回とも同じ場所で死んだので念のため報告します.

すべてのログ:https://gist.github.com/tkmtnt7000/25ff0f8d559abc69444b18bd60d7c789

<== Finished processing package [36 of 94]: 'pr2_msgs'

==> Processing plain cmake package: 'python_orocos_kdl'
==> Creating build directory: 'build_isolated/python_orocos_kdl/install'
==> Building with env: '/opt/jsk/System/ros1_inst/env.sh'
==> cmake /home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl -DCMAKE_INSTALL_PREFIX=/opt/jsk/System/ros1_inst -DCMAKE_BUILD_TYPE=Release -DCATKIN_ENABLE_TESTING=FALSE -DEUSLISP_WITHOUT_DISPLAY=TRUE -DDISABLE_DOCUMENTATION=1 -G Unix Makefiles in '/home/user/arm64v8_ws_system/build_isolated/python_orocos_kdl/install'
'import usercustomize' failed; use -v for traceback
'import usercustomize' failed; use -v for traceback
'import usercustomize' failed; use -v for traceback
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PythonInterp: /usr/bin/python2 (found suitable version "2.7.17", minimum required is "2") 
-- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython2.7.so (found suitable version "2.7.17", minimum required is "2.7") 
'import usercustomize' failed; use -v for traceback
'import usercustomize' failed; use -v for traceback
Traceback (most recent call last):
  File "/home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl/cmake/FindSIP.py", line 8, in <module>
    import sipconfig
ImportError: No module named sipconfig
CMake Error at cmake/FindSIP.cmake:63 (MESSAGE):
  Could not find SIP
Call Stack (most recent call first):
  CMakeLists.txt:14 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/user/arm64v8_ws_system/build_isolated/python_orocos_kdl/install/CMakeFiles/CMakeOutput.log".
<== Failed to process package 'python_orocos_kdl': 
  Command '['/opt/jsk/System/ros1_inst/env.sh', 'cmake', '/home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl', '-DCMAKE_INSTALL_PREFIX=/opt/jsk/System/ros1_inst', '-DCMAKE_BUILD_TYPE=Release', '-DCATKIN_ENABLE_TESTING=FALSE', '-DEUSLISP_WITHOUT_DISPLAY=TRUE', '-DDISABLE_DOCUMENTATION=1', '-G', 'Unix Makefiles']' returned non-zero exit status 1

Reproduce this error by running:
==> cd /home/user/arm64v8_ws_system/build_isolated/python_orocos_kdl && /opt/jsk/System/ros1_inst/env.sh cmake /home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl -DCMAKE_INSTALL_PREFIX=/opt/jsk/System/ros1_inst -DCMAKE_BUILD_TYPE=Release -DCATKIN_ENABLE_TESTING=FALSE -DEUSLISP_WITHOUT_DISPLAY=TRUE -DDISABLE_DOCUMENTATION=1 -G 'Unix Makefiles'

Command failed, exiting.
make: *** [Makefile:15: system] Error 1

@k-okada
Copy link
Member Author

k-okada commented Oct 21, 2023

sorry I forget to add usercustomze.py (k-okada@3064dca), please use latest version. You may also need to remove existing start_scripts/usercustomize.py directory.

@tkmtnt7000
Copy link
Member

Thank you. I have confirmed that make system works successfully.

@k-okada k-okada merged commit 8ae855d into jsk-ros-pkg:master Oct 26, 2023
8 checks passed
@k-okada k-okada deleted the fix_for_mac branch October 26, 2023 13:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants