feat: update devcontainer setup and add new submodule for qemu

pull/74/head
Sipho Mokoena 2026-03-27 04:18:50 +00:00
parent c0720f0743
commit e0f97d460b
3 changed files with 15 additions and 11 deletions

View File

@ -20,12 +20,8 @@
"remoteUser": "vscode",
"waitFor": "postCreateCommand",
"mounts": [
"source=${localWorkspaceFolder}/wokwi-libs,target=${containerWorkspaceFolder}/wokwi-libs,type=bind,consistency=cached",
"source=velxio-arduino-cache,target=/home/vscode/.arduino15,type=volume",
"source=velxio-frontend-nodemodules,target=${containerWorkspaceFolder}/frontend/node_modules,type=volume",
"source=velxio-avr8js-nodemodules,target=${containerWorkspaceFolder}/wokwi-libs/avr8js/node_modules,type=volume",
"source=velxio-rp2040js-nodemodules,target=${containerWorkspaceFolder}/wokwi-libs/rp2040js/node_modules,type=volume",
"source=velxio-wokwi-elements-nodemodules,target=${containerWorkspaceFolder}/wokwi-libs/wokwi-elements/node_modules,type=volume"
"source=velxio-frontend-nodemodules,target=${containerWorkspaceFolder}/frontend/node_modules,type=volume"
],
"postCreateCommand": "bash .devcontainer/post-create.sh",
"postStartCommand": "bash .devcontainer/post-start.sh",

View File

@ -9,12 +9,14 @@ cd "$WORKSPACE_ROOT"
CURRENT_USER=$(whoami)
echo "==> Fixing ownership for mounted volumes..."
# Fix ownership of directories that are mounted as volumes
sudo chown -R "$CURRENT_USER:$CURRENT_USER" frontend/node_modules 2>/dev/null || true
sudo chown -R "$CURRENT_USER:$CURRENT_USER" wokwi-libs/avr8js/node_modules 2>/dev/null || true
sudo chown -R "$CURRENT_USER:$CURRENT_USER" wokwi-libs/rp2040js/node_modules 2>/dev/null || true
sudo chown -R "$CURRENT_USER:$CURRENT_USER" wokwi-libs/wokwi-elements/node_modules 2>/dev/null || true
sudo chown -R "$CURRENT_USER:$CURRENT_USER" "$HOME/.arduino15" 2>/dev/null || true
for d in frontend/node_modules wokwi-libs/avr8js/node_modules wokwi-libs/rp2040js/node_modules wokwi-libs/wokwi-elements/node_modules "$HOME/.arduino15"; do
sudo chown -R "$CURRENT_USER:$CURRENT_USER" "$d" 2>/dev/null || true
done
echo "==> Initializing git submodules..."
# Nuke everything except node_modules (which are Docker volumes - can't delete)
rm -rf wokwi-libs/avr8js/* wokwi-libs/rp2040js/* wokwi-libs/wokwi-elements/* wokwi-libs/wokwi-features/* wokwi-libs/wokwi-boards/* wokwi-libs/qemu-lcgamboa/*
git submodule update --init --recursive
echo "==> Installing arduino-cli..."
if ! command -v arduino-cli &> /dev/null; then

6
.gitmodules vendored
View File

@ -13,6 +13,12 @@
[submodule "wokwi-libs/wokwi-features"]
path = wokwi-libs/wokwi-features
url = https://github.com/wokwi/wokwi-features.git
[submodule "wokwi-libs/wokwi-boards"]
path = wokwi-libs/wokwi-boards
url = https://github.com/wokwi/wokwi-boards.git
[submodule "wokwi-libs/qemu-lcgamboa"]
path = wokwi-libs/qemu-lcgamboa
url = https://github.com/lcgamboa/qemu.git
branch = picsimlab-esp32