A small utility for Linux desktops that automatically creates and manages .desktop entries for AppImages in your ~/Apps/ folder - so they show up in your app launcher without any manual effort.
- Scans
~/Apps/for.AppImagefiles - Creates a
.desktopentry for each one so they appear in your app launcher - Tries to extract the bundled icon from each AppImage automatically
- Updates entries when a new version of an AppImage replaces an old one
- Removes stale entries when an AppImage is deleted
- Watches
~/Apps/in real time usinginotifywait— reacts instantly, no polling (near-zero CPU/performance impact)
Clone the repo and run the installer:
git clone https://github.com/yourusername/appimage-desktop-sync
cd appimage-desktop-sync
bash install.shThe installer will:
- Install
inotify-toolsif it isn't already present (supports apt, dnf, pacman, zypper) - Copy the sync script to
~/.local/bin/ - Install and enable the systemd watcher service
- Run an initial sync immediately
That's it. Drop .AppImage files into ~/Apps/ and they'll appear in your launcher automatically.
- A systemd-based Linux distro (Ubuntu, Debian, Fedora, Arch, etc.)
sudoaccess (only needed to installinotify-toolsif it's missing)
A systemd user service runs inotifywait to watch ~/Apps/ for filesystem events. When an AppImage is added, moved, or deleted, it calls the sync script (with a short 3-second delay to let file operations finish). No polling — negligible CPU and memory usage when idle.
Events watched: close_write, moved_to, moved_from, delete
| Thing | Path |
|---|---|
| AppImages | ~/Apps/ |
| Sync script | ~/.local/bin/appimage-desktop-sync |
| Log file | ~/.local/share/appimage-desktop-sync/appimage-sync.log |
| Desktop entries | ~/.local/share/applications/ |
| Icons | ~/.local/share/icons/appimages/ |
# Check the watcher is running
systemctl --user status appimage-watcher
# Watch the log live
tail -f ~/.local/share/appimage-desktop-sync/appimage-sync.log
# Run a manual sync
appimage-desktop-syncIf you prefer to set things up yourself:
# 1. Install inotify-tools
sudo apt install inotify-tools # Debian/Ubuntu
sudo pacman -S inotify-tools # Arch
sudo dnf install inotify-tools # Fedora
# 2. Install the script
mkdir -p ~/.local/bin
cp appimage-desktop-sync.sh ~/.local/bin/appimage-desktop-sync
chmod +x ~/.local/bin/appimage-desktop-sync
# 3. Install the service
mkdir -p ~/.config/systemd/user
cp appimage-watcher.service ~/.config/systemd/user/
# 4. Enable and start
systemctl --user daemon-reload
systemctl --user enable --now appimage-watcher.serviceMIT