Add Devcontainer Support (#3777)

* add devcontainer files

* update postCreate

* add chmod for postCreate

* set CORES env variable to pass to build tool

* remove ssh functionality

* Move delete env file cmd to postStartCommand

* update how env file is done

* Update

- Move to older version of ubuntu for compatability
- Change vnc password to orca
This commit is contained in:
Ocraftyone 2024-01-27 01:16:30 -05:00 committed by GitHub
parent da7f8e85fd
commit fba490969d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 65 additions and 0 deletions

View file

@ -0,0 +1,51 @@
{
"name": "OrcaSlicer",
"image": "mcr.microsoft.com/devcontainers/cpp:ubuntu-20.04",
"runArgs": ["--env-file", "/tmp/devcontainer.env"],
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {
"password": "orca"
}
},
"customizations": {
"vscode": {
"settings": {
"cmake.configureArgs": [
"-DSLIC3R_GTK=3",
"-DBBL_RELEASE_TO_PUBLIC=1",
"-DBBL_INTERNAL_TESTING=0",
"-DSLIC3R_STATIC=1",
"-DCMAKE_PREFIX_PATH=${workspaceFolder}/deps/build/destdir/usr/local"
],
"cmake.buildToolArgs": [
"-l${containerEnv:CORES}"
]
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"ms-vscode.cmake-tools",
"ms-vscode.cpptools-extension-pack"
]
}
},
"forwardPorts": [6080],
"portsAttributes": {
"6080": {
"label": "VNC web client (noVNC)",
"onAutoForward": "silent"
}
},
"otherPortsAttributes": {
"onAutoForward": "ignore"
},
"initializeCommand": {
"Setup Temporary Env File": "echo \"CORES=`nproc --all`\" > /tmp/devcontainer.env"
},
"onCreateCommand": {
"Set postCreate executable flag": "chmod +x .devcontainer/postCreate.sh"
},
"postCreateCommand": "sudo .devcontainer/postCreate.sh"
}

14
.devcontainer/postCreate.sh Executable file
View file

@ -0,0 +1,14 @@
#!/bin/bash
# Update and upgrade all system packages
apt update
apt upgrade -y
echo "-----------------------------------------"
echo "Running BuildLinux.sh with update flag..."
echo "-----------------------------------------"
./BuildLinux.sh -u
echo "------------------------------"
echo "Installing missing packages..."
echo "------------------------------"
apt install -y libgl1-mesa-dev m4 autoconf libtool