Question
Environment:
- Extension: tizen.vscode-tizen-csharp v10.3.0
- OS: macOS (Apple Silicon)
- VS Code: Latest stable version
Issues:
- On every VS Code launch, a macOS system password dialog (osascript) appears requesting administrator privileges
- A notification "⏳ Installing tizen dev packages..." appears, reinstalling already installed packages
This occurs even when no Tizen project is open, making the extension inconvenient for persistent use.
Root Cause Analysis:
-
The SDB server start unnecessarily requires admin privileges on macOS:
- The
startSDBServer()method inserver/dist/index.jsusesosascriptwith admin privileges - However,
sdb start-serverworks fine without elevation
- The
-
Dev package installation runs unconditionally on every launch:
activate()inextension.tscallsinitializeServerAsync(), which triggersstartInstallDevPkgsWithNotification()- No check exists for already installed packages
Expected Behavior:
sdb start-servershouldn't require admin privileges on macOS- Dev package installation should skip if packages exist
- Extension should avoid heavy initialization without Tizen projects
Answer
Problem Understanding
The VS Code Tizen extension was causing two main issues on macOS:
- Unnecessary admin privilege requests for SDB server startup
- Redundant package installations on every launch
Solution Methods
-
Official Fix:
- Update to extension version 10.3.1 which resolves the package reinstallation issue
- The update should automatically appear in VS Code's extension marketplace
-
Temporary Workaround:
- Modify the extension files manually:
// In .tizen-extension-platform/server/dist/index.js async function shellFileUpdate(shellFile, key, value) { return; // Prevent modifying shell rc files } if (false && getOSType() === Constants.OS_TYPE.MACOS) // Disable macOS-specific admin requirement
- Modify the extension files manually:
Additional Tips
- If the update doesn't appear immediately, check back later as extension updates may take time to propagate
- For persistent issues, consider reporting them through the official GitHub repository
- When modifying extension files manually, remember that changes may be overwritten by future updates