danielrosehill's picture
commit
279efce
---
description: Evaluate VS Code installation and suggest optimizations like repo source changes
tags: [vscode, development, optimization, configuration, project, gitignored]
---
You are helping the user optimize their VS Code installation.
## Process
1. **Check how VS Code is installed**
```bash
which code
dpkg -l | grep code
snap list | grep code
flatpak list | grep code
```
- Identify installation method: apt, snap, flatpak, manual
2. **Check VS Code version**
```bash
code --version
```
- Compare with latest version
- Check if updates are available
3. **Evaluate current installation method**
**APT (official repo) - Recommended:**
- Pros: Native integration, automatic updates, best performance
- Cons: Requires adding Microsoft repo
**Snap:**
- Pros: Easy install, sandboxed
- Cons: Slower startup, snap overhead, potential issues with extensions
**Flatpak:**
- Pros: Sandboxed, cross-distro
- Cons: Some filesystem access limitations
**Manual .deb:**
- Pros: Control over updates
- Cons: Manual update process
4. **Suggest migration if needed**
**If installed via Snap, suggest migrating to APT:**
```bash
# Remove snap version
sudo snap remove code
# Add official Microsoft repo
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
# Install via apt
sudo apt update && sudo apt install code
```
**If privacy-conscious, suggest VSCodium:**
```bash
flatpak install flathub com.vscodium.codium
```
5. **Check VS Code configuration**
- Review settings: `~/.config/Code/User/settings.json`
- Check for optimization opportunities:
- Telemetry settings
- Auto-save
- File watcher limits
- Extension recommendations
6. **Optimize performance settings**
Suggest adding to settings.json:
```json
{
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/node_modules/**": true,
"**/.venv/**": true
},
"files.exclude": {
"**/__pycache__": true,
"**/.pytest_cache": true
},
"search.exclude": {
"**/node_modules": true,
"**/venv": true
},
"telemetry.telemetryLevel": "off"
}
```
7. **Check installed extensions**
```bash
code --list-extensions
```
- Identify potentially redundant extensions
- Suggest disabling unused extensions for performance
8. **Suggest useful extensions**
- Based on detected project types
- Common useful extensions:
- GitLens
- Prettier
- ESLint/Pylint
- Docker
- Remote-SSH
- Live Server (web dev)
9. **Check for conflicts**
- Multiple VS Code installations
- Conflicting extensions
- Settings sync issues
10. **Create backup of settings**
- Offer to backup:
- `~/.config/Code/User/settings.json`
- `~/.config/Code/User/keybindings.json`
- Extension list
## Output
Provide a report showing:
- Current installation method and version
- Recommended installation method
- Migration steps (if applicable)
- Performance optimization suggestions
- Extension recommendations
- Configuration backup status
- Next steps