I’m trying to install RPM packages on Fedora Pocket Blue (mobile). When I open an RPM from the file browser, it takes me to the Software app, where I can install it successfully. After installation, it asks me to restart the device. However, after restarting, the game does not appear in the launcher.
The RPMs I’m using are packages I originally created for Sailfish OS. They contain games written as scripts using LÖVE (Love2D). The games themselves work correctly, and I can run them directly from the file browser.
Is there anything specific I need to add to the RPM package so that the application appears in the launcher with an icon?
I’m using Phosh as the desktop environment.
Any advice would be appreciated. Thanks!
In case it helps here is an example of the desktop file I use for sailfish os:
The RPM installation itself appears to be working, so I would first check the desktop launcher rather than the package installation.
On Fedora/Phosh, the application launcher should normally be installed under:
/usr/share/applications/
Your example desktop file also contains two Name= entries in the same [Desktop Entry] section. I would keep only one and remove the Sailfish-specific section while testing.
A minimal desktop file could look like thi
Desktop Entry]
Type=Application
Name=Inertia II
Comment=Inertia II
Exec=/usr/bin/love /usr/share/games/love/inertia/inertiaii.love
Icon=/usr/share/games/love/inertia/inertia.png
Terminal=false
Categories=Game;
Please first check where the RPM installs its desktop file:
rpm -ql | grep -E ‘.desktop$|/applications/’
Replace with the actual installed RPM package name.
If the .desktop file is under /usr/share/applications/, validate it with:
echo $XDG_CURRENT_DESKTOP
ls -l /usr/share/applications/inertia
The [X-Sailjail] section is Sailfish OS-specific and should not normally be required for a standard Phosh launcher. If the desktop file validates correctly but still does not appear after reboot/login, the outputs above should help identify whether the issue is the desktop file, package layout, or Phosh application discovery.
/usr/share/applications/chessengine.desktop: warning: value “chess engine” for key “Comment” in group “Desktop Entry” looks the same as that of key “Name”
I don’t know how should I replace rpm -ql | grep -E ‘.desktop$|/applications/’ but everything I tried gives:
rpm: no arguments given for query
In case it helps, when I try to install the rpm again, the software center tells me is already installed and only gives me the option to uninstall, but I don’t know where or how to start the game (in the launcher there’s nothing)
then I have a launcher script for flatpak that looks like this:
#!/bin/sh
exec flatpak run
--filesystem=/var/lib/starphase:ro
org.love2d.love2d
/var/lib/starphase/starphase.love
After doing that, the game appears in the launcher. There’s still a problem though: flatpak is sandboxed and can’t see any of the systems folder, so there’s no way that I know to make flatpak finds the game, I tried to install on /usr/share/games/ and /var/lib/ and none of them work.
I’m not sure whether it’s worth the hassle, since games can be run directly from any file manager by clicking on the .love file. However, I want to figure out how to make them launch from the launcher without building flatpaks since I’m more used to work with rpm and I know better how to create the specs.
Is it possible to make love installed from flatpak access a game installed with rpm inside a folder of the system or will the sandbox always prevent that?