Reduce app ID hardcoding

And rename the relevant build variable to make more sense

Signed-off-by: Echo J <tcg96nougat@gmail.com>
This commit is contained in:
Echo J 2025-03-07 11:21:20 +02:00
parent ffdf1f746e
commit 14ab4055ff
9 changed files with 40 additions and 34 deletions

View File

@ -49,7 +49,7 @@ Config::Config()
LAUNCHER_DOMAIN = "@Launcher_Domain@"; LAUNCHER_DOMAIN = "@Launcher_Domain@";
LAUNCHER_CONFIGFILE = "@Launcher_ConfigFile@"; LAUNCHER_CONFIGFILE = "@Launcher_ConfigFile@";
LAUNCHER_GIT = "@Launcher_Git@"; LAUNCHER_GIT = "@Launcher_Git@";
LAUNCHER_DESKTOPFILENAME = "@Launcher_DesktopFileName@"; LAUNCHER_APPID = "@Launcher_AppID@";
LAUNCHER_SVGFILENAME = "@Launcher_SVGFileName@"; LAUNCHER_SVGFILENAME = "@Launcher_SVGFileName@";
USER_AGENT = "@Launcher_UserAgent@"; USER_AGENT = "@Launcher_UserAgent@";

View File

@ -52,7 +52,7 @@ class Config {
QString LAUNCHER_DOMAIN; QString LAUNCHER_DOMAIN;
QString LAUNCHER_CONFIGFILE; QString LAUNCHER_CONFIGFILE;
QString LAUNCHER_GIT; QString LAUNCHER_GIT;
QString LAUNCHER_DESKTOPFILENAME; QString LAUNCHER_APPID;
QString LAUNCHER_SVGFILENAME; QString LAUNCHER_SVGFILENAME;
/// The major version number. /// The major version number.

View File

@ -225,7 +225,7 @@ Application::Application(int& argc, char** argv) : QApplication(argc, argv)
setApplicationName(BuildConfig.LAUNCHER_NAME); setApplicationName(BuildConfig.LAUNCHER_NAME);
setApplicationDisplayName(QString("%1 %2").arg(BuildConfig.LAUNCHER_DISPLAYNAME, BuildConfig.printableVersionString())); setApplicationDisplayName(QString("%1 %2").arg(BuildConfig.LAUNCHER_DISPLAYNAME, BuildConfig.printableVersionString()));
setApplicationVersion(BuildConfig.printableVersionString() + "\n" + BuildConfig.GIT_COMMIT); setApplicationVersion(BuildConfig.printableVersionString() + "\n" + BuildConfig.GIT_COMMIT);
setDesktopFileName(BuildConfig.LAUNCHER_DESKTOPFILENAME); setDesktopFileName(BuildConfig.LAUNCHER_APPID);
m_startTime = QDateTime::currentDateTime(); m_startTime = QDateTime::currentDateTime();
// Don't quit on hiding the last window // Don't quit on hiding the last window
@ -1949,4 +1949,4 @@ bool Application::checkQSavePath(QString path)
} }
} }
return false; return false;
} }

View File

@ -811,7 +811,7 @@ SET(LAUNCHER_SOURCES
resources/flat_white/flat_white.qrc resources/flat_white/flat_white.qrc
resources/documents/documents.qrc resources/documents/documents.qrc
resources/shaders/shaders.qrc resources/shaders/shaders.qrc
../${Launcher_Branding_LogoQRC} "${CMAKE_CURRENT_BINARY_DIR}/../${Launcher_Branding_LogoQRC}"
# Icons # Icons
icons/MMCIcon.h icons/MMCIcon.h
@ -1248,7 +1248,7 @@ qt_add_resources(LAUNCHER_RESOURCES
resources/flat/flat.qrc resources/flat/flat.qrc
resources/documents/documents.qrc resources/documents/documents.qrc
resources/shaders/shaders.qrc resources/shaders/shaders.qrc
../${Launcher_Branding_LogoQRC} "${CMAKE_CURRENT_BINARY_DIR}/../${Launcher_Branding_LogoQRC}"
) )
qt_wrap_ui(PRISMUPDATER_UI qt_wrap_ui(PRISMUPDATER_UI

View File

@ -1587,7 +1587,7 @@ void MainWindow::on_actionCreateInstanceShortcut_triggered()
if (desktopFilePath.isEmpty()) if (desktopFilePath.isEmpty())
return; // file dialog canceled by user return; // file dialog canceled by user
appPath = "flatpak"; appPath = "flatpak";
args.append({ "run", BuildConfig.LAUNCHER_DESKTOPFILENAME }); args.append({ "run", BuildConfig.LAUNCHER_APPID });
} }
#elif defined(Q_OS_WIN) #elif defined(Q_OS_WIN)

View File

@ -14,6 +14,8 @@ set(Launcher_DisplayName "Prism Launcher")
set(Launcher_Name "${Launcher_CommonName}" PARENT_SCOPE) set(Launcher_Name "${Launcher_CommonName}" PARENT_SCOPE)
set(Launcher_DisplayName "${Launcher_DisplayName}" PARENT_SCOPE) set(Launcher_DisplayName "${Launcher_DisplayName}" PARENT_SCOPE)
set(Launcher_AppID "org.prismlauncher.PrismLauncher")
set(Launcher_SVGFileName "${Launcher_AppID}.svg")
set(Launcher_Copyright "© 2022-2025 Prism Launcher Contributors\\n© 2021-2022 PolyMC Contributors\\n© 2012-2021 MultiMC Contributors") set(Launcher_Copyright "© 2022-2025 Prism Launcher Contributors\\n© 2021-2022 PolyMC Contributors\\n© 2012-2021 MultiMC Contributors")
set(Launcher_Copyright_Mac "© 2022-2025 Prism Launcher Contributors, © 2021-2022 PolyMC Contributors and © 2012-2021 MultiMC Contributors" PARENT_SCOPE) set(Launcher_Copyright_Mac "© 2022-2025 Prism Launcher Contributors, © 2021-2022 PolyMC Contributors and © 2012-2021 MultiMC Contributors" PARENT_SCOPE)
set(Launcher_Copyright "${Launcher_Copyright}" PARENT_SCOPE) set(Launcher_Copyright "${Launcher_Copyright}" PARENT_SCOPE)
@ -21,13 +23,13 @@ set(Launcher_Domain "prismlauncher.org" PARENT_SCOPE)
set(Launcher_UserAgent "${Launcher_CommonName}/${Launcher_VERSION_NAME}" PARENT_SCOPE) set(Launcher_UserAgent "${Launcher_CommonName}/${Launcher_VERSION_NAME}" PARENT_SCOPE)
set(Launcher_ConfigFile "prismlauncher.cfg" PARENT_SCOPE) set(Launcher_ConfigFile "prismlauncher.cfg" PARENT_SCOPE)
set(Launcher_Git "https://github.com/PrismLauncher/PrismLauncher" PARENT_SCOPE) set(Launcher_Git "https://github.com/PrismLauncher/PrismLauncher" PARENT_SCOPE)
set(Launcher_DesktopFileName "org.prismlauncher.PrismLauncher" PARENT_SCOPE) set(Launcher_AppID "${Launcher_AppID}" PARENT_SCOPE)
set(Launcher_SVGFileName "org.prismlauncher.PrismLauncher.svg" PARENT_SCOPE) set(Launcher_SVGFileName "${Launcher_SVGFileName}" PARENT_SCOPE)
set(Launcher_Desktop "program_info/org.prismlauncher.PrismLauncher.desktop" PARENT_SCOPE) set(Launcher_Desktop "program_info/${Launcher_AppID}.desktop" PARENT_SCOPE)
set(Launcher_mrpack_MIMEInfo "program_info/modrinth-mrpack-mime.xml" PARENT_SCOPE) set(Launcher_mrpack_MIMEInfo "program_info/modrinth-mrpack-mime.xml" PARENT_SCOPE)
set(Launcher_MetaInfo "program_info/org.prismlauncher.PrismLauncher.metainfo.xml" PARENT_SCOPE) set(Launcher_MetaInfo "program_info/${Launcher_AppID}.metainfo.xml" PARENT_SCOPE)
set(Launcher_SVG "program_info/org.prismlauncher.PrismLauncher.svg" PARENT_SCOPE) set(Launcher_SVG "program_info/${Launcher_SVGFileName}" PARENT_SCOPE)
set(Launcher_Branding_ICNS "program_info/prismlauncher.icns" PARENT_SCOPE) set(Launcher_Branding_ICNS "program_info/prismlauncher.icns" PARENT_SCOPE)
set(Launcher_Branding_ICO "program_info/prismlauncher.ico") set(Launcher_Branding_ICO "program_info/prismlauncher.ico")
set(Launcher_Branding_ICO "${Launcher_Branding_ICO}" PARENT_SCOPE) set(Launcher_Branding_ICO "${Launcher_Branding_ICO}" PARENT_SCOPE)
@ -36,11 +38,13 @@ set(Launcher_Branding_LogoQRC "program_info/prismlauncher.qrc" PARENT_SCOPE)
set(Launcher_Portable_File "program_info/portable.txt" PARENT_SCOPE) set(Launcher_Portable_File "program_info/portable.txt" PARENT_SCOPE)
configure_file(org.prismlauncher.PrismLauncher.desktop.in org.prismlauncher.PrismLauncher.desktop) configure_file(${Launcher_AppID}.desktop.in ${Launcher_AppID}.desktop)
configure_file(org.prismlauncher.PrismLauncher.metainfo.xml.in org.prismlauncher.PrismLauncher.metainfo.xml) configure_file(${Launcher_AppID}.metainfo.xml.in ${Launcher_AppID}.metainfo.xml)
configure_file(prismlauncher.rc.in prismlauncher.rc @ONLY) configure_file(prismlauncher.rc.in prismlauncher.rc @ONLY)
configure_file(prismlauncher.qrc.in prismlauncher.qrc @ONLY)
configure_file(prismlauncher.manifest.in prismlauncher.manifest @ONLY) configure_file(prismlauncher.manifest.in prismlauncher.manifest @ONLY)
configure_file(prismlauncher.ico prismlauncher.ico COPYONLY) configure_file(prismlauncher.ico prismlauncher.ico COPYONLY)
configure_file(${Launcher_SVGFileName} ${Launcher_SVGFileName} COPYONLY)
if(MSVC) if(MSVC)
set(Launcher_MSVC_Redist_NSIS_Section [=[ set(Launcher_MSVC_Redist_NSIS_Section [=[

View File

@ -1,5 +1,7 @@
#!/bin/bash #!/bin/bash
LAUNCHER_APPID="org.prismlauncher.PrismLauncher"
svg2png() { svg2png() {
input_file="$1" input_file="$1"
output_file="$2" output_file="$2"
@ -13,13 +15,13 @@ if command -v "inkscape" && command -v "icotool" && command -v "oxipng"; then
# Windows ICO # Windows ICO
d=$(mktemp -d) d=$(mktemp -d)
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_16.png" 16 16 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_16.png" 16 16
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_24.png" 24 24 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_24.png" 24 24
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_32.png" 32 32 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_32.png" 32 32
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_48.png" 48 48 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_48.png" 48 48
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_64.png" 64 64 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_64.png" 64 64
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_128.png" 128 128 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_128.png" 128 128
svg2png org.prismlauncher.PrismLauncher.svg "$d/prismlauncher_256.png" 256 256 svg2png ${LAUNCHER_APPID}.svg "$d/prismlauncher_256.png" 256 256
oxipng --opt max --strip all --alpha --interlace 0 "$d/prismlauncher_"*".png" oxipng --opt max --strip all --alpha --interlace 0 "$d/prismlauncher_"*".png"
@ -44,15 +46,15 @@ if command -v "inkscape" && command -v "iconutil" && command -v "oxipng"; then
mkdir -p "$d" mkdir -p "$d"
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_16x16.png" 16 16 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_16x16.png" 16 16
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_16x16@2.png" 32 32 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_16x16@2.png" 32 32
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_32x32.png" 32 32 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_32x32.png" 32 32
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_32x32@2.png" 64 64 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_32x32@2.png" 64 64
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_128x128.png" 128 128 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_128x128.png" 128 128
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_128x128@2.png" 256 256 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_128x128@2.png" 256 256
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_256x256.png" 256 256 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_256x256.png" 256 256
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_256x256@2.png" 512 512 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_256x256@2.png" 512 512
svg2png org.prismlauncher.PrismLauncher.bigsur.svg "$d/icon_512x512@2x.png" 1024 1024 svg2png ${LAUNCHER_APPID}.bigsur.svg "$d/icon_512x512@2x.png" 1024 1024
oxipng --opt max --strip all --alpha --interlace 0 "$d/icon_"*".png" oxipng --opt max --strip all --alpha --interlace 0 "$d/icon_"*".png"
@ -63,4 +65,4 @@ else
fi fi
# replace icon in themes # replace icon in themes
cp -v org.prismlauncher.PrismLauncher.svg "../launcher/resources/multimc/scalable/launcher.svg" cp -v ${LAUNCHER_APPID}.svg "../launcher/resources/multimc/scalable/launcher.svg"

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<component type="desktop"> <component type="desktop">
<id>org.prismlauncher.PrismLauncher</id> <id>@Launcher_AppID@</id>
<launchable type="desktop-id">org.prismlauncher.PrismLauncher.desktop</launchable> <launchable type="desktop-id">@Launcher_AppID@.desktop</launchable>
<name>Prism Launcher</name> <name>Prism Launcher</name>
<developer_name>Prism Launcher Contributors</developer_name> <developer_name>Prism Launcher Contributors</developer_name>
<summary>Custom Minecraft Launcher to easily manage multiple Minecraft installations at once</summary> <summary>Custom Minecraft Launcher to easily manage multiple Minecraft installations at once</summary>

View File

@ -1,6 +1,6 @@
<!DOCTYPE RCC> <!DOCTYPE RCC>
<RCC version="1.0"> <RCC version="1.0">
<qresource prefix="/"> <qresource prefix="/">
<file>org.prismlauncher.PrismLauncher.svg</file> <file>@Launcher_AppID@.svg</file>
</qresource> </qresource>
</RCC> </RCC>