162 lines
3.7 KiB
Markdown
162 lines
3.7 KiB
Markdown
# Testing Plan for Cursor AppImage Fix
|
|
|
|
## Overview
|
|
|
|
This document outlines the steps to test the updated Cursor AppImage wrapper configuration to ensure the native module loading issues are resolved.
|
|
|
|
## Prerequisites
|
|
|
|
1. The updated `home.nix` file with the new Cursor wrapper configuration
|
|
2. A working NixOS system with flakes enabled
|
|
3. Sudo access to rebuild the system
|
|
|
|
## Testing Steps
|
|
|
|
### 1. Apply the Configuration Changes
|
|
|
|
1. Open your `home.nix` file
|
|
2. Replace the existing `cursorAppImage` section with the updated version from `cursor-fix-solution.md`
|
|
3. Save the file
|
|
|
|
### 2. Rebuild the System
|
|
|
|
```bash
|
|
# Navigate to your flake directory
|
|
cd /path/to/cursor-flake
|
|
|
|
# Rebuild the system with the updated configuration
|
|
sudo nixos-rebuild switch --flake .#cursor-system
|
|
```
|
|
|
|
Expected output:
|
|
- The build should complete without errors
|
|
- You should see the new Cursor package being built
|
|
|
|
### 3. Test Basic Functionality
|
|
|
|
```bash
|
|
# Test that Cursor can be invoked
|
|
cursor --version
|
|
```
|
|
|
|
Expected output:
|
|
- Should display the Cursor version (1.3.9)
|
|
- No error messages about missing modules
|
|
|
|
### 4. Test GUI Launch
|
|
|
|
```bash
|
|
# Launch Cursor GUI
|
|
cursor
|
|
```
|
|
|
|
Expected behavior:
|
|
- Cursor should launch without the keymapping errors
|
|
- The application should be responsive
|
|
- No console errors about native modules
|
|
|
|
### 5. Test Keyboard Functionality
|
|
|
|
Within the Cursor application:
|
|
1. Try typing in the editor
|
|
2. Test different keyboard layouts if applicable
|
|
3. Use keyboard shortcuts (Ctrl+C, Ctrl+V, etc.)
|
|
|
|
Expected behavior:
|
|
- Keyboard input should work normally
|
|
- No lag or errors when typing
|
|
- Keyboard shortcuts should function correctly
|
|
|
|
### 6. Test Project Operations
|
|
|
|
1. Open an existing project or create a new one
|
|
2. Try basic file operations (create, edit, save)
|
|
3. Test the AI features if available
|
|
|
|
Expected behavior:
|
|
- All operations should work without errors
|
|
- No crashes or unexpected behavior
|
|
|
|
### 7. Verify Environment Variables
|
|
|
|
```bash
|
|
# Check that environment variables are set correctly
|
|
printenv | grep -E "(CURSOR|ELECTRON|NODE)"
|
|
```
|
|
|
|
Expected output:
|
|
- Should show the environment variables we added
|
|
- Values should match what we specified in the configuration
|
|
|
|
### 8. Clean Cache Test
|
|
|
|
```bash
|
|
# Clear AppImage cache to test fresh start
|
|
rm -rf ~/.cache/appimage-run/*
|
|
|
|
# Restart Cursor
|
|
cursor --version
|
|
```
|
|
|
|
Expected behavior:
|
|
- Should work correctly even with cleared cache
|
|
- No errors about missing modules
|
|
|
|
## Success Criteria
|
|
|
|
The fix is considered successful if:
|
|
|
|
1. [ ] `cursor --version` runs without errors
|
|
2. [ ] Cursor GUI launches without keymapping errors
|
|
3. [ ] Keyboard input works normally in the editor
|
|
4. [ ] No native module loading errors in the console
|
|
5. [ ] All basic functionality works as expected
|
|
6. [ ] Application remains stable during extended use
|
|
|
|
## Troubleshooting
|
|
|
|
If issues persist after applying the fix:
|
|
|
|
1. Check the system logs:
|
|
```bash
|
|
journalctl -xe
|
|
```
|
|
|
|
2. Try running with additional debugging:
|
|
```bash
|
|
cursor --enable-logging --v=1
|
|
```
|
|
|
|
3. Verify the AppImage is being extracted correctly:
|
|
```bash
|
|
ls -la ~/.cache/appimage-run/
|
|
```
|
|
|
|
4. Check library dependencies:
|
|
```bash
|
|
ldd ~/.cache/appimage-run/*/usr/lib/libkeymapping.so
|
|
```
|
|
|
|
## Rollback Plan
|
|
|
|
If the updated configuration causes issues:
|
|
|
|
1. Restore the previous `home.nix` file
|
|
2. Rebuild the system:
|
|
```bash
|
|
sudo nixos-rebuild switch --flake .#cursor-system
|
|
```
|
|
|
|
3. Clear the AppImage cache:
|
|
```bash
|
|
rm -rf ~/.cache/appimage-run/*
|
|
```
|
|
|
|
## Additional Validation
|
|
|
|
Once the basic tests pass, perform these additional checks:
|
|
|
|
1. [ ] Test in a fresh terminal session
|
|
2. [ ] Test after system reboot
|
|
3. [ ] Test with different projects and file types
|
|
4. [ ] Verify no performance degradation |