Commit graph

147 commits

Author SHA1 Message Date
Julian Chang
abf708fdb4
mods folder sync (#937) 2026-10-05 23:20:04 +02:00
Julian Chang
1ab294f293
fix opt-in bundles not being asked for new mc versions (#939) 2026-10-05 23:19:49 +02:00
Julian Chang
7a6a7cbc0b
Merge branch 'main' of https://github.com/Polyfrost/OneLauncher 2026-10-03 15:14:39 -04:00
Julian Chang
7c304a2d3a
fix: match os argument rules on apple silicon for old versions 2026-10-03 15:14:35 -04:00
LynithDev
b2384afb4e
feat: log censoring (#925) 2026-10-03 16:00:44 +02:00
LynithDev
cfcf7a7669
chore: new changelog generator (#855)
* chore: new changelog generator

* ci: require a change file on PRs
2026-10-03 00:23:41 +02:00
Julian Chang
03c4412d15
bundle opt out per content type (#810)
* exclude opted out bundles from package list

* bundle opt out per content type

* list only the content types a bundle is still opted into

* count inferred bundle installs as opted in

* remove comments from merge

* key bundle opt-out by external id so outdated GitHub installs still count

* fix: keep bundle type opt-out across catalog changes

* fix: keep switched-on bundle files from being re-suppressed

* fix: share bundle liveness and keep package list read-only
2026-10-02 00:48:27 -04:00
Julian Chang
7402fb6e78
exclude opted out bundles from package list (#879)
* exclude opted out bundles from package list

* count inferred bundle installs as opted in

* let opted-in bundles own shared rows
2026-10-02 00:07:44 -04:00
Julian Chang
190723a4f8
feat: optionally copy configs into dedicated-folder targets on migration 2026-10-01 03:46:09 -04:00
Julian Chang
0e98be3d5a
feat: manual migration in both directions, only when there's something to copy 2026-10-01 03:45:55 -04:00
Julian Chang
67cfc4eb83
fix: key cached version info by loader format version
Bump interfrost to 1.5.0 and pass the cluster's loader to download_version_info so a format bump doesn't reuse stale version JSON.
2026-10-01 01:34:40 -04:00
Julian Chang
51608f7d94
feat: don't re-provision clusters the user deleted 2026-10-01 00:52:30 -04:00
Julian Chang
13e52ab3ec
feat: use gallery images for package card banners 2026-10-01 00:52:30 -04:00
Julian Chang
4995276c51
pre-warm cluster art 2026-09-30 21:01:26 -04:00
LynithDev
0512727c22
fix: clear all notifications shouldn't be clearing progress notis (#896) 2026-09-30 21:20:07 +02:00
Maciek
06fa7739b3
feat: working modpacks from modrinth and curseforge as well as manually imported; couple ui fixes (#894) 2026-09-30 20:44:04 +02:00
LynithDev
d630c27a88
chore: forcefully migrate old launcher path to new path (#895) 2026-09-30 20:43:59 +02:00
Julian Chang
e1be4c8bcc
wipe off incompatible mc version check entirely 2026-09-30 06:12:11 -04:00
Maciek
0ab544f265
feat: custom cluster instances (#859)
* feat: added adding new instances of a cluster with 'start from scratch' option enabling user to create a vanilla/modded cluster; fixed couple pre-existing bugs that wouldn't let other loaders boot up

* feat: fully implemented cluster creation modal design

* chore: refactoring

* feat: expanded the tags section on customization step; found that fabric doesnt work with 1.8.9

* feat: added gallery covers handling for new cluster instances

* feat: added 'redirecting' from fabric to orinthe on versions pre-1.14

* feat: added java-version-override

* feat: added loader types migrations (right now they dont migrate mods because there are no bundles)

* chore: wider loader dropdown for multiloader cluster (if it will be used in the future)

* chore: fixed more issues with isolated and shared dir, with migrations and instances naming

* chore: refactor; taken the loader version dropdown from version picker view back to loader selector

* chore: deleted Quilt from UI

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-29 19:08:21 +02:00
LynithDev
95eba5503f chore: update dependencies and optimise archive operations 2026-09-29 15:04:51 +02:00
Maciek
495dbf05dc
feat: polyplus mark and removal warning (#877)
* feat: polyplus mark and removal warning (some issues with merging)

* chore: deleted the blue background from the polyplus mod

* feat: added warning for removing bundle mods; fixed the new/updated badges on mods cards
2026-09-29 12:38:05 +02:00
Maciek
45da20fac2
feat: release migration (#851)
* feat: added migration mechanism for versions 26.3 and above

* feat: added checking for mods that the migrating target already has

* feat: added scheduled migrations for up to 30 days

* feat: added button in cluster settings for manual migratting; added migratting disabled mods with status saving

* feat: added checking for show_initial_migration flag in metadata.json

* feat: added fabric -> orinthe migration (for 1.8.9)

* chore: force open from debug page

* chore: change some UI elements

* fix: don't migrate packages whose dependency failed to install

* fix: keep checking the release migration waitlist past a broken cluster

* fix: make Migrate on a debug fake plan a no-op

* perf: install the version the migration plan already fetched

* chore: fix the clippy warnings the release migration added

* refactor: open every release migration prompt through one helper

* chore(lint): cargo fmt the release migration code

* fix: check the release migration waitlist queries at compile time

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-28 21:06:30 +02:00
Maciek
abb41dcc52
feat: worlds and datapacks views (#870)
* feat: added worlds and datapacks tab

* feat: added datapacks in browser; fixed datapacks view loading too long

* feat: added icons to datapacks

* fix: scope world query invalidation to the world that changed

* fix: keep the selected data pack world in one place and guard deletes

* chore: share one dialog shell between the world prompt and delete confirm

* fix: stop watching every subfolder of saves

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-28 21:05:52 +02:00
Maciek
7f1a3176cf
feat: added sections for advanced mods (#876)
* feat: added sections for advanced mods

* fix: treat a null bundle file type as normal

* chore: drop ScrollArea::lazy_grid

* chore: pass one header height to lazy_sections

* chore: name BundleFileType::Normal in test fixtures

* feat: don't offer advanced bundle mods as optional mods

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-28 20:31:18 +02:00
Maciek
f94ca969b0
feat: bad mods flagging (#882)
* feat: first version of flagging mods thru datastorage

* feat: added fallbacks, version-specific flag and project-specific flag

* chore: downsized the amount of requests sent when looking up for alternatives

* feat: added explanations for flagging mods

* fix: prompt for flagged dependencies instead of silently skipping them

* chore: size the flagged popup with max_height instead of measuring it

* chore: drop is_flagged and the explanation size cap

* feat: refresh the bad mods list with the pre-launch checks

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-28 17:40:00 +02:00
Maciek
695406145f
chore: deleted the download process from onboarding (#865)
* chore: deleted the download process from onboarding

* fix: gate onboarding Finish on loaded bundles and correct failure copy

* chore: drop unused install_cluster_bundles re-export from oneclient_core

* chore: drop the unread predownload flag from the versions manifest

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-28 17:33:01 +02:00
Maciek
abc452f294
feat: added deleting browser and local mods (#853)
* feat: added deleting browser and local mods by context menu and on list view by trashcan icon

* fix: only confirm shared deletes that reach other clusters

* fix: confirm shared removals from the browser package page too

* fix: keep "View in folder" alive after the context menu closes

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-28 17:30:10 +02:00
Julian Chang
d632c47320
remove unnecessary tests (#881) 2026-09-28 17:13:41 +02:00
Julian Chang
e675b99300
fix corrupted file detection 2026-09-24 23:24:36 -04:00
Maciek
36a925da06
fix: homepage cover images are now in much better quality without bigger memory use (#862)
* fix: fixed background covers rendering poorly on bigger resolutions

* fix: fixed onboarding cached images stacking from ~80MB to again ~20MB (like it was before)
2026-09-23 13:31:29 +02:00
LynithDev
80e7d4d4f8
chore: update freya and enable debug overlay in release (#856)
* chore: bump freya to 0.5.0-rc.6

* feat: add freya debug overlay plugin

* chore: bump to rc.7
2026-09-22 16:13:05 +02:00
LynithDev
850c695f91
feat: system tray and process state controls (#687) 2026-09-19 01:19:34 +02:00
sakuyma
45a970c38a
Small QoL fixes: Java refresh, clipboard toasts, custom image endpoints (#852)
* fix(java): add refresh button for stale runtimes

* fix(notifications): keep clipboard toasts out of the notification center

* fix(images): allow custom endpoints on non-public hosts

* chore: make toast_only notifications not increment notification counter

* chore: reorder navbar links

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-18 23:43:49 +02:00
LynithDev
daaa209b30 chore(lint): cargo fmt 2026-09-18 23:05:50 +02:00
LynithDev
c7f3fdc52b
chore: update bundled packages only after cluster launch (#849) 2026-09-18 00:09:53 +02:00
Maciek
e25c3e8243
feat: better error handling for process hooks (#847) 2026-09-17 23:23:46 +02:00
Julian Chang
41ce177483
Fix version-tag matching and bundle filtering 2026-09-16 18:02:21 -04:00
Maciek
b4f067483a
fix: fixed most of the sizing issues in the launcher (#822) 2026-09-16 18:58:10 +02:00
Julian Chang
c3a45371dd
fix: incorrect database and filesystem structure of mods after updates (#834)
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-16 18:24:09 +02:00
LynithDev
6ceba7480f fix: mod updates not being symlinked to a clusters mods folder after update 2026-09-14 20:39:07 +02:00
LynithDev
80ba104861
chore: improve stats page and cluster overview (#831)
* fix(stats): drop zero units from durations and cap the server pie at ten slices

* fix(stats): say out loud that "when you play" bars are lifetime totals

* feat(stats): paint every bar in the accent colour until one is hovered

* feat(stats): add a calendar range picker to daily playtime

* fix(stats): stop recovery inventing playtime and carry sessions over midnight

* feat(stats): more stats out of the data already recorded

* feat(stats): eight more personas, and let them see the server data

* fix(charts): stop axis labels being cut off to their own bar's width

* feat(stats): give the overview a headline stat instead of seven identical boxes

* feat(stats): turn personas into wrapping badges

* fix(stats): lay the overview out for the window it is actually in

* feat(stats): fold the monthly chart into one "Playtime by hour/day/month" card

* fix(stats): stop the total playtime card making the tile block so tall

* fix(stats): strip the persona badges back to plain tags
2026-09-14 16:45:02 +02:00
LynithDev
2e0ba533fe
fix: issues with mod updating and mods randomly being disabled (#830)
* fix: stop offering bundle-owned packages in the update modal

* fix: match a version's game versions exactly not by substring

* fix: resolve a mod's materialized root from the layout in use

* fix: stop parking unclaimed jars in the cluster mods folder

* fix: stop the duplicate reconciler filing a user-disabled override

* fix: repair the disables duplicate resolution left behind
2026-09-14 16:44:46 +02:00
Julian Chang
297abeac00
tweak wording on stuff 2026-09-13 00:34:47 -04:00
LynithDev
54980fa73a
fix: linux use dedicated GPU setting (#816)
* forgot to add this

* fix complex type warning in test

* fix(linux): ask the driver whether a card is discrete
2026-09-13 01:36:47 +02:00
LynithDev
cad4800835 fix: issues caused by merges 2026-09-13 01:24:28 +02:00
Maciek
ba74bedf92
feat: added microsoft jdk and new shared mods folder layout (#812)
* feat: added microsoft sdk provider

* feat: changed the default provider to microsoft everywhere

* feat: added checking for microsoft jdks and prompting user to install them (ui for discussion)

* feat: added toast popup when user tries to remove runtime that is pinned to some cluster

* feat: added 'migrating' user to the microsoft jdks

* feat: changed reading mods from cluster folders on launch to having cluster folders symlinks in the shared .minecraft folder where mods stay per given cluster; changed resource packs and shader packs from working per cluster to global, every resource pack and shader pack is now being shared between clusters; added mods disabling whenever a mod is manually removed from the mods folder

* fix/feat: fixed hardlinks counting as a duplicate of files it was pointing to (windows); added a progress bar to the disk storage view in settings

* chore: connected microsoft jdk branch and package folder management one

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-13 00:37:40 +02:00
Julian Chang
44dfa32233
Add Ornithe support (#811)
* Add Ornithe support

* chore: fix the remaining startup issues reltaed to arguments and manifest caching

* fix: stop repairing on every launch for natives-only libraries

---------

Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
2026-09-13 00:11:21 +02:00
LynithDev
a70a8a4ffa perf: optimise used memory 2026-09-07 23:29:52 +02:00
LynithDev
322c3d5420 chore: log freya info and switched to experimental branch with windows rendering fix 2026-09-07 01:00:58 +02:00
LynithDev
f55f816342 fix: long launches caused by anti-corruption mechanism 2026-09-07 01:00:58 +02:00