Commit Graph

158 Commits

Author SHA1 Message Date
Evan Goode
5e93cff2d0 clang-format
Signed-off-by: Evan Goode <mail@evangoo.de>
2024-08-11 22:06:38 -04:00
Evan Goode
62f87c423f Use Nintendo Switch client ID
Reputable projects such as prismarine-auth and azalea-auth hardcode the
Nintendo Switch client ID instead of their own custom Azure application,
so we should be fine to go ahead and do the same.

Unfortunately, client IDs created for custom Azure applications, such as
Prism Launcher's client ID, will no longer work with Fjord Launcher, so
users who manually supplied a client ID will need to clear theirs.
2024-06-23 22:57:31 -04:00
Evan Goode
c8265567aa Merge tag '8.3' into develop 2024-05-03 19:21:17 -04:00
Evan Goode
3e7b747926 Merge branch 'unmojang/8.2' into develop 2024-05-03 19:10:19 -04:00
Evan Goode
8acd7168dd Actually fix offline accounts on 1.16.4, 1.16.5 2024-05-03 19:07:44 -04:00
Evan Goode
d0550e998d Merge branch 'unmojang/fix-1.16-offline' into develop 2024-05-03 17:31:39 -04:00
BatteredBunny
1d2590b024 Clean up
Signed-off-by: BatteredBunny <ayes2022@protonmail.com>
2024-04-25 11:40:01 +03:00
Alexandru Ionut Tripon
99203cbd9b
Merge pull request #2253 from Trial97/manual_backport
Manual backport to 8.x
2024-03-28 14:47:45 +02:00
Alexandru Ionut Tripon
7c2a9df98e
Update launcher/minecraft/auth/steps/XboxAuthorizationStep.cpp
Signed-off-by: Alexandru Ionut Tripon <alexandru.tripon97@gmail.com>
2024-03-28 14:43:49 +02:00
Alexandru Ionut Tripon
b854c56c8c
Update launcher/minecraft/auth/steps/XboxAuthorizationStep.cpp
Co-authored-by: Tayou <git@tayou.org>
Signed-off-by: Alexandru Ionut Tripon <alexandru.tripon97@gmail.com>
2024-03-28 14:43:40 +02:00
Trial97
2c864a4aad
added more microsoft error codes
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2024-03-28 14:43:30 +02:00
Evan Goode
96b4933326 Merge Prism Launcher 8.2
Signed-off-by: Evan Goode <mail@evangoo.de>
2024-03-21 10:59:32 -04:00
Evan Goode
639a7820fe Fix offline multiplayer in 1.16.4-1.16.5
Resolves https://github.com/fn2006/PollyMC/issues/150

If the game is launched in offline mode, pass invalid API servers via
the -Dminecraft.api.* system properties. This workaround is mentioned
here:
https://github.com/FabricMC/fabric-loom/issues/915#issuecomment-1609154390

I think this change is appropriate to make here in PollyMC even though
the Fabric developers decided against using it there. If a user wants to
override the API servers back to the vanilla values (in order to use
Auth Me or something), they can do so by setting the following custom
JVM args on the instance:

-Dminecraft.api.env=PROD
-Dminecraft.api.auth.host=https://authserver.mojang.com
-Dminecraft.api.account.host=https://api.mojang.com
-Dminecraft.api.session.host=https://sessionserver.mojang.com
-Dminecraft.api.services.host=https://api.minecraftservices.com

Previously, auth args would override any user-specified args, but this
patch also changes that behavior so user-specified args are now passed
last.
2024-03-04 21:53:58 -05:00
BatteredBunny
187475e35f Adjusted AuthServerColumn to return authlibInjectorUrl instead of authServerUrl, make the column auto-resize
Signed-off-by: BatteredBunny <ayes2022@protonmail.com>
2024-01-23 22:38:41 +02:00
BatteredBunny
5c95f10f64 Add auth server column to account list
Signed-off-by: BatteredBunny <ayes2022@protonmail.com>
2024-01-19 00:40:35 +02:00
Alexandru Ionut Tripon
422135b2ab
Merge pull request #1771 from Trial97/account
Try refreshing account on launch if needed
2024-01-10 16:24:34 +02:00
Sefa Eyeoglu
d60d089cbc
Merge pull request #1751 from LocalSpook/account_type 2023-11-23 10:27:06 +01:00
Evan Goode
8f540a5af1 Correctly save Mojang account type
Signed-off-by: Evan Goode <mail@evangoo.de>
2023-11-16 12:33:03 -05:00
Evan Goode
dcc2d77ebb Fix offline accounts
Original authlib-injector work had a bug making offline accounts not
save correctly.
2023-11-16 01:15:17 -05:00
Evan Goode
cdb2f09bd4 Merge branch 'unmojang' into unmojang-8.0 2023-11-15 21:23:01 -05:00
Evan Goode
be8c8ad9ad Auto migrate Ely.by accounts to authlib-injector
Signed-off-by: Evan Goode <mail@evangoo.de>
2023-11-15 15:23:24 -05:00
Evan Goode
9430026192 Merge tag '8.0' into unmojang-8.0
Upstream changelog: https://github.com/PrismLauncher/PrismLauncher/releases/tag/8.0

(Imcomplete) list of changes in 8.0 relevant to PollyMC:
- Prism has dropped support for Mojang accounts
  - https://github.com/PrismLauncher/PrismLauncher/pull/1656
  - Added it back to PollyMC primarily since the Mojang authentication
    code is also used for authlib-injector accounts. Some users may also
    still want to be able to log in to Mojang accounts for some reason:
    https://github.com/fn2006/PollyMC/issues/115#issuecomment-1805384658,
    even if they do not provide authentication to multiplayer servers.
  - To my surprise, I could still log in to a Mojang account, get its
    skin, and launch the game. Authentication to servers, of course, did
    not work.
  - Tested: logging into authlib-injector, Mojang, and MSA accounts and
    launching the game.
- Prism has added a built-in updater for Windows and Linux that I assume
  provides similar functionality to Sparkle on macOS:
  https://github.com/PrismLauncher/PrismLauncher/pull/1268. There is a
  Launcher_UPDATER_GITHUB_REPO variable in CMakeLists.txt that specifies
  the repo checked by the updater. I have changed this to the PollyMC
  repository, and since PollyMC follows almost the same CI/release
  patterns as Prism Launcher, it might work with PollyMC, too, but I
  have not tested it yet.
- Add macOS support to Nix
  - https://github.com/PrismLauncher/PrismLauncher/pull/1485
  - Untested
- The "PollyMC-Linux-8.0.tar.gz" and similar build artifacts were
  renamed to "PollyMC-Linux-8.0-Qt5.tar.gz" to match their
  "PollyMC-Linux-8.0-Qt6.tar.gz" counterparts.
- Removed Windows MSVC Legacy builds
- Removed Quilt Beacon toggle, the beacon is now always disabled:
  https://github.com/PrismLauncher/PrismLauncher/pull/1547,
  https://github.com/PrismLauncher/meta/pull/23
- Prism removed FTB support in 7.0, but I tested creating an FTB
  instance to make sure it still works in 8.0

Signed-off-by: Evan Goode <mail@evangoo.de>
2023-11-15 14:37:14 -05:00
Evan Goode
b1738deffb authlib-injector: Mark correct account as in use
Fixes a bug where the wrong account could be marked as "in use" when the
game is launched if there are multiple accounts that share the same
profile ID. This can lead to the launcher trying to refresh an account
that's currently in use by the game, leading to "Invalid session" errors
in-game.

Signed-off-by: Evan Goode <mail@evangoo.de>
2023-11-15 12:11:12 -05:00
LocalSpook
0de4d8902e Remove top-level const qualifiers in function declarations
Signed-off-by: LocalSpook <56512186+LocalSpook@users.noreply.github.com>
2023-10-28 22:12:09 -07:00
LocalSpook
9d972ccc63 Localize account type in account list
Signed-off-by: LocalSpook <56512186+LocalSpook@users.noreply.github.com>
2023-10-26 13:32:33 -07:00
LocalSpook
5be80df1ee Replace typedef with using
Signed-off-by: LocalSpook <56512186+LocalSpook@users.noreply.github.com>
2023-10-24 01:36:27 -07:00
Sefa Eyeoglu
eab1180f68
Merge pull request #1090 from Ryex/feat/acknowledge_release_type 2023-10-01 14:32:58 +02:00
Alexandru Ionut Tripon
317c7b5544
Update launcher/minecraft/auth/AccountList.cpp
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
Signed-off-by: Alexandru Ionut Tripon <alexandru.tripon97@gmail.com>
2023-10-01 00:32:17 +03:00
Trial97
9acbf98f94
Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher into feat/acknowledge_release_type
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-09-28 22:50:12 +03:00
seth
f370f0d749
chore: cleanup a few more mentions of mojang accounts
Signed-off-by: seth <getchoo@tuta.io>
2023-09-27 05:34:48 -04:00
Trial97
7c636d4608
Removed mojang
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-09-25 17:44:04 +03:00
fn2006
ca5574130f Only check migration eligibility for Mojang accounts 2023-09-05 21:47:37 +01:00
Evan Goode
a980b4d537 Clean up authlib-injector merge, mostly clang-format
Signed-off-by: Evan Goode <mail@evangoo.de>
2023-09-05 00:13:50 -04:00
Evan Goode
9d442a0348 authlib-injector
* 'Custom Yggdrasil' AccountType

Signed-off-by: Evan Goode <mail@evangoo.de>

* Allow multiple accounts with the same player UUID

Signed-off-by: Evan Goode <mail@evangoo.de>

* Use correct services server URL for SkinDelete

Signed-off-by: Evan Goode <mail@evangoo.de>

* Correctly use CustomYggdrasilRefresh, add warning message

Signed-off-by: Evan Goode <mail@evangoo.de>

* Custom Yggdrasil: Readability fixes

Also made the MinecraftEntitlement for Custom Yggdrasil accounts work
just like offline accounts---instead of checking the reply from the auth
server, Custom Yggdrasil accounts are granted canPlayMinecraft and
ownsMinecraft when they are created, in MinecraftAccount.cpp.

Signed-off-by: Evan Goode <mail@evangoo.de>

* Custom Yggdrasil: Add extra confirmation dialog

Signed-off-by: Evan Goode <mail@evangoo.de>

* Add install authlib-injector button

Signed-off-by: Evan Goode <mail@evangoo.de>

* authlib-injector accounts

Signed-off-by: Evan Goode <mail@evangoo.de>

* Suggest installing authlib-injector when needed

Signed-off-by: Evan Goode <mail@evangoo.de>

* Use Unmojang metadata

Signed-off-by: Evan Goode <mail@evangoo.de>

* Use std::string for MANAGED_AGENTS, not QString

---------

Signed-off-by: Evan Goode <mail@evangoo.de>

Resolve X-Authlib-Injector-API-Location

Signed-off-by: Evan Goode <mail@evangoo.de>

Prefetch authlib-injector metadata

Resolves https://github.com/unmojang/PrismLauncher/issues/4

See https://github-com.translate.goog/yushijinhun/authlib-injector/wiki/%E5%90%AF%E5%8A%A8%E5%99%A8%E6%8A%80%E6%9C%AF%E8%A7%84%E8%8C%83?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US#%E9%85%8D%E7%BD%AE%E9%A2%84%E8%8E%B7%E5%8F%96

Signed-off-by: Evan Goode <mail@evangoo.de>

drag-and-drop authlib-injector URL, clang-format

Resolves https://github.com/unmojang/PrismLauncher/issues/2

Signed-off-by: Evan Goode <mail@evangoo.de>
2023-09-04 19:00:18 +01:00
fn2006
65821b54e6 Remove current Ely.by implementation 2023-09-04 01:35:37 +01:00
fn2006
70e6f323fe fix regressions 2023-09-04 00:43:23 +01:00
fn2006
b6904ba50a Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher into develop 2023-09-04 00:39:20 +01:00
TheKodeToad
d7dadabfbf
List fixes
Double-click to toggle profile components.
Restore double-click to toggle resources.
Fix clicking on checkbox to select account.
Double-click to select account.

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-08-21 14:44:46 +01:00
Sefa Eyeoglu
8f5bb982cd
Merge pull request #1513 from lumiscosity/fix/skin_transparency_bug 2023-08-15 10:54:07 +02:00
Sefa Eyeoglu
215d7dbb74
chore: update license headers
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-08-14 18:17:05 +02:00
Sefa Eyeoglu
91ba4cf75e
chore: reformat
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-08-14 18:16:53 +02:00
Alexandru Ionut Tripon
b3b2e9df35
Merge branch 'develop' into feat/acknowledge_release_type
Signed-off-by: Alexandru Ionut Tripon <alexandru.tripon97@gmail.com>
2023-08-12 12:42:30 +03:00
Sefa Eyeoglu
73adac2501
fix: use QColorConstants in Qt 5.14+
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-08-11 15:57:12 +02:00
maple!
97ef8e8d0e Fix transparency in skin icon
QPainter has a bug where drawing transparency to a freshly initialized, empty QPixmap causes garbage data to be drawn. This broke the rendering of the skin icon. The fix is simply to fill the QPixmap with empty transparent pixels beforehand.

Signed-off-by: maple! <averyrudelphe@gmail.com>
2023-08-10 15:32:47 +02:00
fn2006
847430b113 Merge branch 'release-7.x' of https://github.com/PrismLauncher/PrismLauncher into develop 2023-08-10 10:09:08 +01:00
Sefa Eyeoglu
1d638e018a
chore: update license headers
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-08-04 19:41:47 +02:00
Sefa Eyeoglu
1d468ac35a
chore: reformat
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-08-02 18:35:35 +02:00
Rachel Powers
b9fe37aec1
Merge branch 'develop' into chore/add-compiler-warnings
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-07-30 15:33:46 -07:00
TheKodeToad
648a69594f Fix token "0" being replaced
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
(cherry picked from commit f505d43fc0)
2023-07-24 18:41:43 +00:00
TheKodeToad
f505d43fc0 Fix token "0" being replaced
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-07-24 13:43:26 +01:00