Fix uninstallation scripts in Linux installers to take action on desktop files only if these desktop files are not owned by another package. This prevents `xdg-mime uninstall`, `xdg-desktop-menu uninstall` commands from execution in case of upgrades.
Borrowed helper shell script function from "launchers as services" for the fix. Now on Linux there is shared code between "launchers as services" and "desktop integration" subsystems - "common_utils.sh". Added `ServiceAndDesktopTest.java` to test how they align. ------------- Commit messages: - 8301856: Generated .spec file for RPM installers uninstalls desktop launcher on update Changes: https://git.openjdk.org/jdk/pull/16800/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16800&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8301856 Stats: 407 lines in 16 files changed: 333 ins; 30 del; 44 mod Patch: https://git.openjdk.org/jdk/pull/16800.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/16800/head:pull/16800 PR: https://git.openjdk.org/jdk/pull/16800