Skip to content

Commit 48a63c7

Browse files
authored
Create devcontainer.json (#1)
# Create and switch to a new branch for devcontainer feature git checkout -b feat/devcontainer-setup # Stage the new devcontainer files git add .devcontainer/ # Commit the changes git commit -m "feat(devcontainer): add .devcontainer folder and devcontainer.json for consistent development environment - Add devcontainer.json with Ubuntu base image - Include Node.js LTS for GitHub Copilot LSP support - Add Homebrew feature for package management - Configure VS Code extensions for Swift and development tools - Add post-create.sh script for environment setup - Mount SSH keys for Git authentication - Configure editor settings for consistent formatting This provides a consistent Linux development environment for: - Documentation work - Script development - Node.js component testing - General non-macOS specific tasks Note: Full Xcode development still requires macOS with Xcode installed." # Push the branch to remote git push -u origin feat/devcontainer-setup
1 parent 82b562b commit 48a63c7

1 file changed

Lines changed: 61 additions & 0 deletions

File tree

.devcontainer/devcontainer.json

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"name": "CopilotForXcode Development",
3+
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
4+
5+
"features": {
6+
"ghcr.io/devcontainers/features/common-utils:2": {
7+
"installZsh": true,
8+
"installOhMyZsh": true,
9+
"upgradePackages": true,
10+
"username": "vscode",
11+
"userUid": "1000",
12+
"userGid": "1000"
13+
},
14+
"ghcr.io/devcontainers/features/git:1": {
15+
"version": "latest"
16+
},
17+
"ghcr.io/devcontainers/features/node:1": {
18+
"version": "lts",
19+
"nodeGypDependencies": true
20+
},
21+
"ghcr.io/devcontainers/features/homebrew:1": {
22+
"version": "latest"
23+
}
24+
},
25+
26+
"postCreateCommand": "bash .devcontainer/post-create.sh",
27+
28+
"customizations": {
29+
"vscode": {
30+
"extensions": [
31+
"sswg.swift-lang",
32+
"GitHub.copilot",
33+
"GitHub.copilot-chat",
34+
"ms-vscode.makefile-tools",
35+
"streetsidesoftware.code-spell-checker",
36+
"eamodio.gitlens"
37+
],
38+
"settings": {
39+
"terminal.integrated.defaultProfile.linux": "zsh",
40+
"editor.formatOnSave": true,
41+
"editor.tabSize": 2,
42+
"files.insertFinalNewline": true,
43+
"files.trimTrailingWhitespace": true
44+
}
45+
}
46+
},
47+
48+
"remoteUser": "vscode",
49+
50+
"mounts": [
51+
"source=${localEnv:HOME}/.ssh,target=/home/vscode/.ssh,readonly,type=bind,consistency=cached"
52+
],
53+
54+
"forwardPorts": [],
55+
56+
"portsAttributes": {},
57+
58+
"postAttachCommand": "",
59+
60+
"updateContentCommand": "git pull"
61+
}

0 commit comments

Comments
 (0)