Skip to content

brodsbytes/appimage-desktop-sync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

appimage-desktop-sync

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.

What it does

  • Scans ~/Apps/ for .AppImage files
  • Creates a .desktop entry 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 using inotifywait — reacts instantly, no polling (near-zero CPU/performance impact)

Quick install

Clone the repo and run the installer:

git clone https://github.com/yourusername/appimage-desktop-sync
cd appimage-desktop-sync
bash install.sh

The installer will:

  • Install inotify-tools if 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.

Requirements

  • A systemd-based Linux distro (Ubuntu, Debian, Fedora, Arch, etc.)
  • sudo access (only needed to install inotify-tools if it's missing)

How it works

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

File locations

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/

Useful commands

# 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-sync

Manual setup (without the installer)

If 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.service

License

MIT

About

A small utility for Linux desktops that automatically adds AppImages to your Menu / App Launchers

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages