From 1e85975aa0b2a2abe78bb857f7d7bcbec8749a91 Mon Sep 17 00:00:00 2001 From: JennaHuntsman <jenna.salem.sf@gmail.com> Date: Sun, 26 Jun 2022 06:54:12 -0400 Subject: [PATCH] Update indra/newview/linux_tools/refresh_desktop_app_entry.sh --- .../linux_tools/refresh_desktop_app_entry.sh | 59 +++++++++++++------ 1 file changed, 41 insertions(+), 18 deletions(-) diff --git a/indra/newview/linux_tools/refresh_desktop_app_entry.sh b/indra/newview/linux_tools/refresh_desktop_app_entry.sh index c65b58d4c9e..b1a56055bf1 100755 --- a/indra/newview/linux_tools/refresh_desktop_app_entry.sh +++ b/indra/newview/linux_tools/refresh_desktop_app_entry.sh @@ -1,5 +1,7 @@ #!/bin/bash +VIEWERNAME="Alchemy" #Store the viewer's name as a variable, for portability. This should be correctly capitalized. + SCRIPTSRC="$(readlink -f "$0" || echo "$0")" RUN_PATH="$(dirname "${SCRIPTSRC}" || echo .)" @@ -8,24 +10,45 @@ install_prefix="${RUN_PATH}"/.. function install_desktop_entry() { local installation_prefix="${1}" - local desktop_entries_dir="${2}" - - local desktop_entry="\ -[Desktop Entry]\n\ -Name=Alchemy\n\ -Comment=Client for the On-line Virtual World, Second Life\n\ -Exec=${installation_prefix}/alchemy\n\ -Icon=${installation_prefix}/alchemy_icon.png\n\ -Terminal=false\n\ -Type=Application\n\ -Categories=Game;Simulation;\n\ -StartupNotify=true\n\ -StartupWMClass=Alchemy\n\ -X-Desktop-File-Install-Version=3.0" - - echo " - Installing menu entries in ${desktop_entries_dir}" - mkdir -vp "${desktop_entries_dir}" - echo -e "${desktop_entry}" > "${desktop_entries_dir}/alchemy-viewer.desktop" || "Failed to install application menu!" + + desktoppath="${installation_prefix}/${VIEWERNAME,,}-viewer.desktop" + cat >"${desktoppath}" <<desktopfile || print "Warning: Could not write $desktoppath"s +[Desktop Entry] +Version=1.4 +Name=${VIEWERNAME} +GenericName=Second Life Viewer +Comment=Client for the Online Virtual World, Second Life +Exec=${installation_prefix}/${VIEWERNAME,,} +Icon=${VIEWERNAME}-Viewer +Terminal=false +Type=Application +Categories=Game;Simulation; +StartupNotify=true +StartupWMClass=${VIEWERNAME} +PrefersNonDefaultGPU=true +Actions=DefaultGPU;AssociateMIME; + +[Desktop Action DefaultGPU] +Exec=${installation_prefix}/${VIEWERNAME} +Name=Launch on default GPU +Comment=Launch the viewer using the system's integrated GPU, instead of the dedicated one. (if available) +PrefersNonDefaultGPU=false + +[Desktop Action AssociateMIME] +Exec=${installation_prefix}/etc/register_secondlifeprotocol.sh +Name=Associate SLURLs +Comment=Set this viewer as the default handler for secondlife:// links. +Terminal=true +desktopfile + +#The "PrefersNonDefaultGPU" line should automatically run the viewer on the most powerful GPU in the system, if it is not default. If it is, this is ignored. + +# NOTE: DO NOT CHANGE THE "GenericName" FIELD - ONLY CHANGE THE "Name" FIELD. (This is to ensure that searching "Second Life" will show all the viewers installed in a user's system, regardless of their canonical name.) + + echo " - Installing menu entries via XDG..." + xdg-icon-resource install --novendor "${install_prefix}/${VIEWERNAME,,}_icon.png" ${VIEWERNAME}-Viewer + #NOTE: Above command takes the path to the icon to install && The name of the icon to be used by XDG. This should always be in the format of "x-Viewer" to avoid potential naming conflicts, as per XDG spec. + xdg-desktop-menu install --novendor ./alchemy-viewer.desktop } if [ "$UID" == "0" ]; then -- GitLab