Why click twice when you can click once?
LazyLauncher is a simple GUI and CLI tool for KDE Plasma users to easily create custom KRunner shortcuts without manually editing .desktop files.
Create custom shortcuts for KDE's KRunner (Alt+F2 or ALT+SPACE) with ease:
yt→ Opens YouTubegh→ Opens GitHubg→ Opens Google Searchdocs→ Opens your Documents folder
- Tabbed interface with Create and Manage tabs
- Complete CRUD operations: Create, Update, Delete shortcuts
- Search functionality to quickly find existing shortcuts
- Professional styling with modern colors
- Custom browser selection (default or manual path)
- Instant KRunner integration
- Full command-line interface with comprehensive options
- Six main commands: create, update, remove, list, search, show
- Verbose modes and regex search
- Interactive confirmation for destructive operations
- Python 3.6+ (with tkinter)
- KDE Plasma desktop environment
- kbuildsycoca5/6 (for KRunner integration)
yay -S lazylauncher
# OR
paru -S lazylaunchergit clone https://github.com/gouravslnk/LazyLauncher.git
cd LazyLauncher
# GUI Mode
python3 -m lazylauncher
# CLI Mode
python3 scripts/lazylauncher_cli.py --help- Run:
lazylauncher(if installed via AUR) orpython3 -m lazylauncher - Create Tab: Fill form to create new shortcuts
- Manage Tab: Search, update, or delete existing shortcuts
- Test: Press
Alt+F2and type your shortcut name
# If installed via AUR:
lazylauncher-cli create yt "https://youtube.com" -d "YouTube"
lazylauncher-cli list
lazylauncher-cli search youtube
# If running from source:
python3 scripts/lazylauncher_cli.py create yt "https://youtube.com" -d "YouTube"
python3 scripts/lazylauncher_cli.py list
python3 scripts/lazylauncher_cli.py search youtubeLazyLauncher/
├── lazylauncher/ # Main package
│ ├── __init__.py # Package initialization
│ ├── __main__.py # Entry point for module execution
│ ├── gui.py # Tkinter GUI interface
│ ├── creator.py # Desktop file creation logic
│ ├── config.py # Configuration and defaults
│ └── utils.py # Utility functions
├── scripts/ # Additional utilities
│ ├── lazylauncher_cli.py # Command-line interface
│ └── README.md # CLI documentation
├── assets/ # Icons and resources
│ ├── site_icons.json # Icon mappings
│ └── README.md # Assets documentation
├── requirements.txt # Python dependencies
├── README.md # This file
└── LICENSE # MIT License
- User Input: Collects shortcut details through GUI or CLI
- File Generation: Creates a
.desktopfile with proper format - File Placement: Saves to
~/.local/share/applications/(user mode) - Database Update: Runs
kbuildsycoca5/6to refresh KRunner's cache - Ready to Use: Shortcut immediately available in KRunner
- Tkinter import error: Install
python3-tkpackage - KRunner not updating: Ensure
kbuildsycoca5/6is installed - Shortcuts not appearing: Try logging out and back in
Contributions welcome! Please feel free to submit:
- Bug reports
- Feature requests
- Pull requests
This project is licensed under the MIT License - see the LICENSE file for details.