2014-04-05 21:58:47 +01:00
|
|
|
#pragma once
|
|
|
|
#include <QString>
|
|
|
|
|
|
|
|
/**
|
|
|
|
* \brief The Config class holds all the build-time information passed from the build system.
|
|
|
|
*/
|
|
|
|
class Config
|
|
|
|
{
|
|
|
|
public:
|
2018-07-15 13:51:05 +01:00
|
|
|
Config();
|
2021-10-17 23:47:02 +01:00
|
|
|
QString LAUNCHER_NAME;
|
|
|
|
QString LAUNCHER_DISPLAYNAME;
|
|
|
|
QString LAUNCHER_COPYRIGHT;
|
|
|
|
QString LAUNCHER_DOMAIN;
|
|
|
|
QString LAUNCHER_CONFIGFILE;
|
2021-10-20 22:06:21 +01:00
|
|
|
QString LAUNCHER_GIT;
|
2022-02-10 07:56:34 +00:00
|
|
|
QString LAUNCHER_DESKTOPFILENAME;
|
2021-10-17 23:47:02 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// The major version number.
|
|
|
|
int VERSION_MAJOR;
|
|
|
|
/// The minor version number.
|
|
|
|
int VERSION_MINOR;
|
|
|
|
/// The hotfix number.
|
|
|
|
int VERSION_HOTFIX;
|
|
|
|
/// The build number.
|
|
|
|
int VERSION_BUILD;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/**
|
|
|
|
* The version channel
|
|
|
|
* This is used by the updater to determine what channel the current version came from.
|
|
|
|
*/
|
|
|
|
QString VERSION_CHANNEL;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
bool UPDATER_ENABLED = false;
|
2015-12-28 03:45:49 +00:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// A short string identifying this build's platform. For example, "lin64" or "win32".
|
|
|
|
QString BUILD_PLATFORM;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// URL for the updater's channel
|
2021-09-04 20:27:09 +01:00
|
|
|
QString UPDATER_BASE;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2021-10-17 23:47:02 +01:00
|
|
|
|
2021-07-01 19:24:29 +01:00
|
|
|
/// User-Agent to use.
|
2021-10-17 23:47:02 +01:00
|
|
|
QString USER_AGENT;
|
|
|
|
|
2021-07-01 19:24:29 +01:00
|
|
|
/// User-Agent to use for uncached requests.
|
2021-10-17 23:47:02 +01:00
|
|
|
QString USER_AGENT_UNCACHED;
|
|
|
|
|
2021-07-01 19:24:29 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// URL for notifications
|
|
|
|
QString NOTIFICATION_URL;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// Used for matching notifications
|
|
|
|
QString FULL_VERSION_STR;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// The git commit hash of this build
|
|
|
|
QString GIT_COMMIT;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// The git refspec of this build
|
|
|
|
QString GIT_REFSPEC;
|
2015-12-28 03:45:49 +00:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/// This is printed on start to standard output
|
|
|
|
QString VERSION_STR;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/**
|
|
|
|
* This is used to fetch the news RSS feed.
|
2018-11-02 12:04:08 +00:00
|
|
|
* It defaults in CMakeLists.txt to "https://multimc.org/rss.xml"
|
2018-07-15 13:51:05 +01:00
|
|
|
*/
|
|
|
|
QString NEWS_RSS_URL;
|
2014-04-05 21:58:47 +01:00
|
|
|
|
2022-02-10 12:14:25 +00:00
|
|
|
/**
|
|
|
|
* URL that gets opened when the user clicks "More News"
|
|
|
|
*/
|
|
|
|
QString NEWS_OPEN_URL;
|
|
|
|
|
2021-07-01 19:49:38 +01:00
|
|
|
/**
|
|
|
|
* Client ID you can get from Imgur when you register an application
|
|
|
|
*/
|
|
|
|
QString IMGUR_CLIENT_ID;
|
2021-12-29 15:37:09 +00:00
|
|
|
|
2021-12-20 02:41:08 +00:00
|
|
|
/**
|
|
|
|
* Client ID you can get from Microsoft Identity Platform when you register an application
|
|
|
|
*/
|
|
|
|
QString MSA_CLIENT_ID;
|
2021-07-01 19:49:38 +01:00
|
|
|
|
2020-07-18 15:18:02 +01:00
|
|
|
/**
|
2021-10-17 23:47:02 +01:00
|
|
|
* Metadata repository URL prefix
|
2020-07-18 15:18:02 +01:00
|
|
|
*/
|
|
|
|
QString META_URL;
|
|
|
|
|
2021-06-18 12:24:20 +01:00
|
|
|
QString BUG_TRACKER_URL;
|
2022-02-10 13:55:52 +00:00
|
|
|
QString TRANSLATIONS_URL;
|
2021-06-18 12:24:20 +01:00
|
|
|
QString DISCORD_URL;
|
|
|
|
QString SUBREDDIT_URL;
|
|
|
|
|
2020-07-18 15:18:02 +01:00
|
|
|
QString RESOURCE_BASE = "https://resources.download.minecraft.net/";
|
|
|
|
QString LIBRARY_BASE = "https://libraries.minecraft.net/";
|
|
|
|
QString AUTH_BASE = "https://authserver.mojang.com/";
|
|
|
|
QString IMGUR_BASE_URL = "https://api.imgur.com/3/";
|
2021-04-29 01:32:21 +01:00
|
|
|
QString FMLLIBS_BASE_URL = "https://files.multimc.org/fmllibs/";
|
2022-02-25 14:19:15 +00:00
|
|
|
QString TRANSLATIONS_BASE_URL = "https://i18n.polymc.org/";
|
2020-07-18 15:18:02 +01:00
|
|
|
|
GH-3095 New FTB platform support
Models are based on the models from my go-modpacksch library.
License:
========
The MIT License (MIT)
Copyright (c) Jamie Mansfield <https://www.jamiemansfield.me/>
Copyright (c) contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
2020-06-07 16:14:47 +01:00
|
|
|
QString MODPACKSCH_API_BASE_URL = "https://api.modpacks.ch/";
|
|
|
|
|
2020-07-18 15:18:02 +01:00
|
|
|
QString LEGACY_FTB_CDN_BASE_URL = "https://dist.creeper.host/FTB2/";
|
|
|
|
|
2020-08-24 23:13:43 +01:00
|
|
|
QString ATL_DOWNLOAD_SERVER_URL = "https://download.nodecdn.net/containers/atl/";
|
|
|
|
|
2018-07-15 13:51:05 +01:00
|
|
|
/**
|
|
|
|
* \brief Converts the Version to a string.
|
|
|
|
* \return The version number in string format (major.minor.revision.build).
|
|
|
|
*/
|
|
|
|
QString printableVersionString() const;
|
2014-04-05 21:58:47 +01:00
|
|
|
};
|
|
|
|
|
2020-07-18 15:18:02 +01:00
|
|
|
extern const Config BuildConfig;
|
2021-12-29 15:37:09 +00:00
|
|
|
|