@fredlackey/devutils 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/README.md +5 -5
  2. package/package.json +1 -1
  3. package/src/commands/install.js +374 -36
  4. package/src/installs/adobe-creative-cloud.js +527 -25
  5. package/src/installs/adobe-creative-cloud.md +605 -0
  6. package/src/installs/appcleaner.js +303 -26
  7. package/src/installs/appcleaner.md +699 -0
  8. package/src/installs/apt-transport-https.js +390 -0
  9. package/src/installs/apt-transport-https.md +678 -0
  10. package/src/installs/atomicparsley.js +624 -26
  11. package/src/installs/atomicparsley.md +795 -0
  12. package/src/installs/aws-cli.js +779 -26
  13. package/src/installs/aws-cli.md +727 -0
  14. package/src/installs/balena-etcher.js +688 -26
  15. package/src/installs/balena-etcher.md +761 -0
  16. package/src/installs/bambu-studio.js +912 -26
  17. package/src/installs/bambu-studio.md +780 -0
  18. package/src/installs/bash-completion.js +554 -23
  19. package/src/installs/bash-completion.md +833 -0
  20. package/src/installs/bash.js +399 -26
  21. package/src/installs/bash.md +993 -0
  22. package/src/installs/beyond-compare.js +585 -26
  23. package/src/installs/beyond-compare.md +813 -0
  24. package/src/installs/build-essential.js +511 -26
  25. package/src/installs/build-essential.md +977 -0
  26. package/src/installs/ca-certificates.js +618 -0
  27. package/src/installs/ca-certificates.md +937 -0
  28. package/src/installs/caffeine.js +490 -26
  29. package/src/installs/caffeine.md +839 -0
  30. package/src/installs/camtasia.js +577 -25
  31. package/src/installs/camtasia.md +762 -0
  32. package/src/installs/chatgpt.js +458 -26
  33. package/src/installs/chatgpt.md +814 -0
  34. package/src/installs/chocolatey.js +447 -0
  35. package/src/installs/chocolatey.md +661 -0
  36. package/src/installs/chrome-canary.js +472 -26
  37. package/src/installs/chrome-canary.md +641 -0
  38. package/src/installs/chromium.js +645 -26
  39. package/src/installs/chromium.md +838 -0
  40. package/src/installs/claude-code.js +558 -26
  41. package/src/installs/claude-code.md +1173 -0
  42. package/src/installs/curl.js +361 -26
  43. package/src/installs/curl.md +714 -0
  44. package/src/installs/cursor.js +561 -26
  45. package/src/installs/cursor.md +970 -0
  46. package/src/installs/dbschema.js +674 -26
  47. package/src/installs/dbschema.md +925 -0
  48. package/src/installs/dependencies.md +435 -0
  49. package/src/installs/development-tools.js +600 -0
  50. package/src/installs/development-tools.md +977 -0
  51. package/src/installs/docker.js +1010 -25
  52. package/src/installs/docker.md +1109 -0
  53. package/src/installs/drawio.js +1001 -26
  54. package/src/installs/drawio.md +795 -0
  55. package/src/installs/elmedia-player.js +328 -25
  56. package/src/installs/elmedia-player.md +556 -0
  57. package/src/installs/ffmpeg.js +870 -25
  58. package/src/installs/ffmpeg.md +852 -0
  59. package/src/installs/file.js +464 -0
  60. package/src/installs/file.md +987 -0
  61. package/src/installs/gemini-cli.js +793 -26
  62. package/src/installs/gemini-cli.md +1153 -0
  63. package/src/installs/git.js +382 -26
  64. package/src/installs/git.md +907 -0
  65. package/src/installs/gitego.js +931 -26
  66. package/src/installs/gitego.md +1172 -0
  67. package/src/installs/go.js +913 -26
  68. package/src/installs/go.md +958 -0
  69. package/src/installs/google-chrome.js +801 -25
  70. package/src/installs/google-chrome.md +862 -0
  71. package/src/installs/gpg.js +412 -73
  72. package/src/installs/gpg.md +1056 -0
  73. package/src/installs/homebrew.js +1015 -26
  74. package/src/installs/homebrew.md +988 -0
  75. package/src/installs/imageoptim.js +950 -26
  76. package/src/installs/imageoptim.md +1119 -0
  77. package/src/installs/installers.json +2297 -0
  78. package/src/installs/jq.js +382 -26
  79. package/src/installs/jq.md +809 -0
  80. package/src/installs/keyboard-maestro.js +701 -26
  81. package/src/installs/keyboard-maestro.md +825 -0
  82. package/src/installs/latex.js +771 -26
  83. package/src/installs/latex.md +1095 -0
  84. package/src/installs/lftp.js +338 -26
  85. package/src/installs/lftp.md +907 -0
  86. package/src/installs/lsb-release.js +346 -0
  87. package/src/installs/lsb-release.md +814 -0
  88. package/src/installs/messenger.js +829 -26
  89. package/src/installs/messenger.md +900 -0
  90. package/src/installs/microsoft-office.js +550 -26
  91. package/src/installs/microsoft-office.md +760 -0
  92. package/src/installs/microsoft-teams.js +782 -25
  93. package/src/installs/microsoft-teams.md +886 -0
  94. package/src/installs/node.js +886 -26
  95. package/src/installs/node.md +1153 -0
  96. package/src/installs/nordpass.js +698 -26
  97. package/src/installs/nordpass.md +921 -0
  98. package/src/installs/nvm.js +977 -26
  99. package/src/installs/nvm.md +1057 -0
  100. package/src/installs/openssh.js +734 -64
  101. package/src/installs/openssh.md +1056 -0
  102. package/src/installs/pandoc.js +644 -26
  103. package/src/installs/pandoc.md +1036 -0
  104. package/src/installs/pinentry.js +492 -26
  105. package/src/installs/pinentry.md +1142 -0
  106. package/src/installs/pngyu.js +851 -26
  107. package/src/installs/pngyu.md +896 -0
  108. package/src/installs/postman.js +781 -26
  109. package/src/installs/postman.md +940 -0
  110. package/src/installs/procps.js +425 -0
  111. package/src/installs/procps.md +851 -0
  112. package/src/installs/safari-tech-preview.js +355 -25
  113. package/src/installs/safari-tech-preview.md +533 -0
  114. package/src/installs/sfnt2woff.js +640 -26
  115. package/src/installs/sfnt2woff.md +795 -0
  116. package/src/installs/shellcheck.js +463 -26
  117. package/src/installs/shellcheck.md +1005 -0
  118. package/src/installs/slack.js +722 -25
  119. package/src/installs/slack.md +865 -0
  120. package/src/installs/snagit.js +566 -25
  121. package/src/installs/snagit.md +844 -0
  122. package/src/installs/software-properties-common.js +372 -0
  123. package/src/installs/software-properties-common.md +805 -0
  124. package/src/installs/spotify.js +858 -25
  125. package/src/installs/spotify.md +901 -0
  126. package/src/installs/studio-3t.js +803 -26
  127. package/src/installs/studio-3t.md +918 -0
  128. package/src/installs/sublime-text.js +780 -25
  129. package/src/installs/sublime-text.md +914 -0
  130. package/src/installs/superwhisper.js +687 -25
  131. package/src/installs/superwhisper.md +630 -0
  132. package/src/installs/tailscale.js +727 -26
  133. package/src/installs/tailscale.md +1100 -0
  134. package/src/installs/tar.js +389 -0
  135. package/src/installs/tar.md +946 -0
  136. package/src/installs/termius.js +780 -26
  137. package/src/installs/termius.md +844 -0
  138. package/src/installs/terraform.js +761 -26
  139. package/src/installs/terraform.md +899 -0
  140. package/src/installs/tidal.js +752 -25
  141. package/src/installs/tidal.md +864 -0
  142. package/src/installs/tmux.js +328 -26
  143. package/src/installs/tmux.md +1030 -0
  144. package/src/installs/tree.js +393 -26
  145. package/src/installs/tree.md +833 -0
  146. package/src/installs/unzip.js +460 -0
  147. package/src/installs/unzip.md +879 -0
  148. package/src/installs/vim.js +403 -26
  149. package/src/installs/vim.md +1040 -0
  150. package/src/installs/vlc.js +803 -26
  151. package/src/installs/vlc.md +927 -0
  152. package/src/installs/vscode.js +825 -26
  153. package/src/installs/vscode.md +1002 -0
  154. package/src/installs/wget.js +415 -0
  155. package/src/installs/wget.md +791 -0
  156. package/src/installs/whatsapp.js +710 -25
  157. package/src/installs/whatsapp.md +854 -0
  158. package/src/installs/winpty.js +352 -0
  159. package/src/installs/winpty.md +620 -0
  160. package/src/installs/woff2.js +535 -26
  161. package/src/installs/woff2.md +977 -0
  162. package/src/installs/wsl.js +572 -0
  163. package/src/installs/wsl.md +699 -0
  164. package/src/installs/xcode-clt.js +520 -0
  165. package/src/installs/xcode-clt.md +351 -0
  166. package/src/installs/xcode.js +542 -26
  167. package/src/installs/xcode.md +573 -0
  168. package/src/installs/yarn.js +806 -26
  169. package/src/installs/yarn.md +1074 -0
  170. package/src/installs/yq.js +636 -26
  171. package/src/installs/yq.md +944 -0
  172. package/src/installs/yt-dlp.js +683 -26
  173. package/src/installs/yt-dlp.md +946 -0
  174. package/src/installs/yum-utils.js +297 -0
  175. package/src/installs/yum-utils.md +648 -0
  176. package/src/installs/zoom.js +740 -25
  177. package/src/installs/zoom.md +884 -0
  178. package/src/scripts/README.md +567 -45
  179. package/src/scripts/STATUS.md +208 -0
  180. package/src/scripts/afk.js +395 -7
  181. package/src/scripts/backup-all.js +731 -9
  182. package/src/scripts/backup-source.js +711 -8
  183. package/src/scripts/brewd.js +373 -7
  184. package/src/scripts/brewi.js +505 -9
  185. package/src/scripts/brewr.js +512 -9
  186. package/src/scripts/brews.js +462 -9
  187. package/src/scripts/brewu.js +488 -7
  188. package/src/scripts/c.js +185 -7
  189. package/src/scripts/ccurl.js +325 -8
  190. package/src/scripts/certbot-crontab-init.js +488 -8
  191. package/src/scripts/certbot-init.js +641 -9
  192. package/src/scripts/ch.js +339 -7
  193. package/src/scripts/claude-danger.js +253 -8
  194. package/src/scripts/clean-dev.js +419 -8
  195. package/src/scripts/clear-dns-cache.js +525 -7
  196. package/src/scripts/clone.js +417 -7
  197. package/src/scripts/code-all.js +420 -7
  198. package/src/scripts/count-files.js +195 -8
  199. package/src/scripts/count-folders.js +195 -8
  200. package/src/scripts/count.js +248 -8
  201. package/src/scripts/d.js +203 -7
  202. package/src/scripts/datauri.js +373 -8
  203. package/src/scripts/delete-files.js +363 -7
  204. package/src/scripts/docker-clean.js +410 -8
  205. package/src/scripts/dp.js +426 -7
  206. package/src/scripts/e.js +375 -9
  207. package/src/scripts/empty-trash.js +497 -7
  208. package/src/scripts/evm.js +428 -9
  209. package/src/scripts/fetch-github-repos.js +441 -10
  210. package/src/scripts/get-channel.js +329 -8
  211. package/src/scripts/get-course.js +384 -11
  212. package/src/scripts/get-dependencies.js +290 -9
  213. package/src/scripts/get-folder.js +783 -10
  214. package/src/scripts/get-tunes.js +411 -10
  215. package/src/scripts/get-video.js +352 -9
  216. package/src/scripts/git-backup.js +561 -9
  217. package/src/scripts/git-clone.js +477 -9
  218. package/src/scripts/git-pup.js +303 -7
  219. package/src/scripts/git-push.js +380 -8
  220. package/src/scripts/h.js +607 -9
  221. package/src/scripts/hide-desktop-icons.js +483 -7
  222. package/src/scripts/hide-hidden-files.js +522 -7
  223. package/src/scripts/install-dependencies-from.js +440 -9
  224. package/src/scripts/ips.js +647 -10
  225. package/src/scripts/iso.js +354 -8
  226. package/src/scripts/killni.js +561 -7
  227. package/src/scripts/ll.js +451 -8
  228. package/src/scripts/local-ip.js +310 -8
  229. package/src/scripts/m.js +508 -8
  230. package/src/scripts/map.js +293 -8
  231. package/src/scripts/mkd.js +287 -7
  232. package/src/scripts/ncu-update-all.js +441 -8
  233. package/src/scripts/nginx-init.js +702 -12
  234. package/src/scripts/npmi.js +366 -7
  235. package/src/scripts/o.js +495 -8
  236. package/src/scripts/org-by-date.js +321 -7
  237. package/src/scripts/p.js +208 -7
  238. package/src/scripts/packages.js +313 -8
  239. package/src/scripts/path.js +209 -7
  240. package/src/scripts/ports.js +582 -8
  241. package/src/scripts/q.js +290 -8
  242. package/src/scripts/refresh-files.js +378 -10
  243. package/src/scripts/remove-smaller-files.js +500 -8
  244. package/src/scripts/rename-files-with-date.js +517 -9
  245. package/src/scripts/resize-image.js +523 -9
  246. package/src/scripts/rm-safe.js +653 -8
  247. package/src/scripts/s.js +525 -9
  248. package/src/scripts/set-git-public.js +349 -7
  249. package/src/scripts/show-desktop-icons.js +459 -7
  250. package/src/scripts/show-hidden-files.js +456 -7
  251. package/src/scripts/tpa.js +265 -8
  252. package/src/scripts/tpo.js +264 -7
  253. package/src/scripts/u.js +489 -7
  254. package/src/scripts/vpush.js +422 -8
  255. package/src/scripts/y.js +267 -7
  256. package/src/utils/common/os.js +94 -2
  257. package/src/utils/ubuntu/apt.js +13 -7
  258. package/src/utils/windows/choco.js +82 -26
  259. package/src/utils/windows/winget.js +89 -27
@@ -0,0 +1,1002 @@
1
+ # Installing Visual Studio Code
2
+
3
+ ## Overview
4
+
5
+ Visual Studio Code (VS Code) is a free, open-source code editor developed by Microsoft. It provides a lightweight yet powerful development environment with built-in support for JavaScript, TypeScript, and Node.js, along with a rich ecosystem of extensions for other languages and tools. VS Code features intelligent code completion (IntelliSense), integrated debugging, Git integration, and a highly customizable interface that adapts to your workflow.
6
+
7
+ VS Code is available for Windows, macOS, and Linux, making it a popular choice for cross-platform development teams. This guide documents the installation process for all platforms supported by DevUtils CLI.
8
+
9
+ ## Prerequisites
10
+
11
+ Before installing Visual Studio Code on any platform, ensure:
12
+
13
+ 1. **Internet connectivity** - Required to download VS Code packages
14
+ 2. **Administrative privileges** - Required for system-wide installation (most platforms)
15
+ 3. **Sufficient disk space** - Approximately 500 MB for installation
16
+ 4. **64-bit operating system** - Required for all platforms (32-bit is deprecated)
17
+
18
+ ## Dependencies
19
+
20
+ ### macOS (Homebrew)
21
+ - **Required:**
22
+ - Homebrew package manager - Install via `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"` or run `dev install homebrew`
23
+ - **Optional:** None
24
+ - **Auto-installed:** None (Homebrew handles all cask dependencies internally)
25
+
26
+ ### Ubuntu (APT/Snap)
27
+ - **Required:**
28
+ - `wget` - Install via `sudo apt-get install -y wget`
29
+ - `gpg` - Install via `sudo apt-get install -y gpg`
30
+ - `apt-transport-https` - Install via `sudo apt-get install -y apt-transport-https`
31
+ - **Optional:** None
32
+ - **Auto-installed:** All VS Code package dependencies are automatically installed by APT (including required libraries for GUI rendering, fonts, etc.)
33
+
34
+ ### Raspberry Pi OS (APT/Snap)
35
+ - **Required:**
36
+ - When using default Raspberry Pi OS repository: None
37
+ - When using Microsoft repository: `wget`, `gpg`, `apt-transport-https` - Install via `sudo apt-get install -y wget gpg apt-transport-https`
38
+ - **Optional:** None
39
+ - **Auto-installed:** All VS Code package dependencies are automatically installed by APT
40
+
41
+ ### Amazon Linux (DNF/YUM)
42
+ - **Required:**
43
+ - `rpm` - Pre-installed on Amazon Linux, RHEL, and CentOS
44
+ - `dnf` (Amazon Linux 2023, RHEL 8+) or `yum` (Amazon Linux 2) - Pre-installed on respective platforms
45
+ - **Optional:** None
46
+ - **Auto-installed:**
47
+ - `libX11`, `libxcb`, `libXcomposite`, `libXcursor`, `libXdamage`, `libXext`, `libXfixes`, `libXi`, `libXrender`, `libXtst` - X11 GUI libraries
48
+ - `alsa-lib` - Audio library
49
+ - Note: These may need manual installation on minimal/headless systems via `sudo dnf install -y libX11 libxcb libXcomposite libXcursor libXdamage libXext libXfixes libXi libXrender libXtst alsa-lib`
50
+
51
+ ### Windows (Chocolatey/winget)
52
+ - **Required:**
53
+ - Chocolatey package manager - Install via PowerShell: `Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))`
54
+ - OR winget (Windows Package Manager) - Pre-installed on Windows 11 and recent Windows 10 versions
55
+ - **Optional:** None
56
+ - **Auto-installed:**
57
+ - .NET Framework (if required by Chocolatey and not already present)
58
+ - Visual C++ Redistributables (if required by VS Code and not already present)
59
+
60
+ ### Git Bash (Manual/Portable)
61
+ - **Required:**
62
+ - Visual Studio Code installed on Windows host (see Windows installation above)
63
+ - Chocolatey package manager (for automated installation via PowerShell interop)
64
+ - **Optional:**
65
+ - `winpty` - Enables TTY compatibility for interactive VS Code features in Git Bash - Pre-installed with Git for Windows
66
+ - **Auto-installed:** None (Git Bash inherits the Windows PATH and accesses the Windows VS Code installation directly)
67
+
68
+ ## Platform-Specific Installation
69
+
70
+ ### macOS (Homebrew)
71
+
72
+ #### Prerequisites
73
+
74
+ - macOS 10.15 (Catalina) or later
75
+ - Homebrew package manager installed
76
+ - Apple Silicon (M1/M2/M3/M4) or Intel processor
77
+
78
+ If Homebrew is not installed, install it first:
79
+
80
+ ```bash
81
+ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
82
+ ```
83
+
84
+ #### Installation Steps
85
+
86
+ Run the following command to install Visual Studio Code:
87
+
88
+ ```bash
89
+ brew install --quiet --cask visual-studio-code
90
+ ```
91
+
92
+ The `--quiet` flag suppresses non-essential output for cleaner installation logs. The `--cask` option specifies the graphical application version.
93
+
94
+ After installation, add the `code` command to your PATH for terminal access. This step is normally automatic on modern versions, but if needed, add manually:
95
+
96
+ **For Zsh (default on macOS):**
97
+
98
+ ```bash
99
+ cat << 'EOF' >> ~/.zprofile
100
+ # Add Visual Studio Code (code)
101
+ export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
102
+ EOF
103
+ source ~/.zprofile
104
+ ```
105
+
106
+ **For Bash:**
107
+
108
+ ```bash
109
+ cat << 'EOF' >> ~/.bash_profile
110
+ # Add Visual Studio Code (code)
111
+ export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
112
+ EOF
113
+ source ~/.bash_profile
114
+ ```
115
+
116
+ #### Verification
117
+
118
+ Confirm the installation succeeded:
119
+
120
+ ```bash
121
+ code --version
122
+ ```
123
+
124
+ Expected output (version numbers may vary):
125
+
126
+ ```
127
+ 1.107.1
128
+ e54c774e0add60467559eb0d1e229c6452cf8447
129
+ x64
130
+ ```
131
+
132
+ Test that VS Code launches correctly:
133
+
134
+ ```bash
135
+ code --help
136
+ ```
137
+
138
+ #### Troubleshooting
139
+
140
+ **Problem**: `code: command not found` after installation
141
+
142
+ **Solution**: The `code` command may not be in your PATH. Either add it manually (see Installation Steps above) or launch VS Code, open the Command Palette (Cmd+Shift+P), and run "Shell Command: Install 'code' command in PATH".
143
+
144
+ **Problem**: "Visual Studio Code.app" is damaged and can't be opened
145
+
146
+ **Solution**: Clear the quarantine attribute:
147
+
148
+ ```bash
149
+ xattr -cr "/Applications/Visual Studio Code.app"
150
+ ```
151
+
152
+ **Problem**: Homebrew reports the cask is already installed
153
+
154
+ **Solution**: Reinstall to update:
155
+
156
+ ```bash
157
+ brew reinstall --cask visual-studio-code
158
+ ```
159
+
160
+ ---
161
+
162
+ ### Ubuntu/Debian (APT)
163
+
164
+ #### Prerequisites
165
+
166
+ - Ubuntu 20.04 (Focal) or later, or Debian 10 (Buster) or later (64-bit)
167
+ - sudo privileges
168
+ - wget and gpg utilities
169
+
170
+ **Important**: Do not use `apt install code` without first adding Microsoft's repository. The package may not exist or may be outdated.
171
+
172
+ #### Installation Steps
173
+
174
+ **Step 1: Install prerequisites and import Microsoft's GPG key**
175
+
176
+ ```bash
177
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
178
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget gpg apt-transport-https
179
+ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
180
+ sudo install -D -o root -g root -m 644 /tmp/microsoft.gpg /usr/share/keyrings/microsoft.gpg
181
+ rm -f /tmp/microsoft.gpg
182
+ ```
183
+
184
+ **Step 2: Add Microsoft's APT repository**
185
+
186
+ ```bash
187
+ echo "Types: deb
188
+ URIs: https://packages.microsoft.com/repos/code
189
+ Suites: stable
190
+ Components: main
191
+ Architectures: amd64,arm64,armhf
192
+ Signed-By: /usr/share/keyrings/microsoft.gpg" | sudo tee /etc/apt/sources.list.d/vscode.sources > /dev/null
193
+ ```
194
+
195
+ **Step 3: Install Visual Studio Code**
196
+
197
+ ```bash
198
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
199
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y code
200
+ ```
201
+
202
+ The `DEBIAN_FRONTEND=noninteractive` environment variable and `-y` flag ensure fully automated installation with no prompts.
203
+
204
+ #### Verification
205
+
206
+ Confirm the installation succeeded:
207
+
208
+ ```bash
209
+ code --version
210
+ ```
211
+
212
+ Expected output (version numbers may vary):
213
+
214
+ ```
215
+ 1.107.1
216
+ e54c774e0add60467559eb0d1e229c6452cf8447
217
+ x64
218
+ ```
219
+
220
+ Verify the package is from Microsoft's repository:
221
+
222
+ ```bash
223
+ apt-cache policy code
224
+ ```
225
+
226
+ The output should show `https://packages.microsoft.com/repos/code` as the source.
227
+
228
+ #### Troubleshooting
229
+
230
+ **Problem**: `E: Unable to locate package code`
231
+
232
+ **Solution**: The repository was not added correctly. Verify the sources file exists and has correct content:
233
+
234
+ ```bash
235
+ cat /etc/apt/sources.list.d/vscode.sources
236
+ ```
237
+
238
+ If missing or malformed, repeat Steps 1 and 2.
239
+
240
+ **Problem**: GPG key import fails with permission errors
241
+
242
+ **Solution**: Ensure wget and gpg are installed, and use a temporary file with proper permissions:
243
+
244
+ ```bash
245
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget gpg
246
+ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /usr/share/keyrings/microsoft.gpg > /dev/null
247
+ ```
248
+
249
+ **Problem**: VS Code does not launch on headless server
250
+
251
+ **Solution**: VS Code requires a graphical display. For remote development, use the Remote-SSH extension from a desktop VS Code instance, or install on a desktop system.
252
+
253
+ **Problem**: Pop!_OS or other distributions install wrong package
254
+
255
+ **Solution**: Create a preferences file to prioritize Microsoft's repository:
256
+
257
+ ```bash
258
+ echo 'Package: code
259
+ Pin: origin "packages.microsoft.com"
260
+ Pin-Priority: 9999' | sudo tee /etc/apt/preferences.d/code
261
+ ```
262
+
263
+ ---
264
+
265
+ ### Raspberry Pi OS (APT)
266
+
267
+ #### Prerequisites
268
+
269
+ - Raspberry Pi OS (64-bit recommended) - Bookworm or Bullseye
270
+ - Raspberry Pi 3B+ or later (64-bit capable hardware recommended)
271
+ - At least 1 GB RAM (2 GB or more recommended for comfortable usage)
272
+ - sudo privileges
273
+
274
+ Verify your architecture:
275
+
276
+ ```bash
277
+ uname -m
278
+ ```
279
+
280
+ - `aarch64` = 64-bit (recommended)
281
+ - `armv7l` = 32-bit (limited performance)
282
+
283
+ #### Installation Steps
284
+
285
+ VS Code is available in the official Raspberry Pi OS APT repository. Run these commands:
286
+
287
+ ```bash
288
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
289
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y code
290
+ ```
291
+
292
+ The Raspberry Pi OS repository includes ARM-compatible builds of VS Code, eliminating the need to manually add Microsoft's repository.
293
+
294
+ **Alternative for latest version (if Raspberry Pi OS repo is outdated):**
295
+
296
+ If you need the latest VS Code version, add Microsoft's repository instead:
297
+
298
+ ```bash
299
+ # Install prerequisites
300
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
301
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget gpg apt-transport-https
302
+
303
+ # Import GPG key
304
+ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
305
+ sudo install -D -o root -g root -m 644 /tmp/microsoft.gpg /usr/share/keyrings/microsoft.gpg
306
+ rm -f /tmp/microsoft.gpg
307
+
308
+ # Add repository
309
+ echo "Types: deb
310
+ URIs: https://packages.microsoft.com/repos/code
311
+ Suites: stable
312
+ Components: main
313
+ Architectures: arm64,armhf
314
+ Signed-By: /usr/share/keyrings/microsoft.gpg" | sudo tee /etc/apt/sources.list.d/vscode.sources > /dev/null
315
+
316
+ # Install
317
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
318
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y code
319
+ ```
320
+
321
+ #### Verification
322
+
323
+ Confirm the installation succeeded:
324
+
325
+ ```bash
326
+ code --version
327
+ ```
328
+
329
+ Expected output (version numbers may vary):
330
+
331
+ ```
332
+ 1.107.1
333
+ e54c774e0add60467559eb0d1e229c6452cf8447
334
+ arm64
335
+ ```
336
+
337
+ Launch VS Code:
338
+
339
+ ```bash
340
+ code
341
+ ```
342
+
343
+ #### Troubleshooting
344
+
345
+ **Problem**: VS Code is very slow or unresponsive
346
+
347
+ **Solution**: Disable hardware acceleration. Open VS Code, press Ctrl+Shift+P, type "Preferences: Configure Runtime Arguments", and add:
348
+
349
+ ```json
350
+ {
351
+ "disable-hardware-acceleration": true
352
+ }
353
+ ```
354
+
355
+ Alternatively, launch with the flag:
356
+
357
+ ```bash
358
+ code --disable-gpu
359
+ ```
360
+
361
+ **Problem**: Out of memory errors
362
+
363
+ **Solution**: Close other applications and consider adding swap space:
364
+
365
+ ```bash
366
+ sudo fallocate -l 2G /swapfile
367
+ sudo chmod 600 /swapfile
368
+ sudo mkswap /swapfile
369
+ sudo swapon /swapfile
370
+ echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
371
+ ```
372
+
373
+ **Problem**: VS Code not found in Programming menu
374
+
375
+ **Solution**: Refresh the desktop environment:
376
+
377
+ ```bash
378
+ lxpanelctl restart
379
+ ```
380
+
381
+ **Problem**: Display issues on older Raspberry Pi models
382
+
383
+ **Solution**: Use the 32-bit version of Raspberry Pi OS for Raspberry Pi 3B or earlier, and ensure GPU memory is set appropriately in `raspi-config`.
384
+
385
+ ---
386
+
387
+ ### Amazon Linux/RHEL (DNF/YUM)
388
+
389
+ #### Prerequisites
390
+
391
+ - Amazon Linux 2023 (AL2023), Amazon Linux 2 (AL2), RHEL 8+, or CentOS 8+
392
+ - sudo privileges
393
+ - 64-bit system
394
+
395
+ **Note**: Amazon Linux 2023 uses DNF as the package manager. Amazon Linux 2 uses YUM. This guide uses DNF commands; replace `dnf` with `yum` for AL2.
396
+
397
+ #### Installation Steps
398
+
399
+ **Step 1: Import Microsoft's GPG key and add the repository**
400
+
401
+ ```bash
402
+ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
403
+ echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null
404
+ ```
405
+
406
+ **Step 2: Install Visual Studio Code**
407
+
408
+ For Amazon Linux 2023 and RHEL 8+ (DNF):
409
+
410
+ ```bash
411
+ sudo dnf check-update || true
412
+ sudo dnf install -y code
413
+ ```
414
+
415
+ For Amazon Linux 2 (YUM):
416
+
417
+ ```bash
418
+ sudo yum check-update || true
419
+ sudo yum install -y code
420
+ ```
421
+
422
+ The `|| true` ensures the command does not fail if there are no updates (check-update returns exit code 100 when updates are available).
423
+
424
+ #### Verification
425
+
426
+ Confirm the installation succeeded:
427
+
428
+ ```bash
429
+ code --version
430
+ ```
431
+
432
+ Expected output (version numbers may vary):
433
+
434
+ ```
435
+ 1.107.1
436
+ e54c774e0add60467559eb0d1e229c6452cf8447
437
+ x64
438
+ ```
439
+
440
+ Verify the repository is configured:
441
+
442
+ ```bash
443
+ dnf repolist | grep code
444
+ ```
445
+
446
+ #### Troubleshooting
447
+
448
+ **Problem**: `No package code available`
449
+
450
+ **Solution**: The repository was not added correctly. Verify the repo file:
451
+
452
+ ```bash
453
+ cat /etc/yum.repos.d/vscode.repo
454
+ ```
455
+
456
+ Ensure it contains the `[code]` section with the correct baseurl.
457
+
458
+ **Problem**: GPG key import fails
459
+
460
+ **Solution**: Import the key manually with curl:
461
+
462
+ ```bash
463
+ curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo rpm --import -
464
+ ```
465
+
466
+ **Problem**: VS Code fails to launch with display errors
467
+
468
+ **Solution**: Ensure X11 forwarding is enabled if connecting remotely, or use the Remote-SSH extension from a desktop installation.
469
+
470
+ **Problem**: Dependency conflicts on older systems
471
+
472
+ **Solution**: Install required libraries:
473
+
474
+ ```bash
475
+ sudo dnf install -y libX11 libxcb libXcomposite libXcursor libXdamage libXext libXfixes libXi libXrender libXtst alsa-lib
476
+ ```
477
+
478
+ ---
479
+
480
+ ### Windows (Chocolatey)
481
+
482
+ #### Prerequisites
483
+
484
+ - Windows 10 version 1709 or later (64-bit), or Windows 11
485
+ - Administrator PowerShell or Command Prompt
486
+ - Chocolatey package manager installed
487
+
488
+ If Chocolatey is not installed, install it first by running this command in an Administrator PowerShell:
489
+
490
+ ```powershell
491
+ Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
492
+ ```
493
+
494
+ #### Installation Steps
495
+
496
+ Run the following command in an Administrator PowerShell or Command Prompt:
497
+
498
+ ```powershell
499
+ choco install vscode -y
500
+ ```
501
+
502
+ The `-y` flag automatically confirms all prompts, enabling fully non-interactive installation.
503
+
504
+ The Chocolatey package automatically:
505
+ - Adds VS Code to the system PATH
506
+ - Creates "Open with Code" context menu entries for files and folders
507
+ - Does NOT start VS Code after installation
508
+ - Does NOT create a desktop icon (by default)
509
+
510
+ **To customize the installation:**
511
+
512
+ ```powershell
513
+ choco install vscode -y --params "/NoContextMenuFiles /NoContextMenuFolders"
514
+ ```
515
+
516
+ Available parameters:
517
+ - `/NoDesktopIcon` - Skip creating a desktop shortcut
518
+ - `/NoQuicklaunchIcon` - Skip Quick Launch icon
519
+ - `/NoContextMenuFiles` - Remove "Open with Code" from file context menu
520
+ - `/NoContextMenuFolders` - Remove "Open with Code" from folder context menu
521
+ - `/DontAddToPath` - Do not add to system PATH
522
+
523
+ #### Verification
524
+
525
+ Open a **new** Command Prompt or PowerShell window (to pick up PATH changes), then run:
526
+
527
+ ```powershell
528
+ code --version
529
+ ```
530
+
531
+ Expected output (version numbers may vary):
532
+
533
+ ```
534
+ 1.107.1
535
+ e54c774e0add60467559eb0d1e229c6452cf8447
536
+ x64
537
+ ```
538
+
539
+ #### Troubleshooting
540
+
541
+ **Problem**: `code: The term 'code' is not recognized`
542
+
543
+ **Solution**: Open a new terminal window to refresh the PATH. If the problem persists, add VS Code to PATH manually:
544
+
545
+ ```powershell
546
+ $vscodePath = "$env:LOCALAPPDATA\Programs\Microsoft VS Code\bin"
547
+ [Environment]::SetEnvironmentVariable("Path", $env:Path + ";$vscodePath", "User")
548
+ ```
549
+
550
+ **Problem**: Installation requires restart
551
+
552
+ **Solution**: Some Windows updates may require a restart. Chocolatey will notify you if this is needed:
553
+
554
+ ```powershell
555
+ choco install vscode -y
556
+ shutdown /r /t 60 /c "Restarting to complete VS Code installation"
557
+ ```
558
+
559
+ **Problem**: Chocolatey installation blocked by antivirus
560
+
561
+ **Solution**: Temporarily disable real-time scanning or add an exception for the Chocolatey directory (`C:\ProgramData\chocolatey`).
562
+
563
+ ---
564
+
565
+ ### Windows (winget)
566
+
567
+ #### Prerequisites
568
+
569
+ - Windows 10 version 1809 or later (64-bit), or Windows 11
570
+ - Windows Package Manager (winget) - Pre-installed on Windows 11 and Windows 10 (recent versions)
571
+
572
+ Verify winget is available:
573
+
574
+ ```powershell
575
+ winget --version
576
+ ```
577
+
578
+ #### Installation Steps
579
+
580
+ Run the following command in PowerShell or Command Prompt:
581
+
582
+ ```powershell
583
+ winget install --id Microsoft.VisualStudioCode --silent --accept-package-agreements --accept-source-agreements
584
+ ```
585
+
586
+ The flags ensure fully non-interactive installation:
587
+ - `--id Microsoft.VisualStudioCode` - Exact package identifier
588
+ - `--silent` - No installation UI
589
+ - `--accept-package-agreements` - Automatically accept license agreements
590
+ - `--accept-source-agreements` - Automatically accept source repository agreements
591
+
592
+ **For custom installation options:**
593
+
594
+ ```powershell
595
+ winget install --id Microsoft.VisualStudioCode --silent --accept-package-agreements --accept-source-agreements --override "/VERYSILENT /SP- /MERGETASKS=!runcode,addcontextmenufiles,addcontextmenufolders,associatewithfiles,addtopath"
596
+ ```
597
+
598
+ The `/MERGETASKS` parameter controls which installation tasks are performed. Note the exact spelling - a common typo is "MERGETAKS" which is silently ignored.
599
+
600
+ #### Verification
601
+
602
+ Open a **new** terminal window, then run:
603
+
604
+ ```powershell
605
+ code --version
606
+ ```
607
+
608
+ Expected output (version numbers may vary):
609
+
610
+ ```
611
+ 1.107.1
612
+ e54c774e0add60467559eb0d1e229c6452cf8447
613
+ x64
614
+ ```
615
+
616
+ #### Troubleshooting
617
+
618
+ **Problem**: `No package found matching input criteria`
619
+
620
+ **Solution**: Update the winget source:
621
+
622
+ ```powershell
623
+ winget source update
624
+ winget install --id Microsoft.VisualStudioCode --silent --accept-package-agreements --accept-source-agreements
625
+ ```
626
+
627
+ **Problem**: Installation hangs or times out
628
+
629
+ **Solution**: Try the User scope installation:
630
+
631
+ ```powershell
632
+ winget install --id Microsoft.VisualStudioCode --scope user --silent --accept-package-agreements --accept-source-agreements
633
+ ```
634
+
635
+ ---
636
+
637
+ ### WSL (Ubuntu)
638
+
639
+ #### Prerequisites
640
+
641
+ - Windows 10 version 2004 or later, or Windows 11
642
+ - WSL 2 enabled with Ubuntu distribution installed
643
+ - sudo privileges within WSL
644
+
645
+ **Recommended Approach**: Install VS Code on Windows and use the Remote-WSL extension. This is Microsoft's recommended workflow and provides the best performance.
646
+
647
+ #### Installation Steps
648
+
649
+ **Recommended: VS Code on Windows with Remote-WSL**
650
+
651
+ 1. Install VS Code on Windows using Chocolatey or winget (see Windows sections above)
652
+
653
+ 2. Launch VS Code from within WSL:
654
+
655
+ ```bash
656
+ code .
657
+ ```
658
+
659
+ On first run, VS Code automatically downloads and installs the VS Code Server in WSL, enabling seamless development.
660
+
661
+ **Alternative: Native VS Code in WSL (for GUI-enabled WSL)**
662
+
663
+ If you have WSLg (Windows 11) or an X server configured, you can install VS Code natively in WSL:
664
+
665
+ ```bash
666
+ # Install prerequisites
667
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
668
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget gpg apt-transport-https
669
+
670
+ # Import GPG key
671
+ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
672
+ sudo install -D -o root -g root -m 644 /tmp/microsoft.gpg /usr/share/keyrings/microsoft.gpg
673
+ rm -f /tmp/microsoft.gpg
674
+
675
+ # Add repository
676
+ echo "Types: deb
677
+ URIs: https://packages.microsoft.com/repos/code
678
+ Suites: stable
679
+ Components: main
680
+ Architectures: amd64,arm64,armhf
681
+ Signed-By: /usr/share/keyrings/microsoft.gpg" | sudo tee /etc/apt/sources.list.d/vscode.sources > /dev/null
682
+
683
+ # Install
684
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
685
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y code
686
+ ```
687
+
688
+ #### Verification
689
+
690
+ For the recommended approach (VS Code on Windows):
691
+
692
+ ```bash
693
+ code --version
694
+ ```
695
+
696
+ This should launch the Windows VS Code and display version information.
697
+
698
+ For native WSL installation:
699
+
700
+ ```bash
701
+ code --version
702
+ ```
703
+
704
+ Expected output (version numbers may vary):
705
+
706
+ ```
707
+ 1.107.1
708
+ e54c774e0add60467559eb0d1e229c6452cf8447
709
+ x64
710
+ ```
711
+
712
+ #### Troubleshooting
713
+
714
+ **Problem**: `code` command not found in WSL
715
+
716
+ **Solution**: For the Windows approach, ensure VS Code is installed on Windows and the WSL integration is enabled. Open VS Code on Windows, install the "Remote - WSL" extension, and restart your WSL terminal.
717
+
718
+ **Problem**: VS Code opens but cannot access WSL files
719
+
720
+ **Solution**: Launch VS Code from within the WSL terminal:
721
+
722
+ ```bash
723
+ cd /home/user/project
724
+ code .
725
+ ```
726
+
727
+ **Problem**: GUI does not display for native WSL installation
728
+
729
+ **Solution**: Ensure WSLg is enabled (Windows 11) or configure an X server (Windows 10). For Windows 11:
730
+
731
+ ```powershell
732
+ wsl --update
733
+ ```
734
+
735
+ **Problem**: Extensions do not work in WSL
736
+
737
+ **Solution**: Extensions must be installed separately in the WSL context. Open VS Code in WSL, go to Extensions, and click "Install in WSL: Ubuntu" for each extension.
738
+
739
+ ---
740
+
741
+ ### Git Bash (Windows Installation)
742
+
743
+ #### Prerequisites
744
+
745
+ - Windows 10 or Windows 11 (64-bit)
746
+ - Git Bash installed (comes with Git for Windows)
747
+ - VS Code installed on Windows (see Windows sections above)
748
+
749
+ **Note**: Git Bash on Windows does not require a separate VS Code installation. Git Bash inherits the Windows PATH, so once VS Code is installed on Windows, the `code` command is automatically available in Git Bash.
750
+
751
+ #### Installation Steps
752
+
753
+ 1. Install VS Code on Windows using Chocolatey (recommended):
754
+
755
+ ```powershell
756
+ # Run from Administrator PowerShell or Command Prompt
757
+ choco install vscode -y
758
+ ```
759
+
760
+ 2. Open Git Bash - the `code` command will be available
761
+
762
+ No additional configuration is typically required as Git Bash inherits the Windows PATH.
763
+
764
+ #### Verification
765
+
766
+ In Git Bash, confirm VS Code is accessible:
767
+
768
+ ```bash
769
+ code --version
770
+ ```
771
+
772
+ Expected output (version numbers may vary):
773
+
774
+ ```
775
+ 1.107.1
776
+ e54c774e0add60467559eb0d1e229c6452cf8447
777
+ x64
778
+ ```
779
+
780
+ Open a project:
781
+
782
+ ```bash
783
+ code .
784
+ ```
785
+
786
+ #### Troubleshooting
787
+
788
+ **Problem**: `code: command not found` in Git Bash
789
+
790
+ **Solution**: VS Code may not be in PATH. Add it manually to your `~/.bashrc`:
791
+
792
+ ```bash
793
+ echo 'export PATH="$PATH:/c/Users/$USER/AppData/Local/Programs/Microsoft VS Code/bin"' >> ~/.bashrc
794
+ source ~/.bashrc
795
+ ```
796
+
797
+ If VS Code is installed system-wide:
798
+
799
+ ```bash
800
+ echo 'export PATH="$PATH:/c/Program Files/Microsoft VS Code/bin"' >> ~/.bashrc
801
+ source ~/.bashrc
802
+ ```
803
+
804
+ **Problem**: `the input device is not a TTY` when using integrated terminal features
805
+
806
+ **Solution**: Git Bash's mintty terminal has TTY compatibility issues. Use `winpty` prefix for interactive commands:
807
+
808
+ ```bash
809
+ winpty code --wait
810
+ ```
811
+
812
+ Or add an alias to your `~/.bashrc`:
813
+
814
+ ```bash
815
+ echo 'alias code="winpty code"' >> ~/.bashrc
816
+ source ~/.bashrc
817
+ ```
818
+
819
+ **Problem**: File paths not recognized correctly
820
+
821
+ **Solution**: Git Bash may convert Unix-style paths. Use Windows-style paths or escape forward slashes:
822
+
823
+ ```bash
824
+ # Use Windows path
825
+ code "C:\Users\username\project"
826
+
827
+ # Or escape the path
828
+ code //c/Users/username/project
829
+ ```
830
+
831
+ ---
832
+
833
+ ## Post-Installation Configuration
834
+
835
+ After installing VS Code on any platform, consider these recommended configurations.
836
+
837
+ ### Installing Essential Extensions
838
+
839
+ Install commonly used extensions from the command line:
840
+
841
+ ```bash
842
+ # Install essential extensions non-interactively
843
+ code --install-extension ms-vscode.vscode-typescript-next
844
+ code --install-extension esbenp.prettier-vscode
845
+ code --install-extension dbaeumer.vscode-eslint
846
+ code --install-extension eamodio.gitlens
847
+ ```
848
+
849
+ ### Configuring Settings Sync
850
+
851
+ VS Code can synchronize settings across devices using your Microsoft or GitHub account. Enable in VS Code:
852
+
853
+ 1. Click the gear icon (Settings) in the bottom-left
854
+ 2. Select "Turn on Settings Sync..."
855
+ 3. Sign in with Microsoft or GitHub
856
+
857
+ ### Setting Default Editor for Git
858
+
859
+ Configure VS Code as Git's default editor:
860
+
861
+ ```bash
862
+ git config --global core.editor "code --wait"
863
+ ```
864
+
865
+ Configure VS Code as the default diff and merge tool:
866
+
867
+ ```bash
868
+ git config --global diff.tool vscode
869
+ git config --global difftool.vscode.cmd 'code --wait --diff $LOCAL $REMOTE'
870
+ git config --global merge.tool vscode
871
+ git config --global mergetool.vscode.cmd 'code --wait $MERGED'
872
+ ```
873
+
874
+ ### Enabling Auto-Update (Linux)
875
+
876
+ On Linux systems using APT or DNF, VS Code updates automatically through the system package manager. To update manually:
877
+
878
+ **APT (Ubuntu/Debian/Raspberry Pi):**
879
+
880
+ ```bash
881
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
882
+ sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y code
883
+ ```
884
+
885
+ **DNF (Amazon Linux/RHEL):**
886
+
887
+ ```bash
888
+ sudo dnf upgrade -y code
889
+ ```
890
+
891
+ ---
892
+
893
+ ## Common Issues
894
+
895
+ ### Issue: VS Code Opens Blank or White Screen
896
+
897
+ **Symptoms**: VS Code window opens but shows blank content
898
+
899
+ **Solutions**:
900
+
901
+ Disable GPU acceleration:
902
+
903
+ ```bash
904
+ code --disable-gpu
905
+ ```
906
+
907
+ To make permanent, add to VS Code settings:
908
+
909
+ 1. Open Command Palette (Ctrl+Shift+P or Cmd+Shift+P)
910
+ 2. Search "Preferences: Configure Runtime Arguments"
911
+ 3. Add: `"disable-hardware-acceleration": true`
912
+
913
+ ### Issue: High CPU Usage
914
+
915
+ **Symptoms**: VS Code consumes excessive CPU, especially with TypeScript projects
916
+
917
+ **Solutions**:
918
+
919
+ Exclude large folders from file watching in settings.json:
920
+
921
+ ```json
922
+ {
923
+ "files.watcherExclude": {
924
+ "**/node_modules/**": true,
925
+ "**/.git/**": true
926
+ }
927
+ }
928
+ ```
929
+
930
+ ### Issue: Extensions Not Loading
931
+
932
+ **Symptoms**: Extensions fail to activate or load
933
+
934
+ **Solutions**:
935
+
936
+ Clear the extension cache:
937
+
938
+ ```bash
939
+ # Linux/macOS
940
+ rm -rf ~/.vscode/extensions
941
+
942
+ # Windows (PowerShell)
943
+ Remove-Item -Recurse -Force "$env:USERPROFILE\.vscode\extensions"
944
+ ```
945
+
946
+ Reinstall extensions after clearing.
947
+
948
+ ### Issue: Cannot Save Files (Permission Denied)
949
+
950
+ **Symptoms**: Error saving files in certain directories
951
+
952
+ **Solutions**:
953
+
954
+ Check file ownership and permissions:
955
+
956
+ ```bash
957
+ ls -la filename
958
+ ```
959
+
960
+ For system directories, consider using the "Save as Root" extension or fixing permissions:
961
+
962
+ ```bash
963
+ sudo chown -R $USER:$USER /path/to/directory
964
+ ```
965
+
966
+ ### Issue: Integrated Terminal Not Working
967
+
968
+ **Symptoms**: Terminal fails to open or shows errors
969
+
970
+ **Solutions**:
971
+
972
+ Reset terminal settings:
973
+
974
+ 1. Open settings.json
975
+ 2. Remove any terminal-related customizations
976
+ 3. Restart VS Code
977
+
978
+ Set default shell explicitly:
979
+
980
+ ```json
981
+ {
982
+ "terminal.integrated.defaultProfile.linux": "bash",
983
+ "terminal.integrated.defaultProfile.osx": "zsh",
984
+ "terminal.integrated.defaultProfile.windows": "PowerShell"
985
+ }
986
+ ```
987
+
988
+ ---
989
+
990
+ ## References
991
+
992
+ - [Visual Studio Code Official Website](https://code.visualstudio.com/)
993
+ - [VS Code Documentation](https://code.visualstudio.com/docs)
994
+ - [VS Code on macOS](https://code.visualstudio.com/docs/setup/mac)
995
+ - [VS Code on Linux](https://code.visualstudio.com/docs/setup/linux)
996
+ - [VS Code on Windows](https://code.visualstudio.com/docs/setup/windows)
997
+ - [VS Code on Raspberry Pi](https://code.visualstudio.com/docs/setup/raspberry-pi)
998
+ - [Homebrew Cask: visual-studio-code](https://formulae.brew.sh/cask/visual-studio-code)
999
+ - [Chocolatey Package: vscode](https://community.chocolatey.org/packages/vscode)
1000
+ - [Winget Package: Microsoft.VisualStudioCode](https://winget.run/pkg/Microsoft/VisualStudioCode)
1001
+ - [VS Code Remote Development](https://code.visualstudio.com/docs/remote/remote-overview)
1002
+ - [VS Code Release Notes](https://code.visualstudio.com/updates)