From ce30cda73e5d9ac74ae4cd1fd22c1dbf6d6488e0 Mon Sep 17 00:00:00 2001 From: swirl Date: Mon, 13 Dec 2021 13:01:29 -0500 Subject: [PATCH] Fix README and some references to MultiMC. --- CMakeLists.txt | 4 +-- README.md | 75 +++++++++++++-------------------------- launcher/Application.cpp | 2 +- notsecrets/CMakeLists.txt | 4 +-- notsecrets/README.md | 18 ++-------- notsecrets/Secrets.cpp | 2 -- 6 files changed, 32 insertions(+), 73 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e42e038..8417be93 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -207,10 +207,10 @@ elseif(Launcher_LAYOUT_REAL STREQUAL "lin-nodeps") install(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/LauncherScript" DESTINATION ${BUNDLE_DEST_DIR} RENAME ${Launcher_Name}) elseif(Launcher_LAYOUT_REAL STREQUAL "lin-system") - set(Launcher_APP_BINARY_NAME "devlauncher" CACHE STRING "Name of the Launcher binary") + set(Launcher_APP_BINARY_NAME "polymc" CACHE STRING "Name of the Launcher binary") set(Launcher_BINARY_DEST_DIR "bin" CACHE STRING "Path to the binary directory") set(Launcher_LIBRARY_DEST_DIR "lib${LIB_SUFFIX}" CACHE STRING "Path to the library directory") - set(Launcher_SHARE_DEST_DIR "share/devlauncher" CACHE STRING "Path to the shard data directory") + set(Launcher_SHARE_DEST_DIR "share/polymc" CACHE STRING "Path to the shard data directory") set(JARS_DEST_DIR "${Launcher_SHARE_DEST_DIR}/jars") set(BINARY_DEST_DIR ${Launcher_BINARY_DEST_DIR}) diff --git a/README.md b/README.md index 84a1e4c4..786ee2c8 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,26 @@

- MultiMC logo + PolyMC logo

-MultiMC 5 +PolyMC 5 ========= -MultiMC is a custom launcher for Minecraft that focuses on predictability, long term stability and simplicity. +PolyMC is a custom launcher for Minecraft that focuses on predictability, long term stability and simplicity. + +This is a **fork** of the MultiMC Launcher and not endorsed by MultiMC. The PolyMC community felt that the maintainer was not acting in the spirit of Free Software so this fork was made. Read "[Why was this fork made?](https://github.com/PolyMC/PolyMC/wiki/FAQ)" on the wiki for more details. + +## todo +- [ ] Get a permanent name + icon. +- [ ] Style the logo for different icon styles. +- [ ] Packaging for Linux--Any help packaging for your favorite distro is appreciated! +- [ ] Packaging for MacOS/Windows +- [ ] Stop relying on MultiMC-Hosted metadata services +- [ ] Long-term solution for the MSA client ID issue +- [ ] Remove references to MultiMC +- [ ] Figure out a way to switch to GPL. + +## Packages +We currently don't have any packages available yet as this project has just been started, but we expect this to change very soon. ## Development If you want to contribute, talk to us on [Discord](https://discord.gg/multimc) first. @@ -15,7 +30,7 @@ While blindly submitting PRs is definitely possible, they're not necessarily goi We aren't looking for flashy features, but expanding upon the existing feature set without distruption or endangering future viability of the project is OK. ### Building -If you want to build MultiMC yourself, check [BUILD.md](BUILD.md) for build instructions. +If you want to build PolyMC yourself, check [BUILD.md](BUILD.md) for build instructions. ### Code formatting Just follow the existing formatting. @@ -27,54 +42,12 @@ In general, in order of importance: * Indent with 4 space unless it's in a submodule. * Keep lists (of arguments, parameters, initializers...) as lists, not paragraphs. It should either read from top to bottom, or left to right. Not both. - ## Translations -Translations can be done [on crowdin](https://translate.multimc.org). Please avoid making direct pull requests to the translations repository. +TODO ## Forking/Redistributing/Custom builds policy -We keep MultiMC open source because we think it's important to be able to see the source code for a project like this, and we do so using the Apache license. +Do whatever you want, we don't care. Just follow the license. If you have any questions about this feel free to ask in an issue. -Part of the reason for using the Apache license is that we don't want people using the "MultiMC" name when redistributing the project. This means people must take the time to go through the source code and remove all references to "MultiMC", including but not limited to the project icon and the title of windows, (no *MultiMC-fork* in the title). - -Apache covers reasonable use for the name - a mention of the project's origins in the About dialog and the license is acceptable. However, it should be abundantly clear that the project is a fork *without* implying that you have our blessing. - - -## License -Copyright © 2013-2021 MultiMC Contributors - -Licensed under the Apache License, Version 2.0 (the "License"); you may not use this program except in compliance with the License. You may obtain a copy of the License at [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0). - -Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - -## Build status -### Linux (Intel32) - -Build: - - -Deploy: - - -### Linux (AMD64) - -Build: - - -Deploy: - - -### macOS (AMD64) - -Build: - - -Deploy: - - -### Windows (Intel32) - -Build: - - -Deploy: - +## Copyright +Copyright 2013-2021 MultiMC contributors +Copyright 2021 PolyMC contributors diff --git a/launcher/Application.cpp b/launcher/Application.cpp index c1849b4e..72ed5e5a 100644 --- a/launcher/Application.cpp +++ b/launcher/Application.cpp @@ -312,7 +312,7 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv) QString xdgDataHome = QFile::decodeName(qgetenv("XDG_DATA_HOME")); if (xdgDataHome.isEmpty()) xdgDataHome = QDir::homePath() + QLatin1String("/.local/share"); - dataPath = xdgDataHome + "/devlauncher"; + dataPath = xdgDataHome + "/polymc"; adjustedBy += "XDG standard " + dataPath; #elif defined(Q_OS_MAC) QDir foo(FS::PathCombine(applicationDirPath(), "../../Data")); diff --git a/notsecrets/CMakeLists.txt b/notsecrets/CMakeLists.txt index b5dd3cf8..00b132a3 100644 --- a/notsecrets/CMakeLists.txt +++ b/notsecrets/CMakeLists.txt @@ -3,14 +3,14 @@ target_link_libraries(secrets Qt5::Core) target_compile_definitions(secrets PUBLIC -DEMBED_SECRETS) target_include_directories(secrets PUBLIC .) -set(Launcher_CommonName "DevLauncher") +set(Launcher_CommonName "PolyMC") set(Launcher_Copyright "MultiMC Contributors" PARENT_SCOPE) set(Launcher_Domain "multimc.org" PARENT_SCOPE) set(Launcher_Name "${Launcher_CommonName}" PARENT_SCOPE) set(Launcher_DisplayName "${Launcher_CommonName} 5" PARENT_SCOPE) set(Launcher_UserAgent "${Launcher_CommonName}/5.0" PARENT_SCOPE) -set(Launcher_ConfigFile "devlauncher.cfg" PARENT_SCOPE) +set(Launcher_ConfigFile "polymc.cfg" PARENT_SCOPE) set(Launcher_Git "https://github.com/MultiMC/Launcher" PARENT_SCOPE) set(Launcher_Branding_ICNS "notsecrets/Launcher.icns" PARENT_SCOPE) diff --git a/notsecrets/README.md b/notsecrets/README.md index 4664fa89..dcc67699 100644 --- a/notsecrets/README.md +++ b/notsecrets/README.md @@ -1,6 +1,6 @@ -# DevLauncher (Not) Secrets +# PolyMC (Not) Secrets -This is a dummy implementation of MultiMC's _Secrets_ library, used to store private information needed for: +This is a dummy implementation of PolyMC's _Secrets_ library, used to store private information needed for: - Application name and logo (and branding in general) - Various URLs and API endpoints - Your Microsoft Identity Platform client ID. **This is required to use Microsoft accounts to play!** @@ -8,18 +8,6 @@ This is a dummy implementation of MultiMC's _Secrets_ library, used to store pri ## MultiMC development -In its current state, the `notsecrets` library is suitable for MultiMC code contributions (the code builds as `DevLauncher`). +In its current state, the `notsecrets` library is suitable for PolyMC code contributions. All you have to do is add the Microsoft client ID. See `Secrets.cpp` for details. - -## Forking - -Forks of this project that intend to distribute binaries to users should use their own implementation of this library that does not impersonate MultiMC in any way (see the Apache 2.0 license, common sense and trademark law). - -A fork is a serious business, especially if you intend to distribute binaries to users. This is because you need to agree to the Microsoft identity platform Terms of Use: - -https://docs.microsoft.com/en-us/legal/microsoft-identity-platform/terms-of-use - -If you truly want to accept such an agreement, a starting point is to copy `notsecrets` to `secrets`, enable the `Launcher_EMBED_SECRETS` CMake option and customize the files. - -We do not want confused users asking for help with your fork in MultiMC Discord or similar locations. diff --git a/notsecrets/Secrets.cpp b/notsecrets/Secrets.cpp index 88995635..6d2444a2 100644 --- a/notsecrets/Secrets.cpp +++ b/notsecrets/Secrets.cpp @@ -23,8 +23,6 @@ namespace { * By putting one in here, you accept the terms and conditions for using the MS Identity Plaform and assume all responsibilities associated with it. * See: https://docs.microsoft.com/en-us/legal/microsoft-identity-platform/terms-of-use * - * Above all else, do not impersonate other applications! This includes the Mojang Launcher and MultiMC - your builds are *NOT* MultiMC. - * * If you intend to base your own launcher on this code, take care and customize this to obfuscate the client ID, so it cannot be trivially found by casual attackers. */