A sleek access menu for Linux. Built with GTK4 and Rust.
BitPop is a keyboard-triggered system control hub designed as an alternative to traditional status bars and bottom/top app launchers. Instead of occupying permanent screen space, BitPop appears instantly via a keyboard shortcut and provides a clean, centralized interface for essential system interactions.
- Clock & Date Large, easy-to-read 12-hour time display with AM/PM.
- Battery Status Real-time battery percentage and charging state.
- App Launcher Fast search and launch for installed applications.
- Quick Controls Toggle Wi-Fi and Bluetooth, and view connected networks and devices.
- Power Actions Log out, suspend, restart, or shut down the system.
- No persistent UI clutter
- Keyboard-first workflow
- Native GTK theme integration
- System icon consistency
BitPop provides a minimal, focused system menu that stays out of the way until you need it.
- Clean Design - Minimal, centered popup that doesn't clutter your screen
- Keyboard Friendly - Full keyboard navigation with Tab and Enter
- Quick Access - Press Super/Command key again to toggle close
- Smart Search - Type to filter apps instantly
- System Integration - Uses your existing GTK icon theme and colors
- Auto-Close - Click outside the menu or press ESC to dismiss
- Linux system with GTK4
- NetworkManager (for WiFi controls)
- BlueZ/bluetoothctl (for Bluetooth controls)
- systemd (for power actions)
Arch Linux:
sudo pacman -S gtk4 networkmanager bluezUbuntu/Debian:
sudo apt install libgtk-4-dev network-manager bluezFedora:
sudo dnf install gtk4-devel NetworkManager bluez- Clone the repository:
git clone https://github.com/ganeshspeaks/bitpop.git
cd bitpop- Build the project:
cargo build --release- Install to your system:
sudo cp target/release/bitpop /usr/local/bin/
sudo chmod +x /usr/local/bin/bitpop- (Optional) Copy desktop file for application menu:
sudo cp bitpop.desktop /usr/share/applications/To open BitPop with a keyboard shortcut:
GNOME:
- Open Settings → Keyboard → Keyboard Shortcuts
- Click "+" to add custom shortcut
- Name: BitPop
- Command:
bitpop - Set your preferred key combination (e.g., Super+Space)
KDE:
- Open System Settings → Shortcuts → Custom Shortcuts
- Edit → New → Global Shortcut → Command/URL
- Trigger: Set your key combination
- Action:
bitpop
i3/Sway: Add to your config:
bindsym $mod+space exec bitpop
- Use your configured keyboard shortcut, or
- Run
bitpopfrom terminal, or - Click the BitPop icon in your application menu
- Type - Search for apps immediately
- Tab - Move focus from search to quick controls
- Enter - Launch selected app or activate focused button
- ESC - Close menu (clears search first if text present)
- Super/Command - Toggle menu open/close
- Click outside - Close menu
- WiFi - Shows "On" or "Off". Displays connected network name when available
- Bluetooth - Shows "On" or "Off". Displays connected device name when available
- Airplane Mode - Disables all radios
BitPop automatically uses your system's GTK theme and icon theme. To customize appearance:
- Change your GTK theme in system settings
- Change your icon theme in system settings
- Restart BitPop to apply changes
Make sure you have a complete icon theme installed:
# Arch
sudo pacman -S adwaita-icon-theme
# Ubuntu/Debian
sudo apt install adwaita-icon-theme
# Fedora
sudo dnf install adwaita-icon-themeEnsure NetworkManager is running:
systemctl status NetworkManagerEnsure Bluetooth service is running:
systemctl status bluetooth- Check if another instance is running (lock file at
/tmp/bitpop.lock) - Try running from terminal to see error messages:
bitpop - Ensure GTK4 is properly installed
src/
├── main.rs # Application entry point
├── ui.rs # Main window and UI components
├── system.rs # WiFi, Bluetooth, and battery functions
├── apps.rs # App launcher and desktop file parsing
└── icons.rs # Icon loading utilities
cargo buildcargo runcargo build --releaseMIT License - See LICENSE file for details
Built with:
