File size: 3,446 Bytes
292d92c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
---
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