-
Notifications
You must be signed in to change notification settings - Fork 0
FAQ
Frequently asked questions and solutions to common issues.
- General Questions
- Installation Issues
- Usage Questions
- Performance Issues
- Configuration Problems
- Extension Issues
- Development Questions
- Platform-Specific Issues
Launcher is a modern desktop application launcher for Linux built with GTK4 and Adwaita. It provides instant search capabilities for installed applications, a built-in calculator, and an extensible architecture for adding custom functionality.
Launcher is designed for Linux desktop environments. It works best on:
- GNOME (primary target)
- KDE Plasma
- XFCE
- Other GTK4-compatible desktop environments
Yes! Launcher is licensed under GPL-3.0-or-later and is completely free and open source.
- Standalone: Launcher is a separate application
- Faster startup: Optimized for quick launches
- More customizable: Extension system and preferences
- Calculator built-in: No need to switch apps
- Portable: Works across different desktop environments
Launcher typically uses 30-50MB of RAM when running, with minimal CPU usage during idle. Memory usage may increase temporarily during application discovery and caching.
Problem: Missing GTK4 libraries
Solution:
# Ubuntu/Debian
sudo apt install libgtk-4-1 gir1.2-gtk-4.0
# Fedora
sudo dnf install gtk4
# Arch Linux
sudo pacman -S gtk4Problem: Python GTK bindings not installed
Solution:
# Ubuntu/Debian
sudo apt install python3-gi python3-gi-cairo
# Fedora
sudo dnf install python3-gobject
# Arch Linux
sudo pacman -S python-gobject
# Or via pip (not recommended)
pip3 install PyGObjectProblem: Missing flatpak-builder or dependencies
Solution:
# Install flatpak-builder
sudo apt install flatpak-builder # Ubuntu/Debian
sudo dnf install flatpak-builder # Fedora
sudo pacman -S flatpak-builder # Arch
# Ensure you have GNOME runtime
flatpak install flathub org.gnome.Platform//48 org.gnome.Sdk//48
# Clean and rebuild
rm -rf build-dir .flatpak-builder
flatpak-builder --user --install --force-clean build-dir cloud.ivanbotty.Launcher.yamlProblem: Insufficient permissions
Solution:
- Use
--userflag for user-level install - Or use
sudofor system-wide install - Check file permissions in the repository directory
Problem: Missing dependencies or configuration
Solution:
# For Flatpak, check if installed
flatpak list | grep Launcher
# Try running with verbose output
flatpak run -v cloud.ivanbotty.Launcher
# Check logs
journalctl --user -f | grep launcher
# For source install, check Python path
python3 -c "import gi; gi.require_version('Gtk', '4.0'); from gi.repository import Gtk"Methods:
- From application menu: Search for "Launcher"
-
Command line:
flatpak run cloud.ivanbotty.Launcher - Keyboard shortcut: Configure in system settings (e.g., Super+Space)
Problem: Desktop files not found or cached
Solution:
- Check if applications have
.desktopfiles - Verify desktop file locations:
ls /usr/share/applications ls ~/.local/share/applications - Clear cache and restart:
rm -rf ~/.local/share/cloud.ivanbotty.Launcher/cache - For Flatpak apps, ensure they're visible:
ls ~/.local/share/flatpak/exports/share/applications
Problem: Icon theme or cache issues
Solution:
- Install a complete icon theme:
sudo apt install adwaita-icon-theme
- Update icon cache:
gtk-update-icon-cache
- Check GTK settings:
gsettings get org.gnome.desktop.interface icon-theme
Problem: Search algorithm or desktop file issues
Solution:
- Try exact name of the application
- Check if app has NoDisplay=true in desktop file
- Verify desktop file format
- Enable "show hidden apps" in preferences
- Check application categories and keywords
Usage: Just type mathematical expressions directly:
Type: 2 + 2
Result: 4
Type: sqrt(16)
Result: 4.0
Type: sin(pi/2)
Result: 1.0
Supported operations:
- Basic:
+,-,*,/,**(power),%(modulo) - Functions:
sqrt,sin,cos,tan,log,abs,ceil,floor - Constants:
pi,e
Methods:
- Press
Tabkey - Click view toggle button (if available)
- Preference is saved automatically
Possible causes and solutions:
-
First launch: Cache is being built
- Solution: Wait for initial scan to complete
- Subsequent launches will be faster
-
Large number of applications:
- Solution: Increase cache size in preferences
- Consider disabling unused Flatpak remotes
-
Slow disk I/O:
- Solution: Use SSD if possible
- Check disk health
-
Debug mode enabled:
- Solution: Disable debug logging
unset LAUNCHER_DEBUG unset LAUNCHER_LOG_LEVEL
Problem: Database queries or search algorithm
Solution:
- Ensure instant search is enabled in preferences
- Reduce max results limit
- Disable "search in descriptions" for faster search
- Clear and rebuild cache
Problem: Memory leak or large cache
Solution:
- Restart Launcher periodically
- Check cache size settings
- Disable unused extensions
- Report persistent memory issues on GitHub
Problem: Thread deadlock or UI blocking
Solution:
- Check system logs for errors
- Try disabling extensions one by one
- Run with debug logging:
LAUNCHER_LOG_LEVEL=DEBUG flatpak run cloud.ivanbotty.Launcher
- Report issue with logs
Problem: Database write permissions or corruption
Solution:
# Check database location
ls -la ~/.local/share/cloud.ivanbotty.Launcher/
# For Flatpak
ls -la ~/.var/app/cloud.ivanbotty.Launcher/data/
# Check permissions
chmod 644 ~/.local/share/cloud.ivanbotty.Launcher/launcher.db
# If corrupted, backup and reset
mv launcher.db launcher.db.bak
# Restart Launcher to create new databaseProblem: Database not persisting or Flatpak permissions
Solution:
# For Flatpak, ensure data directory is writable
flatpak override --user --filesystem=xdg-data/cloud.ivanbotty.Launcher cloud.ivanbotty.Launcher
# Check if database is in read-only locationProblem: System-wide shortcuts or conflict
Solution:
- Use system settings to set global shortcut
- Ensure no conflicts with existing shortcuts
- Check desktop environment documentation:
- GNOME: Settings → Keyboard → Custom Shortcuts
- KDE: System Settings → Shortcuts
Problem: Missing dependencies or configuration
Solution:
- Check extension requirements
- For AI extension, set API key:
export GEMINI_API_KEY="your-api-key"
- Check extension YAML syntax
- View logs for error messages
Problem: API key, network, or API issues
Solution:
- Verify API key is set:
echo $GEMINI_API_KEY
- Check network connectivity
- Verify API quota/limits
- Check API endpoint is accessible
Problem: Expression parsing or operator precedence
Solution:
- Use parentheses for complex expressions
- Check function names (e.g.,
sqrtnotsquare_root) - Verify angle mode (radians vs degrees)
- Report calculation bugs on GitHub
Problem: Multiple extensions handling same input
Solution:
- Check extension priorities
- Disable conflicting extensions
- Reorder extensions in configuration
See the detailed Contributing Guide.
Quick setup:
git clone https://github.com/BottyIvan/launcher-app.git
cd launcher-app
pip3 install --user PyGObject google-generativeai black flake8 mypy
python3 -m cloud.ivanbotty.LauncherProblem: Missing dependencies or test environment issues
Solution:
# Install test dependencies
pip3 install --user PyGObject
# Run tests with verbose output
python3 -m unittest discover tests/ -v
# Check specific failing test
python3 -m unittest tests.test_utils.TestAppInitUtils -v
# Some tests may be skipped if GTK4 is not available in test environmentSee Architecture and API Reference.
Basic steps:
- Create handler class extending
BaseInputHandler - Create service class with business logic
- Add extension definition to
extensions.yaml - Test and submit PR
Problem: Type hints or stub files
Solution:
# Install type stubs
pip3 install types-PyYAML
# Run MyPy with relaxed settings for GTK
mypy --ignore-missing-imports cloud/ivanbottyWayland issues:
# Force X11 if Wayland has issues
GDK_BACKEND=x11 flatpak run cloud.ivanbotty.LauncherHiDPI scaling:
# Adjust scaling
GDK_SCALE=2 flatpak run cloud.ivanbotty.LauncherTheme inconsistencies:
- Install Breeze-GTK theme for better integration
- Or set GTK theme to Adwaita
Qt/GTK mixing:
- Visual style may differ from Qt apps
- This is expected behavior
Compositor issues:
- Enable compositor for smooth animations
- Settings → Window Manager Tweaks → Compositor
Floating window:
# For i3 config
for_window [app_id="cloud.ivanbotty.Launcher"] floating enable
# For Sway
for_window [app_id="cloud.ivanbotty.Launcher"] floating enable, sticky enableSystem logs:
# For systemd
journalctl --user -f | grep launcher
# Application logs (if enabled)
tail -f ~/.local/share/cloud.ivanbotty.Launcher/launcher.logDebug mode:
LAUNCHER_LOG_LEVEL=DEBUG flatpak run cloud.ivanbotty.Launcher 2>&1 | tee launcher-debug.logIf your problem isn't covered here:
- Search existing issues: https://github.com/BottyIvan/launcher-app/issues
-
Gather information:
- Operating system and version
- Desktop environment
- Launcher version
- Steps to reproduce
- Error messages or logs
- Create new issue: Provide all gathered information
- Be patient: Maintainers will respond when available
- GitHub Issues: https://github.com/BottyIvan/launcher-app/issues
- Email: droidbotty@gmail.com
When something goes wrong, try these steps:
- ☐ Restart Launcher
- ☐ Check system updates
- ☐ Clear cache and restart
- ☐ Check logs for errors
- ☐ Try with default configuration
- ☐ Verify dependencies are installed
- ☐ Check GitHub issues for similar problems
- ☐ Enable debug logging
- ☐ Report issue with detailed information