Gmail Notifier is a lightweight tool for monitoring Google Workspace email accounts without needing to have an email client open. It runs in the background to show notifications in the KDE system tray when new emails arrive.
Stay up-to-date with your important emails without interrupting your workflow.
- π Dual notification system: both tray icon popups and system notifications (via
notify-send) - π Lightweight and efficient: uses minimal system resources
- π Secure authentication using app passwords
- π Secure password storage: uses system keyring instead of file-based encryption
- π Periodic checking for new emails
- π± Quick access to Gmail with a double-click
- π Recent Email List: Single-click to see a themed popup list of the latest emails
- π Direct Email Linking: Click any email in the list to open it directly in your browser
- π§ Seamless integration with KDE and other desktop environments
- π§ͺ Test notification button: verify notifications work on your system from the config dialog
- π Start menu integration: launcher icon in your applications menu
- π§ Multi-distro support: works on Ubuntu/Debian and Arch Linux
- Linux: Ubuntu/Debian or Arch Linux (or derivatives)
- KDE Plasma 5.x or higher (other desktop environments may work)
- Python 3.6 or higher
- pip and virtualenv
- PyQt5
- Google Workspace or Gmail account
- Two-step verification enabled in your Google account
git clone https://github.com/utajum/gmail-notifier.git
cd gmail-notifierchmod +x installer-script.sh
./installer-script.shThe installer will:
- Check and install the necessary dependencies
- Create a virtual environment for the required Python libraries
- Configure automatic startup with your KDE session
- Install the script and configuration files
To use Gmail Notifier, you need to create a specific app password:
- Go to your Google account security settings
- Make sure you have "Two-step verification" enabled (see instructions)
- Look for "App passwords" and click on it
- Select "Mail" as the app and "Other (custom name)" as the device
- Type "Gmail Notifier" as the name and click "Generate"
- Google will show a 16-character password - copy it (you will need it to configure Gmail Notifier)
When you start Gmail Notifier for the first time, the configuration window will open automatically:
- Enter your Gmail email address
- Paste the app password you generated earlier
- Adjust the check interval if you wish (default: 5 minutes)
- Click "Test Connection" to verify that everything is working correctly
- Click "Test Notification" to verify notifications display properly on your system
- Save the configuration
Gmail Notifier will start working immediately and an icon will appear in the system tray.
- Single-click on the icon: Opens a dark-themed popup showing your recent unread emails.
- Click an email: Opens that specific email thread in your browser.
- Click Trash icon: Moves the email to Gmail's Trash (after confirmation).
- Open Gmail Inbox: Link at the top opens your full inbox.
- Double-click on the icon: Instantly opens Gmail Inbox in your default browser.
- Right-click on the icon: Shows a menu with options
- Open Gmail: Opens Gmail in your browser
- Check now: Forces an immediate check for new emails
- Settings: Opens the configuration dialog
- Exit: Closes the application
You can reconfigure Gmail Notifier at any time by right-clicking the system tray icon and selecting "Settings".
From the configuration dialog you can:
- Change the Gmail account
- Update the app password
- Modify the check interval
- Enable/disable automatic startup
- Test notifications to verify they work on your system
If you want to uninstall Gmail Notifier, run:
./installer-script.sh --removeThis will remove all files and settings related to Gmail Notifier.
- Verify that the connection has been established correctly in the settings
- Make sure the app password is correct
- Check that you don't have filters in Gmail that automatically mark emails as read
- Make sure you are using an app password, not your main Google password
- Verify that you have correctly enabled two-step verification
- Generate a new app password and try again
- Verify that your KDE panel has the system tray applet enabled
- Run
gmail-notifierfrom the terminal to see possible errors
- The installer creates a virtual environment to avoid this problem
- If it persists, delete the environment and run the installer again
This is a fork of the original project, intended for further development and feature additions.
- Multi-distro support: Added Ubuntu/Debian support alongside Arch Linux
- Secure password storage: Migrated from simple file encryption to system keyring
- Dual notifications: Added system notifications via
notify-sendin addition to tray popups - Test notification button: Added ability to test notifications from the config dialog
- Start menu integration: Installs a .desktop file in the applications menu
- English translation: Translated UI and installer from Spanish to English
- Code cleanup: Reformatted code and improved structure
- Clickable Notifications: Notifications are now clickable and open Gmail directly.
- Improved Email Checking: More efficient email fetching, limited to the last 24 hours.
- Responsive "Check Now": The "Check Now" feature is significantly more responsive.
- Smart Notification Grouping: Prevents duplicate notifications and groups multiple new emails into a summary notification.
- Snooze Functionality:
- Snooze state tracking: Tracks when the snooze expires (for 1 hour).
- Tray menu snooze option: Added "Snooze for 1 hour" menu item (toggles to "Unsnooze" when active), with tooltip indicating snooze status.
- System notification snooze action: Notifications now include "Snooze 1 hour" button that activates a 1-hour snooze.
- Visual Snooze Indicator: A blue "Z" badge appears on the tray icon when snooze is active.
- Email List Popup: Added a sleek, dark-themed popup that displays the latest received emails on a single click.
- Quick Delete: Each email in the list features a trash icon to move the message directly to Gmail's Trash folder.
- Click-to-Open: Clicking anywhere else on the email opens the specific message thread in your web browser.
- Thread ID Fetching: Now fetches Gmail Thread IDs to allow opening specific conversations directly from the email list.
- Double-Click Interaction: Implemented custom click differentiation for single and double-click actions on the tray icon.
- Visual Status Badge: System tray icon now displays a red dot badge when unread emails are present.
- Immediate Startup Check: Added a forced email check upon application launch for instant updates.
- Connection Error Indicator: Displays an orange "!" badge on the tray icon if connection or credentials fail.
gmail-notifier/
βββ gmail-notifier.py # Main script
βββ installer-script.sh # Installer/uninstaller
βββ README.md # Documentation
βββ screenshots/ # Screenshots for documentation
If this tool helps you stay on top of your emails, consider buying me a coffee!
This project is under the Creative Commons Attribution 4.0 International (CC BY 4.0) license.
Maintained and Enhanced by:
- utajum (utajum macedonia) - GitHub
This is a fork from the original project. You can find the original project here.
π¨βπ» Maintained and Enhanced by utajum macedonia (forked from P4NX0S Β© 2025)





