Commit Graph

636 Commits

Author SHA1 Message Date
Kenneth Chew
05cd30ac06 Refactor code, create abstract class ExternalUpdater
(Hopefully) this makes implementing updaters using external libraries easier on other platforms. To implement an updater on a new platform, create a new class that implements the pure virtual methods from `ExternalUpdater` and add code in the `UpdateChecker` initializer to initialize the new class.
2022-05-19 15:16:37 -04:00
Kenneth Chew
34adcec616 Add functionality to (Sparkle) updater settings on macOS
Also remove a debug line I accidentally left in
2022-05-19 15:16:37 -04:00
Kenneth Chew
b5bdfa6c2e Implement automatic and manual updates on macOS 2022-05-19 15:16:37 -04:00
Kenneth Chew
ea4ef1655b Create SparkleUpdater class for access from Qt/C++
To actually get automatic updates going, all that needs to happen is that `SparkleUpdater` needs to be initialized.

The rest of the functions can be connected to elements in the UI.
2022-05-19 15:16:37 -04:00
Kenneth Chew
92b913ca37 Add Sparkle Updater framework to macOS build 2022-05-19 15:16:37 -04:00
Sefa Eyeoglu
f66e0fa0e8 fix: support split natives
Mojang introduced a new structure for natives, notably for LWJGL.
Now instead of using the `natives` structure of the version format, Mojang
chose to create a seperate library entry for each platform, which uses
the `rules` structure to specify the platform. These new split natives
carry the same groupId and artifactId, as the main library, but have an
additional classifier, like `natives-linux`.

When comparing GradleSpecifiers we don't look at the classifier, so when
the launcher sees an artifact called `org.lwjgl:lwjgl:3.3.1` and right
after that an artifact called `org.lwjgl:lwjgl:3.3.1:natives-linux`, it
will treat it as "already added" and forget it.

This change will include the classifier in that comparison.
2022-05-18 22:51:15 +02:00
timoreo22
b2878dca1d Merge pull request #590 from DioEgizio/fix-qmj-over-fmj
fix(quilt) always prefer qmj over fmj
2022-05-18 19:18:18 +02:00
DioEgizio
127dfadc6c fix(quilt) always prefer qmj over fmj
this fixes Quilt-only mods like ok zoomer showing wrong metadata
2022-05-18 14:33:58 +02:00
Sefa Eyeoglu
8e9f1bcf18 fix: remove unnecessary Qt version checks 2022-05-17 22:25:50 +02:00
Sefa Eyeoglu
cc27bb3231 fix(updater): remove Windows version check
Qt 5.12 doesn't support anything older than Windows 7 anyway, so we
can't really check if we are on an older platform.
2022-05-17 22:25:50 +02:00
Sefa Eyeoglu
c1700054f4 fix: replace deprecated stuff as of Qt 5.12 2022-05-17 22:25:50 +02:00
Sefa Eyeoglu
cc13310083 Merge pull request #565 from Scrumplex/modrinth-packs
Initial Modrinth modpack support
2022-05-17 16:09:22 +02:00
Sefa Eyeoglu
1012912272 Merge pull request #567 from Scrumplex/quilt-metadata
Support `quilt.mod.json` metadata
2022-05-17 16:08:59 +02:00
Sefa Eyeoglu
edbd90a4e6 fix: update links for Quilt metadata format 2022-05-17 15:17:20 +02:00
Sefa Eyeoglu
ddc3b5eb0b Update launcher/ui/pages/modplatform/modrinth/ModrinthPage.ui
Co-authored-by: DioEgizio <83089242+DioEgizio@users.noreply.github.com>
2022-05-17 15:14:53 +02:00
txtsd
9b387d73e5 Merge pull request #529 from flowln/vertical_toolbar
Set right orientation for instance toolbar when moving it around
2022-05-17 12:14:34 +05:30
txtsd
c02a6780b0 Merge pull request #540 from kthchew/fix/executable-screenshot
Show "executable" screenshots in the screenshot manager
2022-05-17 10:59:55 +05:30
flow
2e9d7f5c3d fix: mod skipping between pages and remove dead code 2022-05-16 19:17:37 -03:00
flow
696a711e39 fix: missed change to metacache entry lookup 2022-05-16 19:10:31 -03:00
flow
887246a66b fix: typo and useless code 2022-05-16 17:09:14 -03:00
Sefa Eyeoglu
cd9e0e0cc0 fix: use own metacache base for modrinth icons 2022-05-16 20:17:19 +02:00
Sefa Eyeoglu
f66598db8a Merge pull request #564 from flowln/cf_icon 2022-05-16 20:06:59 +02:00
flow
a6d2c5e181 fix: better hack for icons that cant be natively scaled to 48x48 2022-05-16 14:35:01 -03:00
flow
82760f4b91 fix: import modrinth packs with weird overrides structure
Probably because of Packwiz limitations, or an space optimizer that did
this :)
2022-05-16 12:11:50 -03:00
flow
62e099ace5 feat: better handling of optional mods
This disables the optional mods by default and tell the user about it.
Pretty hackish, but a better solution would involve the modrinth
metadata to have the mod names...

Also sorry for the diffs, my clangd went rogue x.x
2022-05-15 22:16:52 -03:00
flow
e92b7bd25e change: switch to modrinth production servers 2022-05-15 21:50:42 -03:00
flow
e7bb3b2776 fix: macos compilation
i forgor macos is cringe with static arrays 💀

edit: WHY DONT MAC LET ME USE STD::ARRAY ;----;
2022-05-15 21:18:29 -03:00
flow
ec3c882a44 change: add alpha note to modrinth page 2022-05-15 20:52:57 -03:00
flow
66ce5a4a2d fix: pack sorting and other search parameters 2022-05-15 20:45:27 -03:00
Sefa Eyeoglu
a110d445ac feat: support quilt.mod.json metadata 2022-05-15 23:00:09 +02:00
flow
a67f3131e7 Merge pull request #560 from kthchew/feature/close-pmc-override
Add instance overrides for miscellaneous settings
2022-05-15 17:40:53 -03:00
Sefa Eyeoglu
e5d0097116 Merge pull request #531 from Ozynt/patch-1
Remove reference to legacy Minecraft accounts
2022-05-15 22:18:34 +02:00
flow
6d78ea5a45 Merge pull request #539 from kthchew/fix/translation-switch
Fix untranslated strings after changing language
2022-05-15 17:11:21 -03:00
dada513
550d6a6a9b Merge pull request #547 from kthchew/feature/hidden-temp 2022-05-15 21:54:46 +02:00
dada513
9be8160bf2 Merge pull request #546 from kthchew/feature/scrollable-accounts 2022-05-15 21:43:34 +02:00
dada513
3070565fa3 Merge pull request #545 from DioEgizio/patch-4 2022-05-15 21:42:51 +02:00
flow
7194bb1b81 fix: validate whitelisted download urls 2022-05-15 16:06:49 -03:00
Sefa Eyeoglu
78cf0c73c8 fix: always show project url, if available 2022-05-15 20:38:27 +02:00
flow
4adc61bda9 change: update modrinth icon
Updates to the version at https://github.com/modrinth/docs/blob/master/static/img/logo.svg
2022-05-15 11:26:15 -03:00
flow
93e0041d0e change: use modrinth icon as default on modrinth packs 2022-05-15 11:09:45 -03:00
Sefa Eyeoglu
682a7fb6ba feat: add version of Modrinth modpack to instance name 2022-05-15 13:36:55 +02:00
flow
5f2398fe59 chore: license headers 2 2022-05-15 08:26:34 -03:00
Sefa Eyeoglu
3abf466632 chore: add/update license headers 2022-05-15 13:20:05 +02:00
flow
4bb429a0fb change: use build variables for the modrinth API URLs
Make it more consistent with the others
2022-05-15 07:43:02 -03:00
flow
4a0e4fdb85 fix: add author page url 2022-05-15 07:15:56 -03:00
Sefa Eyeoglu
a43f882d48 feat: add support for Quilt Loader in Modrinth packs 2022-05-15 12:06:01 +02:00
Sefa Eyeoglu
9731e06728 fix: fix build on Qt 5.12 2022-05-15 11:49:27 +02:00
flow
4745ed2818 fix: choose valid download url even if it's not the primary one
It seems to be possible to have modpack versions that have to primary
file. In those cases, we pick a valid one "at random".
2022-05-14 22:50:04 -03:00
flow
49de5d9b07 change: list what file types can be entered in the importer 2022-05-14 22:04:40 -03:00
flow
365cc198ba refactor: some random improvements 2022-05-14 21:50:54 -03:00