diff --git a/CMakeLists.txt b/CMakeLists.txt index 38313a42..f71e1156 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -159,6 +159,22 @@ IF (MultiMC_UPDATER) MESSAGE(STATUS "Updater is enabled. Channel list URL: ${MultiMC_CHANLIST_URL}") ENDIF () +#### Updater-related build config options #### +option(MultiMC_UPDATER_DRY_RUN "Enable updater dry-run mode -- for updater development." OFF) +option(MultiMC_UPDATER_FORCE_LOCAL "Do not download updated updater -- for updater development." OFF) + +if(MultiMC_UPDATER_DRY_RUN) + set(MultiMC_UPDATER_DRY_RUN_value "true") +else() + set(MultiMC_UPDATER_DRY_RUN_value "false") +endif() + +if(MultiMC_UPDATER_FORCE_LOCAL) + set(MultiMC_UPDATER_FORCE_LOCAL_value "true") +else() + set(MultiMC_UPDATER_FORCE_LOCAL_value "false") +endif() + #### Custom target to just print the version. ADD_CUSTOM_TARGET(version echo "Version: ${MultiMC_VERSION_STRING}") @@ -178,16 +194,18 @@ ELSE() MESSAGE(STATUS "Failed to check Git commit. ${GIT_COMMIT_CHECK_RESULTVAR}") ENDIF() +OPTION(MultiMC_CODE_COVERAGE "Compiles for code coverage" OFF) +IF(MultiMC_CODE_COVERAGE) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 --coverage") + SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -O0 --coverage") + SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g -O0 --coverage") + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -O0 --coverage") +ENDIF(MultiMC_CODE_COVERAGE) + ######## Configure header ######## configure_file("${PROJECT_SOURCE_DIR}/Config.cpp.in" "${PROJECT_BINARY_DIR}/Config.cpp") - -######## Other Stuff ######## - -ADD_DEFINITIONS(-DQUAZIP_STATIC) -ADD_DEFINITIONS(-DLIBSETTINGS_STATIC) -ADD_DEFINITIONS(-DLIBUTIL_STATIC) - ######## Packaging/install paths setup ######## IF(UNIX AND APPLE) @@ -222,6 +240,7 @@ SET(DIRS "${QT_LIBS_DIR}") ################################ Included Libs ################################ # Add quazip +ADD_DEFINITIONS(-DQUAZIP_STATIC) add_subdirectory(depends/quazip) include_directories(depends/quazip) @@ -240,10 +259,12 @@ include_directories(${PACK200_INCLUDE_DIR}) ######## MultiMC Libs ######## # Add the util library. +ADD_DEFINITIONS(-DLIBUTIL_STATIC) add_subdirectory(depends/util) include_directories(${LIBUTIL_INCLUDE_DIR}) # Add the settings library. +ADD_DEFINITIONS(-DLIBSETTINGS_STATIC) add_subdirectory(depends/settings) include_directories(${LIBSETTINGS_INCLUDE_DIR}) @@ -575,7 +596,16 @@ gui/dialogs/NotificationDialog.ui gui/widgets/MCModInfoFrame.ui ) -set (FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${MULTIMC_SOURCES} ${MULTIMC_UIS}) +set(FILES_TO_TRANSLATE) +foreach(file ${MULTIMC_SOURCES}) + get_filename_component(absfile "${file}" ABSOLUTE) + list(APPEND FILES_TO_TRANSLATE "${absfile}") +endforeach() + +foreach(file ${MULTIMC_UIS}) + get_filename_component(absfile "${file}" ABSOLUTE) + list(APPEND FILES_TO_TRANSLATE "${absfile}") +endforeach() SET(MULTIMC_QRCS resources/backgrounds/backgrounds.qrc @@ -603,23 +633,9 @@ ENDIF() # Link additional libraries IF(WIN32) - SET(MultiMC_LINK_ADDITIONAL_LIBS ${MultiMC_LINK_ADDITIONAL_LIBS} - Qt5::WinMain # Link WinMain - ) + SET(MultiMC_LINK_ADDITIONAL_LIBS ${MultiMC_LINK_ADDITIONAL_LIBS} Qt5::WinMain) ENDIF(WIN32) -OPTION(MultiMC_UPDATER_DRY_RUN "Enable updater dry-run mode -- for updater development." OFF) -OPTION(MultiMC_UPDATER_FORCE_LOCAL "Do not download updated updater -- for updater development." OFF) - -OPTION(MultiMC_CODE_COVERAGE "Compiles for code coverage" OFF) -IF(MultiMC_CODE_COVERAGE) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 --coverage") - SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -O0 --coverage") - SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g -O0 --coverage") - SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -O0 --coverage") -ENDIF(MultiMC_CODE_COVERAGE) - # Tell CMake that MultiMCLauncher.jar is generated. #SET_SOURCE_FILES_PROPERTIES(${PROJECT_BINARY_DIR}/depends/launcher/MultiMCLauncher.jar GENERATED) #SET_SOURCE_FILES_PROPERTIES(${PROJECT_BINARY_DIR}/depends/javacheck/JavaCheck.jar GENERATED) diff --git a/Config.cpp.in b/Config.cpp.in index 4d3d0079..8051e1b4 100644 --- a/Config.cpp.in +++ b/Config.cpp.in @@ -4,8 +4,6 @@ Config BuildConfig; Config::Config() { - static bool ON = true; - static bool OFF = false; // Version information VERSION_MAJOR = @MultiMC_VERSION_MAJOR@; VERSION_MINOR = @MultiMC_VERSION_MINOR@; @@ -27,8 +25,8 @@ Config::Config() NOTIFICATION_URL = "@MultiMC_NOTIFICATION_URL@"; FULL_VERSION_STR = "@MultiMC_VERSION_MAJOR@.@MultiMC_VERSION_MINOR@.@MultiMC_VERSION_BUILD@"; - UPDATER_DRY_RUN = @MultiMC_UPDATER_DRY_RUN@; - UPDATER_FORCE_LOCAL = @MultiMC_UPDATER_FORCE_LOCAL@; + UPDATER_DRY_RUN = @MultiMC_UPDATER_DRY_RUN_value@; + UPDATER_FORCE_LOCAL = @MultiMC_UPDATER_FORCE_LOCAL_value@; GIT_COMMIT = "@MultiMC_GIT_COMMIT@"; VERSION_STR = "@MultiMC_VERSION_STRING@"; diff --git a/logic/updater/DownloadUpdateTask.cpp b/logic/updater/DownloadUpdateTask.cpp index 1a423210..b7144539 100644 --- a/logic/updater/DownloadUpdateTask.cpp +++ b/logic/updater/DownloadUpdateTask.cpp @@ -408,7 +408,9 @@ DownloadUpdateTask::processFileLists(NetJob *job, if (isUpdater) { if(BuildConfig.UPDATER_FORCE_LOCAL) + { QLOG_DEBUG() << "Skipping updater download and using local version."; + } else { auto cache_entry = MMC->metacache()->resolveEntry("root", entry.path); diff --git a/translations/CMakeLists.txt b/translations/CMakeLists.txt index 7463ae40..142d44dd 100644 --- a/translations/CMakeLists.txt +++ b/translations/CMakeLists.txt @@ -3,12 +3,8 @@ set_directory_properties(PROPERTIES CLEAN_NO_CUSTOM 1) ### translation stuff file(GLOB TRANSLATION_FILES ${CMAKE_CURRENT_LIST_DIR}/*.ts) -set(FILES_TO_TRANSLATE_ABSOLUTE) -foreach(file ${FILES_TO_TRANSLATE}) - list(APPEND FILES_TO_TRANSLATE_ABSOLUTE "${CMAKE_SOURCE_DIR}/${file}") -endforeach() -qt5_create_translation(TRANSLATION_MESSAGES ${FILES_TO_TRANSLATE_ABSOLUTE} ${TRANSLATION_FILES}) +qt5_create_translation(TRANSLATION_MESSAGES ${FILES_TO_TRANSLATE} ${TRANSLATION_FILES}) qt5_add_translation(TRANSLATION_QM ${TRANSLATION_FILES}) add_custom_target(translations_update DEPENDS ${TRANSLATION_MESSAGES}) add_custom_target(translations DEPENDS ${TRANSLATION_QM}) diff --git a/translations/mmc_de.ts b/translations/mmc_de.ts index 6fb26eb5..2ad9f351 100644 --- a/translations/mmc_de.ts +++ b/translations/mmc_de.ts @@ -704,7 +704,7 @@ p, li { white-space: pre-wrap; } Schließen - + Version Version @@ -894,7 +894,7 @@ p, li { white-space: pre-wrap; } - + Kill Minecraft? Minecraft töten? @@ -920,7 +920,7 @@ p, li { white-space: pre-wrap; } DownloadUpdateTask - + Finding information about the current version... Finde Informationen zur benutzten Version... @@ -960,7 +960,7 @@ p, li { white-space: pre-wrap; } Bearbeite Dateilisten - Rechne aus, wie das Update installiert werden soll... - + Failed to write update script file. Fehler beim Schreiben des Updatescripts. @@ -1006,6 +1006,35 @@ p, li { white-space: pre-wrap; } Notizen von %1 bearbeiten + + ForgeInstallTask + + + Installing forge... + + + + + Unknown error occured + + + + + Failure to download forge + + + + + + Failure to install forge + + + + + Failed to load the version description file for reasons unknown. + + + ForgeListLoadTask @@ -1263,10 +1292,15 @@ p, li { white-space: pre-wrap; } LLListLoadTask - + Loading LiteLoader version list... + + + This is a lightweight loader for mods that don't change game mechanics. + + LWJGLSelectDialog @@ -1357,7 +1391,7 @@ p, li { white-space: pre-wrap; } Texturenpakete - + Select Loader Mods Title of regular mod selection dialog @@ -1440,6 +1474,19 @@ p, li { white-space: pre-wrap; } Mod-Installation: Mod-Dateien werden hinzugefügt... + + LiteLoaderInstallTask + + + For reasons unknown, the LiteLoader installation failed. Check your MultiMC log files for details. + Aus unbekannten Gründen ist die Installation von LiteLoader fehlgeschlagen. Sieh dir die MultiMC-Logdateien an, um weitere Details zu erhalten. + + + + Failed to load the version description file for reasons unknown. + + + LoginDialog @@ -1871,7 +1918,7 @@ p, li { white-space: pre-wrap; } - + Manage Accounts Verwalte Konten @@ -1900,7 +1947,7 @@ p, li { white-space: pre-wrap; } Konten - + No update found. Keine neue Version gefunden. @@ -1912,18 +1959,18 @@ You are using the latest version. Du verwendest bereits die neueste Version. - + Rename - + Launch - + Profilers @@ -1963,17 +2010,19 @@ Du verwendest bereits die neueste Version. Keine Nachrichten verfügbar. - - Notification + + + Failed to create instance %1: - - Don't show again + + + An instance with the given directory name already exists. - + @@ -1981,22 +2030,34 @@ Du verwendest bereits die neueste Version. - + Error Fehler - - + + + Failed to create the instance directory. + + + + + + Unknown instance loader error %1 + + + + + MultiMC cannot download Minecraft or update instances unless you have at least one account added. Please add your Mojang or Minecraft account. MultiMC kann Minecraft nicht herunterladen und keine Instanzen aktualisieren, solange du kein Konto erstellt hast. Bitte füge dein Mojang- oder Minecraft-Konto hinzu. - + Group name Gruppenname @@ -2028,7 +2089,7 @@ Die folgende Instanz löschen: Neuen Instanznamen eingeben. - + No Accounts Keine Konten @@ -2085,7 +2146,7 @@ Die folgende Instanz löschen: - + Failed to load screenshots! @@ -2096,7 +2157,7 @@ Die folgende Instanz löschen: - + Play Offline Offline spielen @@ -2141,17 +2202,17 @@ Die folgende Instanz löschen: Dies wird sämtliche Bibliotheken-/Versions-Anpassungen, die du vorgenommen hast, entfernen. Dies schließt Dinge wie Forge mit ein. - + Instance settings Instanzeinstellungen - + Rename Instance Instanz umbenennen - + Select a Java version Wähle eine Java-Version @@ -2169,7 +2230,7 @@ Die folgende Instanz löschen: MinecraftProcess - + Minecraft exited with exitcode %1. Message displayed on instance exit Minecraft wurde mit Status %1 beendet. @@ -2187,45 +2248,50 @@ Die folgende Instanz löschen: Minecraft wurde durch den Nutzer getötet. - + + The command failed to start + + + + Running Post-Launch command: %1 - + Post-Launch command failed with code %1. - + Post-Launch command ran successfully. - + Running Pre-Launch command: %1 - + Pre-Launch command failed with code %1. - + Pre-Launch command ran successfully. - + Could not launch minecraft! Error message displayed if instace can't start Konnte Minecraft nicht starten! @@ -2331,27 +2397,49 @@ Die folgende Instanz löschen: Unbekannter Autor + + NotificationDialog + + + Dialog + + + + + + TextLabel + + + + + + Don't show again + + + + + + Close + Schließen + + OneSixFTBInstanceForge - Downloading Forge... - Forge wird heruntergeladen... + Forge wird heruntergeladen... - Installing Forge... - Forge wird installiert... + Forge wird installiert... - Couldn't load the version config - Fehlschlag beim Laden der Versions-Konfiguration + Fehlschlag beim Laden der Versions-Konfiguration - Couldn't install Forge - Fehler beim Installieren von Forge + Fehler beim Installieren von Forge @@ -2366,7 +2454,7 @@ Die folgende Instanz löschen: Bibliothek - + Loader Mods Mods @@ -2377,7 +2465,7 @@ Die folgende Instanz löschen: &Hinzufügen - + Manage Mods Verwalte Mods @@ -2387,12 +2475,11 @@ Die folgende Instanz löschen: Version - Main Class: - Hauptklasse: + Hauptklasse: - + Replace any current custom version with Minecraft Forge Die aktuelle benutzerdefinierte Version mit Minecraft Forge ersetzen @@ -2417,17 +2504,24 @@ Die folgende Instanz löschen: - + + + + This isn't implemented yet. + + + + Reset order - + Move up - + Move down @@ -2456,7 +2550,7 @@ Die folgende Instanz löschen: Entferne ausgewählte Bibliotheken - + &Remove &Entfernen @@ -2477,40 +2571,47 @@ Die folgende Instanz löschen: Ressourcenpakete - + Couldn't remove file - - - Couldn't save the new order + + Failed to load the version description file for reasons unknown. - - + + + + Revert? Zurücksetzen? - - + + + This action will remove the FTB pack version patch. Continue? + + + + + This action will remove your custom.json. Continue? - + No Forge versions are currently available for Minecraft - + Select LiteLoader version - + No LiteLoader versions are currently available for Minecraft @@ -2519,9 +2620,12 @@ Die folgende Instanz löschen: Möchtest du wirklich die Version dieser Instanz zurücksetzen? - - - + + + + + + Error Fehler @@ -2530,7 +2634,7 @@ Die folgende Instanz löschen: Fehler beim Öffnen der custom.json-Datei, überprüfe deine Einstellungen - + Select Forge version Wähle Forge-Version @@ -2539,18 +2643,16 @@ Die folgende Instanz löschen: Dies wird alle Änderungen, die du vorgenommen hast, zurücksetzen. Bist du damit einverstanden? - LiteLoader - LiteLoader + LiteLoader There is no information available on how to install LiteLoader into this version of Minecraft Es gibt momentan keine Informationen zur Installation von LiteLoader für diese Version von Minecraft - For reasons unknown, the LiteLoader installation failed. Check your MultiMC log files for details. - Aus unbekannten Gründen ist die Installation von LiteLoader fehlgeschlagen. Sieh dir die MultiMC-Logdateien an, um weitere Details zu erhalten. + Aus unbekannten Gründen ist die Installation von LiteLoader fehlgeschlagen. Sieh dir die MultiMC-Logdateien an, um weitere Details zu erhalten. @@ -2560,25 +2662,98 @@ Die folgende Instanz löschen: Java-Installation wird getestet... - + + Failed to create folder for minecraft binaries. + + + + + The specified Minecraft version is invalid. Choose a different one. + + + + Getting the version files from Mojang... Versionsdateien von Mojang werden heruntergeladen... - + + Can't open %1 for writing. + + + + + Failed to write into %1. Written %2 out of %3. + + + + + Can't commit changes to %1 + + + + + Failed to download the version description. Try again. + + + + Updating assets index... Datenindex wird aktualisiert... - + + Asset index for %1 + + + + + Failed to read the assets index! + + + + Getting the assets files from Mojang... Daten werden von Mojang geholt... - + + Assets for %1 + + + + + Failed to download the assets index! + + + + + Failed to download assets! + + + + Getting the library files from Mojang... Bibliotheken werden von Mojang geholt... + + + Failed to load the version description file for reasons unknown. + + + + + Libraries for instance %1 + + + + + Failed to download the following files: +%1 + +Please try again. + + Preparing for launch... Start wird vorbereitet... @@ -2587,14 +2762,20 @@ Die folgende Instanz löschen: OneSixVersion - Name - Name + Name - Version - Version + Version + + + + PasteUpload + + + paste.ee returned an error. Please consult the logs for more information + @@ -2674,56 +2855,43 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast. - + Latest - - - - - - - - Error - Fehler + Fehler - - - Error while applying %1. Please check MultiMC-0.log for more info. + + + Error resolving library dependencies between %1 and %2 in %3. - - Error while reading. Please check MultiMC-0.log for more info. - - - - - Error while applying. Please check MultiMC-0.log for more info. - - - - - The version descriptors of this instance are not compatible with the current version of MultiMC + + The base version file of this instance was meant for a newer (%1) version of the vanilla launcher than this version of MultiMC supports (%2). - Unable to open %1: %2 + The patch %1 is for a different version of Minecraft (%2) than that of the instance (%3). - - Unable to parse %1: %2 at %3 + + %1 has the same order as %2 - - Error while reading %1. Please check MultiMC-0.log for more info. + + Unable to open the version file %1: %2. + + + + + Unable to process the version file %1: %2 at %3. @@ -2809,7 +2977,7 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast.Allgemein - + Sorting Mode Sortiermodus @@ -2824,7 +2992,7 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast.Nach Namen - + Update Settings Updateeinstellungen @@ -2854,7 +3022,7 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast. - + @@ -2863,7 +3031,7 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast.... - + Features @@ -2923,7 +3091,12 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast. - + + Reset hidden notifications + + + + External Editors (leave empty for system default) Externe Editor-Anwendungen (leer lassen, um die System-Voreinstellung zu benutzen) @@ -3239,7 +3412,7 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast.Die ausgewählte Datei scheint keine Anwendung zu sein - + English @@ -3403,6 +3576,24 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast.Validiere Zugriffstoken: Bearbeite Antwort... + + VersionFinal + + + Name + Name + + + + Version + Version + + + + Couldn't save the new order + + + VersionListView @@ -3444,7 +3635,7 @@ Diese Mitteilung wird so lange angezeigt, bis du die Option entfernt hast. YggdrasilTask - + <b>SSL Handshake failed.</b><br/>There might be a few causes for it:<br/><ul><li>You use Windows XP and need to <a href="http://www.microsoft.com/en-us/download/details.aspx?id=38918">update your root certificates</a></li><li>Some device on your network is interfering with SSL traffic. In that case, you have bigger worries than Minecraft not starting.</li><li>Possibly something else. Check the MultiMC log file for details</li></ul> <b>SSL-Handshake fehlgeschlagen.</b><br/>Es kann mehrere Erklärungen geben:<br/><ul><li>Du benutzt Windows XP und musst <a href="http://www.microsoft.com/en-us/download/details.aspx?id=38918">dein Stammzertifikat aktualisieren</a></li><li>Ein Gerät in deinem Netzwerk mischt sich in den SSL-Verkehr ein. In diesem Fall hast du größere Probleme, als das, dass Minecraft nicht gestartet werden kann.</li><li>Möglicherweise etwas anderes. Prüfe die MultiMC-Logdatei für Details</li></ul>