diff options
author | jwansek <eddie.atten.ea29@gmail.com> | 2024-02-13 16:36:24 +0000 |
---|---|---|
committer | jwansek <eddie.atten.ea29@gmail.com> | 2024-02-13 16:36:24 +0000 |
commit | 12238c47081cd789c09e6677495cca3d31356cf1 (patch) | |
tree | f702377dfc4159b3752239c05eba2f7cc71071e5 /noetic-llama | |
parent | 76963cdaad8b19335a8e13246313833cdaf758e6 (diff) | |
download | noetic-llama-12238c47081cd789c09e6677495cca3d31356cf1.tar.gz noetic-llama-12238c47081cd789c09e6677495cca3d31356cf1.zip |
Started on devcontainer stuff
Diffstat (limited to 'noetic-llama')
-rw-r--r-- | noetic-llama/.devcontainer/Dockerfile | 30 | ||||
-rw-r--r-- | noetic-llama/.devcontainer/devcontainer.json | 55 |
2 files changed, 85 insertions, 0 deletions
diff --git a/noetic-llama/.devcontainer/Dockerfile b/noetic-llama/.devcontainer/Dockerfile new file mode 100644 index 0000000..d86a5e7 --- /dev/null +++ b/noetic-llama/.devcontainer/Dockerfile @@ -0,0 +1,30 @@ +FROM osrf/ros:noetic-desktop-full + +# Add vscode user with same UID and GID as your host system +# (copied from https://code.visualstudio.com/remote/advancedcontainers/add-nonroot-user#_creating-a-nonroot-user) +ARG USERNAME=vscode +ARG USER_UID=1000 +ARG USER_GID=$USER_UID +RUN groupadd --gid $USER_GID $USERNAME \ + && useradd -s /bin/bash --uid $USER_UID --gid $USER_GID -m $USERNAME \ + && apt-get update \ + && apt-get install -y sudo \ + && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \ + && chmod 0440 /etc/sudoers.d/$USERNAME +# Switch from root to user +USER $USERNAME + +# Add user to video group to allow access to webcam +RUN sudo usermod --append --groups video $USERNAME + +# Update all packages +RUN sudo apt update && sudo apt upgrade -y + +# Install Git +RUN sudo apt install -y git + +# Rosdep update +RUN rosdep update + +# Source the ROS setup file +RUN echo "source /opt/ros/${ROS_DISTRO}/setup.bash" >> ~/.bashrc diff --git a/noetic-llama/.devcontainer/devcontainer.json b/noetic-llama/.devcontainer/devcontainer.json new file mode 100644 index 0000000..64a355a --- /dev/null +++ b/noetic-llama/.devcontainer/devcontainer.json @@ -0,0 +1,55 @@ +{ + "name": "noetic-llama devcontainer", + "dockerFile": "Dockerfile", + "runArgs": [ + "--privileged", + "--network=host", + "-v=/dev:/dev", + "--privileged", + "--runtime=nvidia", + "--device-cgroup-rule" "a *:* rmw", + "--cap-add=SYS_PTRACE", + "--security-opt=seccomp:unconfined", + "--security-opt=apparmor:unconfined", + "--volume=/tmp/.X11-unix:/tmp/.X11-unix", + "--volume=/home/agilex/.Xauthority:/home/ros/.Xauthority", + "--gpus=all" + ], + "containerEnv": { + "DISPLAY": ":0", + "LIBGL_ALWAYS_SOFTWARE": "1" // Needed for software rendering of opengl + }, + "workspaceMount": "source=${localWorkspaceFolder},target=/${localWorkspaceFolderBasename},type=bind", + "workspaceFolder": "/${localWorkspaceFolderBasename}", + "mounts": [ + "source=${localEnv:HOME}${localEnv:USERPROFILE}/.bash_history,target=/home/vscode/.bash_history,type=bind" + ], + "features": { + "ghcr.io/devcontainers/features/python:1": {} + }, + "customizations": { + "vscode": { + "extensions": [ + "dotjoshjohnson.xml", + "zachflower.uncrustify", + "ms-azuretools.vscode-docker", + "ms-iot.vscode-ros", + "ms-python.python", + "ms-vscode.cpptools", + "redhat.vscode-yaml", + "smilerobotics.urdf", + "streetsidesoftware.code-spell-checker", + "twxs.cmake", + "yzhang.markdown-all-in-one" + ] + }, + "settings": { + "terminal.integrated.profiles.linux": { + "bash": { + "path": "bash" + } + }, + "terminal.integrated.defaultProfile.linux": "bash" + } + } +} |