Skip to content

Commit 416ca6d

Browse files
author
Tajudeen
committed
Update README with troubleshooting info and clean up window visibility fix script
- Add troubleshooting section to README with macOS blank screen fix - Remove perl strategy from apply-window-visibility-fix.sh (has escaping issues) - Keep Python and sed strategies which are more reliable
1 parent 99f64f2 commit 416ca6d

2 files changed

Lines changed: 10 additions & 31 deletions

File tree

‎README.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,12 @@ The `.patch` files from VSCodium get rid of telemetry in CortexIDE (the core pu
1414

1515
- If you want to build and compile CortexIDE yourself, you just need to fork this repo and run the GitHub Workflows. If you want to handle auto updates too, just search for caps-sensitive "CortexIDE" and "cortexide" and replace them with your own repo.
1616

17+
## Troubleshooting
18+
19+
If you encounter issues after building and installing CortexIDE:
20+
21+
- **macOS blank screen**: Run `./fix_macos_blank_screen.sh` to diagnose and fix GPU cache issues
22+
- See [docs/troubleshooting.md](docs/troubleshooting.md) for detailed troubleshooting steps
23+
1724
## Rebasing
1825
- We often need to rebase `cortexide` and `cortexide-builder` onto `vscode` and `vscodium` to keep our build pipeline working when deprecations happen, but this is pretty easy. All the changes we made in `cortexide/` are commented with the caps-sensitive word "CortexIDE" (except our images, which need to be done manually), so rebasing just involves copying the `vscode/` repo and searching "CortexIDE" to re-make all our changes. The same exact thing holds for copying the `vscodium/` repo onto this repo and searching "CortexIDE" and "cortexide" to keep our changes. Just make sure the vscode and vscodium versions align.

‎patches/osx/apply-window-visibility-fix.sh‎

Lines changed: 3 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -177,37 +177,9 @@ PYTHON_SCRIPT
177177
fi
178178
fi
179179

180-
# Strategy 2: Use perl with flexible pattern matching
181-
if [[ "${INSERTION_PATTERN}" == "this\._win\.loadURL" ]]; then
182-
# New structure: Insert after loadURL
183-
if perl -i.bak -0pe "
184-
if (/(this\._win\.loadURL\([^)]+\);\s*)(\n\s*\/\/ Remember that we did load)/s) {
185-
\$_ = \$` . \$1 . \"\n${FIX_CODE}\" . \$2 . \$';
186-
} elsif (/(this\._win\.loadURL\([^)]+\);)(\s*\n)/s) {
187-
\$_ = \$` . \$1 . \"\n${FIX_CODE}\" . \$2 . \$';
188-
}
189-
" "${WINDOW_TS_FILE}" 2>/dev/null; then
190-
if grep -q "Fix for macOS blank screen" "${WINDOW_TS_FILE}"; then
191-
echo "✓ Window visibility fix applied successfully (perl strategy - new structure)"
192-
rm -f "${WINDOW_TS_FILE}.bak"
193-
exit 0
194-
fi
195-
fi
196-
else
197-
# Old structure: Insert before return this.win
198-
if perl -i.bak -0pe "
199-
if (/(this\.win\.webContents\.send\(['\"]vscode:windowConfiguration['\"],\s*configuration\);\s*\}\s*)(\n\s*return\s+this\.win;)/s) {
200-
\$_ = \$` . \$1 . \"\n${FIX_CODE}\" . \$2 . \$';
201-
}
202-
" "${WINDOW_TS_FILE}" 2>/dev/null; then
203-
if grep -q "Fix for macOS blank screen" "${WINDOW_TS_FILE}"; then
204-
echo "✓ Window visibility fix applied successfully (perl strategy - old structure)"
205-
rm -f "${WINDOW_TS_FILE}.bak"
206-
exit 0
207-
fi
208-
fi
209-
fi
210-
180+
# Strategy 2: Use perl with flexible pattern matching (skip - use Python or sed instead)
181+
# Perl has escaping issues with backticks in bash, so we skip this strategy
182+
# Python (Strategy 1) and sed (Strategy 3) are more reliable
211183
# Strategy 3: Use sed as final fallback
212184
if [[ "${INSERTION_PATTERN}" == "this\._win\.loadURL" ]]; then
213185
# New structure: Insert after loadURL line

0 commit comments

Comments
 (0)