I got it to work. There's a few command line utils for working with desktop entires.
-
Install the desktop-file-utils package:
sudo pacman -S desktop-file-utils
-
Validate that the .desktop file meets freedesktop's current spec:
desktop-file-validate [path]
-
Install .desktop file:
desktop-file-install --dir=[destination path] [desktop file]
-
Update local desktop entry DB
update-desktop-database [destination path]
I've made a script to do this. You can find it below