Tip
You can always access the latest updated documentation at the following link: User Manual (PDF)
- πΎ Quick Backup: Save your desktop icon layout with a single click, with an optional descriptive tag
- βΊ Restore Options: Restore from the latest backup or choose from a list of saved configurations
- π·οΈ Custom Tags: Add descriptive tags to your backups for easy identification
- π Resolution Tracking: Automatically records screen resolution and monitor metadata with each backup
- π Live Diff Preview: Before restoring, see a color-coded overlay showing exactly which icons will move (orangeβred with arrow), which are already in place (blue), and which are missing from the desktop (green)
- πΌοΈ Visual Layout Preview: See a mini-map of your icon arrangement before restoring, with interactive tooltips showing icon names
- π Adaptive Scaling: Automatically adjusts icon positions when restoring to a different screen resolution
- π₯οΈ Multi-Monitor Support: Detects and handles multiple monitor configurations, with warnings when the setup differs from the saved backup
- βοΈ Flexible Comparison: Compare any two backups against each other (not just vs. latest) to see added, removed, and moved icons β via context menu or the dedicated "Compare Two Selectedβ¦" button
- ποΈ Smart Cleanup: Automatic deletion of old backups when a configured limit is reached (5, 10, 25, 50, or unlimited)
- β‘ System Tray Integration: Run minimized in the background with quick access to save/restore from the tray icon
- Auto-Save on Exit: Automatically backup your layout when closing the application
- Auto-Restore on Startup: Automatically restore the latest backup when the application starts
- Command Line Interface: Run headless backup and restore operations for scripting and scheduled tasks
- Background Operations: All operations run in a separate thread with real-time progress indicators
- π Sortable Backup Table: Click any column header (Tag, Resolution, Icons, Timestamp) to sort the backup list
βοΈ Resizable Backup Manager: The window adapts to any screen size or DPI setting- π Multi-language: Auto-detected from system locale or manually selected
- β¨οΈ Keyboard Shortcuts: Full keyboard navigation β see shortcuts table below
- π Detailed Activity Log: Track all operations with timestamped entries; copy log with
Ctrl+A/Ctrl+C - β Confirmation Dialogs: Prevent accidental overwrites or deletions
- Windows 7 or higher (fully compatible with Windows 11)
- Python 3.8+ (only if running from source)
- Desktop icons must be visible (
Right-click desktop β View β Show desktop icons) - No administrator rights required
- Download the latest
desktop-icon-backup-manager.exefrom the Releases page - Place it in a dedicated folder
- Run the executable β no installation required!
-
Clone this repository:
git clone https://github.com/mapi68/desktop-icon-backup-manager.git cd desktop-icon-backup-manager -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python main.py
- (Optional) Type a descriptive tag in the Save Tag field (e.g.
Work Setup,Before Update) - Click πΎ SAVE QUICK BACKUP β or press
Ctrl+Sβ to create a timestamped backup
Note
When using Ctrl+S, the backup is tagged "Quick Backup (Shortcut)" regardless of what is typed in the tag field. To apply a custom tag, use the button click.
- Click βΊ RESTORE LATEST to restore from the most recent backup (a confirmation dialog is shown first)
- Or click βΊ BACKUP MANAGER (
Ctrl+M) to browse, preview, and restore any saved backup
When you select a backup in the Backup Manager, the preview panel fetches the current live positions from the desktop and renders a color-coded diff directly on a desktop-like canvas with a subtle grid:
| Visual | Meaning |
|---|---|
| π΅ Blue dot (with soft halo) | Already in place, will not move |
| π Orange dot βββΆ π΄ Red dot | Will move: orange = current position, red = target from backup |
| π’ Green dot | In backup, not on desktop (will be skipped on restore) |
A compact legend panel displayed outside the canvas (to the right of the backup info box) shows the colour coding used in the diff preview. Hover over any dot to see the icon name and status.
The application supports headless operation for scripting and scheduled tasks. When --backup, --restore, or --silent is passed, no GUI is shown and the process exits immediately after the operation.
# Silent backup (uses settings.ini for cleanup limit)
desktop-icon-backup-manager.exe --backup --silent
# Restore the most recent backup silently
desktop-icon-backup-manager.exe --restore latest --silent
# Restore a specific backup file
desktop-icon-backup-manager.exe --restore "1920x1080_20241211_143015.json" --silentExit codes: 0 = success, 1 = error.
Automation with Windows Task Scheduler:
- Open Task Scheduler β Create Basic Task
- Set trigger (e.g. Daily, or On logon)
- Action: Start a program β path to
desktop-icon-backup-manager.exe - Add arguments:
--backup --silent
- Right-click the tray icon for quick Save / Restore Latest / Show Window / Exit
- Double-click to show or hide the main window
- Notifications appear for completed operations even when the window is hidden
- Search/filter backups by tag, resolution, or date in real time
- Sortable table: click any column header (Tag, Resolution, Icons, Timestamp) to sort
- Live diff preview shows which icons will move before you confirm a restore (see above)
- Visual preview shows a dot-map of icon positions; hover over dots to see icon names
- Compare any two backups via right-click β Compare with Latest, or select one backup and click "Compare Two Selectedβ¦" to pick any second backup
- Right-click a backup for Restore, Compare, or Delete options
| Setting | Description |
|---|---|
| Start Minimized to Tray | Launch the app hidden in the system tray |
| Auto-Save on Exit | Create a backup automatically when closing the app |
| Auto-Restore on Startup | Restore the latest backup automatically on launch |
| Enable Adaptive Scaling on Restore | Scale icon positions proportionally when restoring to a different resolution |
| Minimize to Tray on Close | Hide to tray instead of quitting when clicking the X button |
| Automatic Backup Cleanup Limit | Keep only the N most recent backups (5 / 10 / 25 / 50 / unlimited) |
Warning
Combining Auto-Save on Exit with Auto-Restore on Startup creates an automatic save/restore cycle. If icons are in wrong positions when you exit, those wrong positions will be restored on next startup. Use the Backup Manager to restore a known-good layout if needed.
Settings are stored in settings.ini in the application directory and are created automatically on first run:
[General]
start_minimized=false
auto_save_on_exit=false
auto_restore_on_startup=false
adaptive_scaling_enabled=false
close_to_tray=false
cleanup_limit=0
geometry=@Rect(100 100 800 650)Tip
You can edit settings.ini directly with any text editor. Changes take effect on the next program launch. Invalid values are automatically reset to defaults.
| Shortcut | Action |
|---|---|
Ctrl+S |
Quick Save current layout |
Ctrl+M |
Open Backup Manager |
Ctrl+, |
Open Settings menu |
Ctrl+Q |
Exit Application |
F1 |
Open Online User Manual |
Backups are stored as JSON files in the icon_backups subfolder, created automatically next to the executable.
File naming:
{width}x{height}_{YYYYMMDD}_{HHMMSS}.json
Example: 1920x1080_20241211_143015.json
File structure:
{
"timestamp": "2024-12-11T14:30:15.123456",
"icon_count": 12,
"description": "Work Setup Final",
"display_metadata": {
"monitor_count": 2,
"primary_resolution": "1920x1080",
"screens": [...]
},
"icons": {
"This PC": [100, 200],
"Recycle Bin": [100, 350]
}
}Each backup file is typically 2β10 KB. With 50 backups, total storage is under 500 KB.
Desktop icons are hidden or inaccessible.
- Right-click the desktop β View β enable Show desktop icons
- Restart Windows Explorer via Task Manager if the error persists
- Check that no third-party desktop replacement software is active
- Enable Adaptive Scaling on Restore in the Settings menu
- Make sure the same monitors are connected in the same arrangement as when the backup was created
- Create separate backups for each monitor configuration (e.g.
Laptop Only,Docked - 2 Monitors)
The program accesses Windows Explorer's memory to read and write icon positions (standard Win32 API). Some antivirus tools may flag this behavior. Add the executable to your antivirus whitelist.
- Make sure the application is closed via File β Exit or
Ctrl+Q, not via Task Manager - Check that
settings.iniis writable (the folder must not be read-only or protected)
- Only one instance can run at a time β check if it is already running in the system tray
- If the app crashes immediately, delete
settings.inito reset all settings to defaults - If Auto-Restore on Startup is causing a crash, set
auto_restore_on_startup=falseinsettings.inimanually
- Enable Adaptive Scaling for automatic position adjustment between similar resolutions
- For very different configurations, create and restore dedicated backups per setup
- A warning dialog will appear if the number of monitors differs from the saved backup
If this tool saved you even 5 minutes of frustration, consider buying me a coffee β it helps keep the project alive and growing!
Main interface showing the activity log and three main action buttons
Backup Manager window with list of saved backups and layout preview
Loading Desktop Backup Manager...
Desktop Icon Backup Manager featuring dark mode and Italian support