I am using Fedora 37, Gnome desktop. I have an application (Hydrapaper) that is apparently installed and opens its window, but it doesn’t function properly anymore. I want to uninstall it and reinstall it from a different source.
Unfortunately, the Software app doesn’t list it as installed. I tried to use dnf and flatpak uninstall commands but neither sees the application which is listed in my application/accessories menu. If I can’t uninstall this with Software I need to do so manually but I can’t find the executable.
Things listed in your menus correlate to *.desktop files on the filesystem somewhere. Inspecting the contents of those files will indicate where the application’s main binaries are. You can then use rpm -qf <full-path-to-executable> to find out if the application is part of a rpm package. If it is part of a flatpak or some other container tech, that should be obvious from the file path.
You can try the following command to look for the *.desktop file.
$ rpm -qf /opt/ApacheDirectoryStudio
file /opt/ApacheDirectoryStudio is not owned by any package
So the above is not part of a rpm package and could be removed with rm -rf /opt/ApacheDirectoryStudio. (And likewise, its desktop file could be manually removed).
If, however, the program is part of a rpm package (or a container like snap or flatpak), then it should be removed using the package manager. e.g.
$ rpm -qf /opt/google/chrome
google-chrome-stable-108.0.5359.124-1.x86_64
$ dnf remove google-chrome-stable
Dependencies resolved.
===============================================================================================
Package Architecture Version Repository Size
===============================================================================================
Removing:
google-chrome-stable x86_64 108.0.5359.124-1 @google-chrome 300 M
Removing unused dependencies:
liberation-fonts noarch 1:2.1.5-2.fc36 @fedora 0
Transaction Summary
===============================================================================================
Remove 2 Packages
Freed space: 300 M
Is this ok [y/N]:
Thanks for that suggestion. That first grep command its not yielding any output.
I did manage to uninstall a flatpak using the name ID. It confirmed that the uninstall was complete. However, the application is still listed in the menu and its window still opens. Maybe I had two instances?
The second grep command output (using Hydrapaper.desktop) says no file or directory.
One possibility is that the application is still loaded in the “caches”. There are ways to forcibly clear those, but the easiest way to be sure that that isn’t the problem is just to reboot the PC. Have you rebooted your PC since you uninstalled the application? (Yes, an app can still hold references to deleted files and continue to operate (sort of) after it has been uninstalled.)
Sorry, flatpaks are a bit of a mystery to me. I guess about all I could suggest is to study the man page (man flatpak) and see if you can figure out what is going on. Sorry.
dnf needs exact package names, so if you ran dnf remove hydrapaper but the name of the package is something else, it won’t find it. So we need to check what the exact name of the package is, if it was installed using an rpm.
We can also try locating the binary that’s running. You can run it from your applications menu again, and then check the system monitor for running processes to see if its listed. The “properties” option when one right clicks on a process in the gnome system monitor shows the command line. One can also use the terminal:
ps aux | grep -i hydra
will show us if anything called hydra.. is running, assuming the binary is called hydra...
PS: given that the grep commands for hydrapaper didn’t produce results, it’s most likely that the binary is called something else.
That output of your ps command seems to indicate it was locally installed.
Clearly there is a hydrapaperd daemon and the app hydrapaper running.
Did you install it from github or some other source that you remember?
Can you find the related .desktop file in /usr/share/applications/ or /usr/local/share/applications or ~/.local/share/applications/ to see which is actually showing up on the menu?
Maybe the source is located under your Downloads directory.
I installed an app as an appimage and the first time I ran it from the cli the app created a .desktop file in ~/.local/share/applications/. Unexpected, but welcome as it made launching the app easier without using the cli. The result though was that to remove the app totally I had to remove the .desktop file manually as well as removing the appimage.
Ah, yes, I forgot about /usr/local. I should have included that in the previous example search command I provided. But as Jeff commented, things under /usr/local are never part of a package manager. They need to be managed by some other means. Often there is a uninstall script in the same repo/source-tree that was used to install things there.
Edit: I updated my earlier post to include /usr/local in case someone else comes across that in the future.
Searching the whole drive would work as a last resort, but it is probably overkill. I think the following command would be quicker and is likely to yield results.
It looks like it was manually installed into /usr/local. Removing it requires removing all files manually—that’s sort of why we use rpms and package managers.
So there are two things to do:
remove the desktop file entry to remove the application from your application list but leave the application “installed”
remove all the files that were installed: this requires a little more investigation to figure out what files were installed in the first place—not necessarily straighforward.
I also found the executable application in /usr/local/bin , as noted above. I will attempt to remove these traces first and reinstall via the software manager.
Update:
I reinstalled the rpm and during launch I get this :
It looks like someone already reported that problem upstream.
And someone also said they found a workaround.
Excerpt:
Hi, i was actually able to solve this problem. What I realized is that even with the flatpak version of hydrapaper didn’t work because I had dark mode on. What I had done is installing a software called “dconf editor” which would let me dig deep into all the settings of the gnome shell. To change the wallpaper in dark mode you need to go into
/org/gnome/desktop/background/
and change the path for the file for picture-uri-dark. I believe the hydrapaper generated wall paper is in
///home/“user”/.var/app/org.gabmus.hydrapaper/cache/org.gabmus.hydrapaper/
“user” being your username.
However, i still haven’t been able to locate the exact location of configuration file/code for the shell through terminal.