A lightweight system tray application that automatically downloads and sets Microsoft Bing's daily wallpaper as your desktop background. Features multilingual support, customizable update intervals, and various wallpaper display options.
- π Automatic Updates: Fetches and applies Bing's daily wallpaper automatically
- π Multi-Region Support: Choose from different Bing regions (US, UK, Japan, etc.)
- π¨ Display Options: Multiple wallpaper fill types (Fill, Fit, Stretch, Tile, Center)
- π Multilingual: Support for English, German, French, and Polish
- βοΈ System Tray Integration: Runs quietly in the background with easy access
- π Resolution Options: Support for UHD, FHD, and other resolutions
- β° Customizable Timing: Set your preferred update frequency
- π± Navigation: Browse through recent wallpapers with Previous/Next buttons
The application runs as a system tray icon with a context menu providing easy access to all features:
- View current wallpaper information
- Navigate through recent wallpapers
- Access settings
- Manual wallpaper application
- Download the latest
pyBingWallpaper.exefrom the Releases page - Run the executable - no installation required!
- The application will start minimized to the system tray
-
Clone the repository:
git clone https://github.com/yourusername/pyBingWallpaper.git cd pyBingWallpaper -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python main.py
- Python 3.13 or higher
- PyQt6
- PyInstaller
- Windows OS
PowerShell (Recommended):
.\build.ps1Batch File:
build.bat-
Set up virtual environment:
python -m venv .venv .\.venv\Scripts\activate pip install -r requirements.txt
-
Build with PyInstaller:
pyinstaller --clean pyBingWallpaper.spec
-
Find your executable: The compiled executable will be in
dist\pyBingWallpaper.exe
- Single file executable: Everything packed into one .exe file (~40MB)
- No console window: Runs as a windowed application
- Custom icon: Uses the application icon
- UPX compression: Optimized file size
- Bundled resources: All data files included automatically
-
First Launch: The application starts minimized to the system tray
-
Right-click the tray icon to access the menu:
- View current wallpaper description
- Navigate with "Older" and "Newer" buttons
- Apply wallpaper manually
- Open Settings
- Quit application
-
Configure Settings:
- Language: Auto-detect or choose manually
- Resolution: UHD, FHD, or other available options
- Region: Select your preferred Bing region
- Update Frequency: Set interval in minutes
- Fill Type: Choose how wallpaper fits your screen
- Auto Apply: Enable/disable automatic wallpaper updates
Settings are automatically saved to %APPDATA%\pyBingWallpaper\config.json and include:
{
"language": "auto",
"resolution": "UHD",
"region": "en-US",
"update_minutes": 60,
"auto_apply": true,
"fill_type": "Fill"
}The application supports numerous Bing regions including:
en-US(United States)en-GB(United Kingdom)ja-JP(Japan)de-DE(Germany)fr-FR(France)- And many more...
- Fill: Scale image to fill screen (may crop)
- Fit: Scale to fit screen (may show borders)
- Stretch: Stretch to fill screen (may distort)
- Tile: Repeat image to fill screen
- Center: Center image without scaling
Currently supported languages:
- πΊπΈ English
- π©πͺ German (Deutsch)
- π«π· French (FranΓ§ais)
- π΅π± Polish (Polski)
Want to contribute a translation? See the Contributing section!
- GUI Framework: PyQt6 for cross-platform compatibility
- HTTP Client: Requests library for Bing API communication
- Configuration: JSON-based settings with Windows registry integration
- Wallpaper Setting: Windows API calls via ctypes
- Background Processing: Threading for non-blocking operations
Contributions are welcome! Here are some ways you can help:
- Copy
data/lang/lang_en.jsontodata/lang/lang_XX.json(where XX is your language code) - Translate all string values
- Test the translation by setting your language in the config
- Submit a Pull Request
Please open an issue with:
- Your Windows version
- Python version (if running from source)
- Steps to reproduce the issue
- Error messages or screenshots
Open an issue describing:
- The feature you'd like to see
- Why it would be useful
- How you envision it working
- Fork the repository
- Create a feature branch:
git checkout -b feature-name - Make your changes and test thoroughly
- Submit a Pull Request with a clear description
Application won't start:
- Check if Windows Defender quarantined the executable
- Try running from command line to see error messages
Wallpapers not updating:
- Check your internet connection
- Verify the selected region is valid
- Try manually applying a wallpaper from the menu
Settings not saving:
- Ensure you have write permissions to
%APPDATA% - Check if antivirus is blocking file access
Build errors:
# Clean previous builds
pyinstaller --clean pyBingWallpaper.spec
# Verify dependencies
pip list
# Check file paths
dir data\icon.icoIf you encounter issues:
- Check the Issues page for similar problems
- Review the troubleshooting section above
- Open a new issue with detailed information
This project is licensed under the MIT License - see the LICENSE file for details.
- Microsoft Bing for providing beautiful daily wallpapers
- The PyQt6 team for the excellent GUI framework
- Contributors who have helped improve this project
- The open source community for inspiration and support
This project is actively maintained. Check the commit history and issues for the latest updates.
β Like this project? Give it a star on GitHub and share it with friends!

